1. 概述编辑
1.1 版本
运维平台版本 | 功能变更 |
---|---|
V1.5.5 | - |
V1.5.6 | 部署过程中,不再安装冗余组件promtail、rocketmq_namesrv、rocketmq_broker |
1.2 应用场景
一个运维平台支持部署并直接接入FineReport、FineBI、FineDataLink应用。
1.3 功能简介
本文将介绍,如何通过运维平台,容器化部署全新的FineReport项目。
通过运维平台容器化部署的FineReport项目,不仅仅包括FineReport工程,还包括配套的集群组件、外接数据库、运维组件等等。
注:部署的FineReport工程中,集成了FineDataLink功能,用户可在注册工程时自行选择相关功能点。
组件 | 安装默认配置 | 组件说明 |
---|---|---|
FineReport | 适用单机、集群 必须安装 | FR的工程组件,其中不带任何的demo数据 |
ops_agent | 适用单机、集群 必须安装 | 每个FR工程节点配套一个ops_agent,用于管理组件,容器化升级也是由该组件完成 |
node_exporter | 适用单机、集群 必须安装 | 服务器物理节点的exporter,收集物理服务器的各种指标信息,每个FR工程节点安装一个node_exporter |
mysql | 适用单机、集群 可选安装 | 作为工程的外接数据库,支持安装一个MySQL5数据库 如不安装该组件,用户必须自行准备好一个外接数据库,否则无法部署 |
mysqld_exporter | 适用单机、集群 可选安装 | MySQL服务的exporter,收集MySQL的各种指标信息 与MySQL组件配套安装 |
elasticsearch | 适用单机、集群 可选安装 | 替换FineReport中原有的swift作为日志存储 对项目中FineReport、外接数据库、业务库和其他外置组件的请求进行采集 如不安装该组件,将启用FineReport中原有的swift |
elasticsearch_exporter | 适用单机、集群 可选安装 | elasticSearch的exporter,收集elasticSearch的指标 与elasticSearch组件配套安装 |
nginx | 适用集群 必须安装 | 提供集群的负载转发服务 集群其他组件服务的入口、使用,都从这个入口访问 |
nginx_exporter | 适用集群 必须安装 | nginx服务的exporter,收集nginx的指标信息 与nginx组件配套安装 |
redis | 适用集群 可选安装 | 作为集群的状态服务器,支持安装一个redis单机 如不安装该组件,用户必须自行准备好一个redis组件,否则无法部署 |
redis_exporter | 适用集群 可选安装 | redis服务的exporter,收集redis的各种指标信息 与redis组件配套安装 |
minio | 适用集群 可选安装 | 作为集群的文件服务器,是一款高性能、分布式的对象存储系统 如不安装该组件,用户必须自行准备好一个FR支持的文件服务器,否则无法部署 |
2. 部署新单机项目编辑
2.1 使用前提
2.1.1 确认服务器基础配置
配置 | 要求 |
---|---|
服务器数量 | 最佳配置:FineReport工程独占一个服务器,其他组件独占一个服务器,这两个服务器中不再安装其他工程/产品 最低配置:整个FineReport项目独占一个服务器,这个服务器中不再安装其他工程/产品 注意事项:FineReport项目和运维平台不要部署在同一服务器下 |
系统版本 | CentOS 7.3 及以上 Ubuntu 18.04.4 及以上 redhat 7.6 及以上 |
系统内核 | 3.10及以上 |
CPU架构 | 仅支持 X64 |
网络环境 | FineReport项目所在服务器、运维平台所在服务器,两者内网需要互相联通,如不联通则无法成功部署 |
2.1.2 确认服务器内存CPU配置
请确认目标服务器(即部署FineReport项目的服务器)是否符合待部署应用和组件的运行环境要求。
注:不支持在部署过程中调整以下配置。如需调整,请在部署完成后,在「组件管理>更改配置>通用配置」中调整CPU和内存。
组件 | 部署位置 | 容器CPU限制 | 容器内存限制 | 内存配置xmx | 磁盘配置 |
---|---|---|---|---|---|
FineReport | 主应用 | 8Core | - | 默认内存为:机器内存减掉8G后的内存大小,最大不会超过32G | 50G |
ops_agent | 主应用、组件 | 1Core | - | 1G | - |
node_exporter | 主应用、组件 | 0.1Core | 0.1G | - | - |
mysql | 组件 | 2Core | - | - | 50G |
mysqld_exporter | 组件 | 0.1Core | 0.1G | - | - |
elasticsearch | 组件 | 1Core | - | 2G | 50G |
elasticsearch_exporter | 组件 | 0.1Core | 0.1G | - | - |
2.1.3 确认服务器端口可用
请确认目标服务器(即部署FineReport项目的服务器)中,待部署应用和组件的默认端口是否可用。
请确认默认的映射端口端口是否已被使用,如已被使用,请安排好其他空闲端口。
请确认准备使用的端口是否开放了防火墙、安全组等,确保可连接。
注:端口portMapping为{映射端口:容器内端口} ,其中映射端口可改,容器内端口修改无效。
容器 | 安装默认配置 |
---|---|
FineReport | 端口:{8080: 8080, 12100: 12100} |
ops_agent | 端口:{9070:9070} |
node_exporter | 端口:{9100:9100} |
mysql | 端口:{3306:3306} 用户名:root(不支持修改) 密码:随机生成,建议修改 |
mysqld_exporter | 端口:{9104:9104} |
elasticsearch | 端口:{9200:9200} 用户名:elastic(不支持修改) 密码:elasticadmin |
elasticsearch_exporter | 端口:{9114:9114} |
2.1.4 确认运维平台仓库镜像
部署新项目,是需要通过运维平台的镜像仓库中的镜像进行部署的。因此管理员需要先确认仓库中存在相关镜像。
管理员登录运维平台,点击「运维管理>镜像管理」,查看是否存在相关镜像。
必须有这些镜像(默认必须安装):FineReport、node_exporter、ops_agent
建议有这些镜像(可选是否安装):mysql、mysqld_exporter、elasticsearch、elasticsearch_exporter
2.2 新增项目
管理员登录运维平台,点击「运维管理>项目管理」,点击「新增项目>部署新项目」,如下图所示:
2.3 项目设置
进入「项目设置」界面,输入相关项目信息,点击「下一步」,如下图所示:
各配置项如下表所示:
信息 | 说明 |
---|---|
项目名称 | 自定义项目的名称 项目名称不允许为空 项目名称仅支持小写字母、数字 项目名称长度最大为12位 项目名称不允许与已有项目重名 |
应用类型 | 选择「FineReport」 |
项目类型 | 选择「单机」 |
需要部署的套件 | 单机包括三种组件: 1)运维基础套件(必须安装): FineReport、node_exporter、ops_agent 2)MySQL(可选择,默认安装): mysql、mysqld_exporter 如不安装该组件,用户必须自行填写外接数据库信息,否则无法部署 3)ElasticSearch(可选择,默认不安装): elasticsearch、elasticsearch_exporter 如不安装该组件,将启用FineReport中原有的swift,用作日志存储 |
部署配置 | 支持两种: 1)使用默认配置 2)自定义端口、组件用户名密码,即对2.1.3节的默认端口、密码进行调整 建议务必修改MySQL组件的密码,该密码默认随机生成。 |
访问路径 | 说明: 应用的访问链接为{域名/IP}/{访问路径}/decision 支持用户自定义应用的访问路径,访问路径默认为webroot 举例: 一般应用访问链接为http://IP:端口/webroot/decision 修改访问路径为demo 则部署好的应用访问链接为http://IP:端口/demo/decision |
2.4 节点配置
配置完需要的组件和端口后,即可进入「节点配置」。
点击「新增节点」,填写相关设置项,点击「完成」,若主机用户名校验成功,即可添加一个节点。如下图所示:
注1:若节点连接失败,则出现报错提醒,无法正确新增节点
注2:若服务器配置不符合2.1.2节最低要求,则出现报错提醒,无法正确新增节点。
具体节点设置如下图所示:
节点设置 | 说明 |
---|---|
节点类型 | 分为主应用、组件,具体分类请参考2.1.1节说明 FineReport主应用节点要求最低配置8核16G、磁盘剩余50GB以上 其他组件,组件节点要求最低配置4核8G、磁盘剩余50GB以上 单机部署下: 1)需要至少部署1个主应用类型节点。建议帆软应用不要部署在运维平台所在服务器上。 2)若未配置组件节点,那么组件都部署在主应用节点下。 3)若配置了多个组件节点,则组件随机分布在各个节点。 4)帆软应用需要独占服务器,即部署应用/组件的服务器上不可部署其他工程或内容。 |
主机 | 请输入节点主机IP 同一主机不支持重复添加 |
端口 | 请输入节点端口号,默认为22 |
用户名 | 请输入有sudo权限的服务器用户名 |
验证方法 | 支持两种:密码、公钥 |
挂载路径 | 请输入节点安装目录的服务器路径 默认为~/data,即挂载到用户目录下的data文件夹下 |
2.5 开始部署
节点配置完成后,点击「开始部署」,进入部署过程。
弹窗中会显示各个组件的部署情况,若部署失败则显示失败原因。
注:部署过程中,用户可点击「隐藏至后台进行」,正常进行运维平台其他操作。
通过运维平台成功部署的新项目,自动接入运维平台的项目管理列表中,可进行相关运维操作。如下表所示:
3. 部署新集群项目编辑
3.1 使用前提
3.1.1 确认服务器基础配置
配置 | 要求 |
---|---|
服务器数量 | 最佳配置: 每个FineReport工程节点独占一个服务器 redis、nginx、mysql、minio组件各自独占一个服务器 其他组件独占一个服务器 这些服务器中不再安装其他工程/产品 最低配置: 每个FineReport工程节点独占一个服务器 其他组件独占一个服务器 这些服务器中不再安装其他工程/产品 注意事项: FineReport项目和运维平台不要部署在同一服务器下 |
系统版本 | CentOS 7.3 及以上 Ubuntu 18.04.4 及以上 |
系统内核 | 3.10及以上 |
CPU架构 | 仅支持 X64 |
网络环境 | FineReport项目所在服务器(包括工程和集群组件等)、运维平台所在服务器,彼此内网需要互相联通,如不联通则无法成功部署 |
3.1.2 确认服务器内存CPU配置
请确认目标服务器(即部署FineReport项目的服务器)是否符合待部署应用和组件的运行环境要求。
注:不支持在部署过程中调整以下配置。如需调整,请在部署完成后,在「组件管理>更改配置>通用配置」中调整CPU和内存。
组件 | 部署位置 | 容器CPU限制 | 容器内存限制 | 内存配置xmx | 磁盘配置 |
---|---|---|---|---|---|
FineReport | 主应用 | 8Core | - | 默认内存为:机器内存减掉8G后的内存大小,最大不会超过32G | 50G |
ops_agent | 主应用、组件 | 1Core | - | 1G | - |
node_exporter | 主应用、组件 | 0.1Core | 0.1G | - | - |
mysql | 组件 | 2Core | - | - | 50G |
mysqld_exporter | 组件 | 0.1Core | 0.1G | - | - |
elasticsearch | 组件 | 1Core | - | 2G | 50G |
elasticsearch_exporter | 组件 | 0.1Core | 0.1G | - | - |
redis | 组件 | 1Core | - | 4G | - |
redis_exporter | 组件 | 0.1Core | 0.1G | - | - |
nginx | 组件 | 1Core | - | - | - |
nginx_exporter | 组件 | 0.1Core | 0.1G | 0.1G | - |
minio | 组件 | 1Core | - | - | 100G |
3.1.3 确认服务器端口可用
请确认目标服务器(即部署FineReport项目的服务器)中,待部署应用和组件的默认端口是否可用。
请确认默认的映射端口端口是否已被使用,如已被使用,请安排好其他空闲端口。
请确认准备使用的端口是否开放了防火墙、安全组等,确保可连接。
注:端口portMapping为{映射端口:容器内端口} ,其中映射端口可改,容器内端口修改无效。
组件 | 安装默认配置 |
---|---|
FineReport | 端口:{8080: 8080, 7800: 7800, 7830: 7830, 7840: 7840, 7850: 7850, 7870: 7870} |
ops_agent | 端口:{9070:9070} |
node_exporter | 端口:{9100:9100} |
mysql | 端口:{3306:3306} 用户名:root(不支持修改) 密码:随机生成,建议修改 |
mysqld_exporter | 端口:{9104:9104} |
elasticsearch | 端口:{9200:9200} 用户名:elastic(不支持修改) 密码:elasticadmin |
elasticsearch_exporter | 端口:{9114:9114} |
redis | 端口:{6379:6379} 用户名:admin(不支持修改) 密码:redis |
redis_exporter | 端口:{9121:9121} |
nginx | root用户:{80: 8080} 非root用户:{8090: 8080} |
nginx_exporter | 端口:{9113: 9113} |
minio | 服务器端口:{9000:9000} 控制台端口:{9001:9001} 用户名:minioadmin(不支持修改) 密码:minioadmin(密码必须大于等于8位,否则使用默认密码) |
3.1.4 确认运维平台仓库镜像
部署新项目,是需要通过运维平台的镜像仓库中的镜像进行部署的。因此管理员需要先确认仓库中存在相关镜像。
管理员登录运维平台,点击「运维管理>镜像管理」,查看是否存在相关镜像。
必须有这些镜像(默认必须安装):FineReport、node_exporter、ops_agent、nginx、nginx_exporter
建议有这些镜像(可选是否安装):mysql、mysqld_exporter、elasticsearch、elasticsearch_exporter、minio、redis、redis_exporter
3.2 新增项目
管理员登录运维平台,点击「运维管理>项目管理」,点击「新增项目>部署新项目」,如下图所示:
3.3 项目设置
进入「项目设置」界面,输入相关项目信息,点击「下一步」,如下图所示:
各配置项如下表所示:
信息 | 说明 |
---|---|
项目名称 | 自定义项目的名称 项目名称不允许为空 项目名称仅支持小写字母、数字 项目名称长度最大为12位 项目名称不允许与已有项目重名 |
应用类型 | 选择「FineReport」 |
项目类型 | 选择「集群」 |
需要部署的套件 | 集群包括多种组件: 1)运维基础套件(必须安装): FineReport、node_exporter、ops_agent 2)Nginx(必须安装): nginx、nginx_exporter 3)MinIO(可选择安装): minio 如不安装该组件,用户必须自行填写文件服务器信息,否则无法部署 4)MySQL(可选择安装): mysql、mysqld_exporter 如不安装该组件,用户必须自行填写外接数据库信息,否则无法部署 5)Redis(可选择安装): redis、redis_exporter 如不安装该组件,用户必须自行填写状态服务器信息,否则无法部署 6)ElasticSearch(可选择安装): elasticsearch、elasticsearch_exporter 如不安装该组件,将启用FineReport中原有的swift,用作日志存储 |
部署配置 | 支持两种: 1)使用默认配置 2)自定义端口、组件用户名密码,即对3.1.3节的默认端口、密码进行调整 建议务必修改MySQL组件的密码,该密码默认随机生成。 |
访问路径 | 说明: 应用的访问链接为{域名/IP}/{访问路径}/decision 支持用户自定义应用的访问路径,访问路径默认为webroot 举例: 一般应用访问链接为http://IP:端口/webroot/decision 修改访问路径为demo 则部署好的应用访问链接为http://IP:端口/demo/decision |
3.4 节点配置
配置完需要的组件和端口后,即可进入「节点配置」。
点击「新增节点」,填写相关设置项,点击「完成」,若主机用户名校验成功,即可添加一个节点。如下图所示:
注1:若节点连接失败,则出现报错提醒,无法正确新增节点。
注2:若服务器配置不符合3.1.2节最低要求,则出现报错提醒,无法正确新增节点。
具体节点设置如下图所示:
节点设置 | 说明 |
---|---|
节点类型 | 分为主应用、组件,具体分类请参考3.1.1节说明 FineReport主应用节点要求最低配置8核16G、磁盘剩余50GB以上 其他组件节点要求最低配置4核8G、磁盘剩余50GB以上 集群部署下: 1)需要至少部署2个主应用类型节点,集群节点数与主应用节点数一致。 2)需要至少部署1个组件类型节点 3)若配置了多个组件节点,则组件随机分布在各个节点。 4)建议帆软应用、集群组件和运维平台不要部署在同一服务器下。 服务器资源实在不足时可将集群组件与运维平台部署在同一服务器下。 帆软应用需要独占服务器,即部署应用/组件的服务器上不部署其他工程或内容。 |
主机 | 请输入节点主机IP 同一主机不支持重复添加 |
端口 | 请输入节点端口号,默认为22 |
用户名 | 请输入有sudo权限的服务器用户名 |
验证方法 | 支持两种:密码、公钥 |
挂载路径 | 请输入节点安装目录的服务器路径 默认为~/data,即挂载到用户目录下的data文件夹下 |
3.5 开始部署
节点配置完成后,点击「开始部署」,进入部署过程。
弹窗中会显示各个组件的部署情况,若部署失败则显示失败原因。
通过运维平台成功部署的新项目,自动接入运维平台的项目管理列表中,可进行相关运维操作。如下表所示:
4. 常见问题编辑
4.1 The current server limit minimum number of cpu cores is 8
问题描述:
节点设置时,出现报错提示「The current server limit minimum number of cpu cores is 8」,如下图所示:
原因分析:
FineReport应用,主应用节点要求最低配置8核16G、磁盘剩余50GB以上
其他组件,组件节点要求最低配置4核8G、磁盘剩余50GB以上
解决方案:
请升级服务器配置后,再进行项目部署。
4.2 Server IP try to bind ports 9114,9100,9200,9080,9070 failed
问题描述:
项目部署时,出现报错提示「Server IP try to bind ports 9114,9100,9200,9080,9070 failed!」,如下图所示:
原因分析:
该服务器上的这些端口未开放,可能是端口被占用,或安全组/防火墙未开放
解决方案:
请联系服务器运维人员,开放报错中的端口。