历史版本19 :准备运维平台服务器 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

概述编辑

运维平台需要部署在一台服务器上,本文详尽的介绍该服务器必须满足的资源要求。

服务器数量编辑

运维平台类型
建议
标准版

建议运维平台独占 1 台服务器

即服务器中仅部署FineOps运维平台,不部署其他应用或帆软项目,此时可以确保运维的独立性

基础版

运维平台可与帆软单节点项目共用 1 台服务器

即服务器上中部署运维平台和 1 个帆软单机应用,此外不部署其他内容

确保未安装Docker编辑

部署运维平台时,finekey工具会自动安装docker。

请确保运维平台所在服务器,是纯净的环境,未预安装docker。否则可能由于版本和权限问题,导致运维平台部署失败。

执行命令:docker version

  • 若无返回值,代表未安装docker

  • 若返回版本号,则代表安装了docker。请卸载docker或更换服务器。

确认操作系统编辑

部署普通版本FineOps(支持部署对接普通版本FineReport、FineBI、FineDataLink)

配置
推荐支持/最低要求
操作系统类型LinuxLinux
操作系统架构X86_64X86_64
操作系统内核

3.10版本及以上

3.10版本及以上

操作系统软件

Ubuntu 22 版本

Ubuntu 18.04.4 及以上版本(不支持 Ubuntu20.04 版本 

CentOS 7.3~7.9 版本

redhat 7.6 及以上版本

确认资源配置编辑

部署运维平台的服务器应当满足下表条件:

配置
要求
CPU最低4核

根目录剩余

空闲磁盘大小

1G

安装目录剩余

空闲磁盘大小

以下两者,取较大值为配置要求:

1)服务器中存在一个分区剩余可用空间,推荐大于 200G ,最低 100G

注:如准备全新磁盘,建议至少120G。因为系统会占用部分空间,导致剩余不足100G

2)如对接的运维项目较多,请根据项目日访问量额外增加运维平台磁盘。日访问量5w/2个工程节点,对应100G磁盘

注:可使用命令「df -h」查询磁盘空间,必须要有任一分区满足条件,不可将分区容量加和

剩余空闲
物理内存

标准版-独占服务器:建议16G以上,最低12G

标准版-非独占服务器:16G以上

基础版:4G以上

之所以需要上表的配置,是因为FineOps运维平台的每个组件,有最低运行配置要求,如下表所示:

组件
CPU使用上限内存使用上限内存配置xmx
ops2Core--
nginx1Core--
ops-agent1Core-1G
pushgateway0.1Core0.1G-
prometheus1Core1G-
grafana1Core1G-
alertmanager1Core1G-
elasticsearch1Core-2G
skywalking_oap1Core-2G
registry1Core--

确认端口空闲编辑

运维平台中存在很多组件,组件的运行需要占用服务器端口。

在部署前,请确保默认的映射端口端口是否已被使用,如已被使用,请安排好其他空闲端口。

注:端口占用检查和防火墙放行方法请参考:端口占用检查与防火墙配置

组件
默认端口
ops8081
nginx

root用户部署:80

非root用户部署:8090

ops-agent

9071
pushgateway9091
prometheus9090
grafana3000
alertmanager9093
elasticsearch

9200

skywalking_oap

11800、12800

registry5000

确认网络互通编辑

为了确保用户可以正常访问运维平台,为了确保运维平台可以正常部署和监测运维项目。

服务器需要对外开放一些端口,供不同场景使用。

注:端口占用检查和防火墙放行方法请参考:端口占用检查与防火墙配置

外网与运维平台

作用外网
关系运维平台
管理员访问运维平台

运维人员

任意IP

访问->

运维平台的 nginx 负载均衡

默认端口为:

  • root部署:80

  • 非root部署:8090

  • 配置了SSL:443

运维平台拉取云端仓库镜像

帆软云端镜像仓库

fineops-registry.cn-hangzhou.cr.aliyuncs.com:443

<-访问registry

5000

运维平台内部

作用运维平台内部组件关系运维平台内部组件
请求转发

运维平台的 nginx 负载均衡

默认端口为:

  • root部署:80

  • 非root部署:8090

  • 配置了SSL:443

<-访问->

ops组件

默认端口为:8081

运维平台与运维项目

作用运维平台
运维项目
基础运维

运维平台的 nginx 负载均衡

默认端口为:

  • root部署:80

  • 非root部署:8090

  • 配置了SSL:443

<-访问

项目的应用和引擎节点

包括:bi-web/bi-engine-master/bi-engine-worker/fr/fdl

传输项目的服务器、组件指标信息给运维平台

运维平台的 nginx 负载均衡

默认端口为:

  • root部署:80

  • 非root部署:8090

  • 配置了SSL:443

<-访问

项目每一台服务器的ops-agent(工程节点+集群组件节点,任何服务器)

默认端口为:9070

链路追踪

运维平台的skywalking_oap

默认端口为11800、12800

<-访问

项目的应用和引擎节点

包括:bi-web/bi-engine-master/bi-engine-worker/fr/fdl

链路追踪

运维平台的skywalking_oap

默认端口为11800、12800

<-访问

项目的 nginx 内网

默认端口为:

  • root部署:80

  • 非root部署:8090

  • 配置了SSL:443

从运维平台的镜像仓库拉取组件进行项目部署registry

默认端口为5000

<-访问

应用节点+BI引擎节点+集群组件节点

任何服务器

准备安装目录编辑

运维平台安装目录,是将宿主机上必要的FineOps文件与容器中的文件进行关联的方式。用于实现数据持久化、文件快速查看等功能。

1)查看服务器磁盘空间

命令:df -h,找出可用空间较大的挂载点

例如本示例中,服务器最合适的挂载目录为/home目录下

2)新建文件夹

在该目录下,选择合适的位置新建文件夹,作为运维平台的安装目录。

  • 使用 mkdir 命令创建文件夹(本示例在/home目录下创建一个名叫fanruan的文件夹):mkdir /home/fanruan

  • 使用 chmod 命令设置文件夹的权限(本示例直接赋777权限):chmod 777 /home/fanruan

该目录位置/home/fanruan,即为部署运维平台时,finekey.yaml文件中的dataRootPath配置项

确认用户权限编辑

优先超管部署

优先推荐使用用户id为0且名叫root的用户上传、解压、运行FineKey容器化部署工具。

注意:用户id为0但不叫root的用户,不支持部署,请更名为root

普通用户权限

如需使用普通用户进行部署,请确保该用户拥有以下权限。

分类
权限要求
finekey存放位置权限

运维平台部署,需要依赖finekey部署包,用户届时需要将finekey部署包上传到服务器并解压执行

  • 对于上传和解压finekey部署包的目标文件夹,请确保用户有执行tar命令的权限,以解压finekey安装包

  • 对于上传和解压finekey部署包的目标文件夹,请指定用户为该文件夹的所有者

chown -R 用户名 /finekey存放位置绝对路径

  • 对于上传和解压finekey部署包的目标文件夹,请确保用户有该文件夹的读写执行权限

chmod -R 755 /finekey存放位置绝对路径

运维平台安装目录权限

安装运维平台时,需要在运维平台安装目录新增、编辑文件

  • 对于上一章准备的运维平台安装目录,请指定用户为该文件夹的所有者

chown -R 用户名 /运维平台安装目录绝对路径

  • 对于上一章准备的运维平台安装目录,请确保用户有该文件夹的读写执行权限

chown -R 755 /运维平台安装目录绝对路径

用户的sudo权限

必须允许用户在任何主机上以root身份使用sudo权限执行后续配置的一些命令

  • 请自行编辑 /etc/sudoers 文件,示例写法如下:请自行修改dev为你的用户名

dev     ALL=(root) /bin/sh,/bin/mkdir,/bin/rm,/bin/cp,/bin/systemctl,/bin/kill,/usr/sbin/sysctl,/usr/bin/gpasswd,/usr/sbin/groupadd,/usr/bin/chown,/usr/sbin/modprobe,/usr/bin/echo,/usr/bin/sed,/usr/sbin/swapoff,/bin/sudo


  • 如果仍然权限不足,还可以配置NOPASSWD的sudo权限(自选)

dev     ALL=(root)NOPASSWD: (root) /bin/sh,/bin/mkdir,/bin/rm,/bin/cp,/bin/systemctl,/bin/kill,/usr/sbin/sysctl,/usr/bin/gpasswd,/usr/sbin/groupadd,/usr/bin/chown,/usr/sbin/modprobe,/usr/bin/echo,/usr/bin/sed,/usr/sbin/swapoff,/bin/sudo

对用户禁用requiretty选项

确保用户在执行 sudo 命令时不需要 TTY 会话,否则无法通过脚本/远程命令使用sudo

  • 请自行编辑 /etc/sudoers 文件,注释掉原本的requiretty相关内容

#Defaults: requiretty