1. 概述
1.1 版本
运维平台版本 | 功能变更 |
---|---|
V1.2 | - |
1.2 应用场景
由于企业业务的复杂多变,一个服务器下可能存在多容器、多应用、多节点、多组件。需要给管理员提供一个汇总页面维护所有容器。
应用的某个组件出现故障,可能会导致应用整体不可用。需要给管理员提供快速恢复的方法和手段。
1.3 功能简介
运维平台提供「容器管理」功能。
1)容器管理功能支持对容器化部署下所有组件进行启动、停止、重启。
暂不支持对非容器化部署的应用进行启停。
2)容器管理涉及的的组件包括运维平台相关组件容器和应用相关组件容器:
运维组件容器:FIneOPS应用、promethues、grafana、alertmanager、loki
应用组件容器:FineReport应用、FineBI应用、Mysql、Redis、Nginx、Node-exporter、Mysql-exporter、Redis-exporter、Nginx-exporter、promtail
2. 运维组件容器
2.1 展示信息
运维组件容器列表中,展示运维平台关联的FIneOPS应用、promethues、grafana、alertmanager、loki的组件容器状态。如下图所示:
展示的容器信息包括:
信息 | 说明 |
---|---|
容器名 | 容器名称,方便识别容器用途 |
容器ID | 容器的ID |
容器状态 | 是否启动,包括: 启动、未启动、启动中 |
镜像信息 | 容器的镜像信息 |
宿主机IP | 容器IP |
端口 | 容器的端口,暴露的端口,方便维护处理网络端口问题 |
运行时间 | 容器的持续运行时间 |
操作 | 包括四种操作:启动、停止、重启、忽略 |
2.2 操作说明
通过点击操作按钮,即可对容器进行启停。如下图所示:
每个操作按钮的说明如下表所示:
操作 | 说明 | 注意事项 |
---|---|---|
启动 | 启动对应容器 | 容器启动状态下无法使用该按钮 |
停止 | 停止对应容器 | 容器未启动状态下无法使用该按钮 |
重启 | 重启对应容器 | - |
忽略 | 把容器从列表中移除不显示 | 如需再次显示,可从右上角「忽略容器列表」中释放 容器启动状态下无法使用该按钮 容器更名后,自动从「忽略容器列表」中释放出来 |
3. 应用组件容器
3.1 展示信息
应用组件容器中,展示当前应用关联的组件容器,包括:FineReport应用、FineBI应用、Mysql、Redis、Nginx、Node-exporter、Mysql-exporter、Redis-exporter、Nginx-exporter、promtail
管理员可以通过切换应用,查看不同应用下的组件容器。如下图所示:
展示的容器信息包括:
信息 | 说明 |
---|---|
容器名 | 容器名称,方便识别容器用途 |
容器ID | 容器的ID |
容器状态 | 是否启动,包括: 启动、未启动、启动中 |
镜像信息 | 容器的镜像信息 |
宿主机IP | 容器IP |
端口 | 容器的端口,暴露的端口,方便维护处理网络端口问题 |
运行时间 | 容器的持续运行时间 |
操作 | 包括五种操作:启动、停止、重启、忽略、高级管理 |
3.2 基础操作
通过点击操作按钮,即可对容器进行启停。如下图所示:
每个操作按钮的说明如下表所示:
操作 | 说明 | 注意事项 |
---|---|---|
启动 | 启动对应容器 | 容器启动状态下无法使用该按钮 |
停止 | 停止对应容器 | 容器未启动状态下无法使用该按钮 |
重启 | 重启对应容器 | - |
忽略 | 把容器从列表中移除不显示 | 如需再次显示,可从右上角「忽略容器列表」中释放 容器启动状态下无法使用该按钮 容器更名后,自动从「忽略容器列表」中释放出来 |
3.3 高级管理
对于应用组件中的Redis、Mysql、Nginx容器,支持进行高级管理。
点击对应组件后的「高级管理」按钮,弹出高级管理弹窗,支持两种操作类型:配置修改和命令执行
选择需要修改的参数名/命令名,输入参数值,点击「确定」,即可完成修改。如下图所示:
支持修改的参数/配置如下表所示:
组件类型 | 操作类型 | 参数名/命令名 | 参数值 | 说明 |
---|---|---|---|---|
Redis | 配置修改 | maxmemory | 自定义 例如2gb | redis内存修改 |
maxmemory-policy | 自定义 例如volatile-lru | redis内存策略修改 | ||
stop-writes-on-bgsave-error | 自定义 例如no | 配置redis快照出错时是否停止数据写入 | ||
命令执行 | flushall | 无 | 清空整个 Redis 服务器的数据,主要用于清除redis脏数据 | |
Mysql | 配置修改 | max_allowed_packet | 自定义 例如128M | 客户端或者数据库服务器端能够接受的最大数据量 |
character_set_server | 自定义 例如utf8mb4 | 数据库服务器的编码(mysqld) | ||
命令执行 | flush hosts | 无 | 清理hosts文件 | |
set global max_connect_errors = {} | 自定义 例如1000 | 修改最大连接超时个数 | ||
set GLOBAL net_write_timeout = {} | 自定义 例如1000 | 修改写入超时时间 | ||
set GLOBAL read_only = {} | 自定义 例如false | 开启关闭只读模式 | ||
Nginx | 配置修改 | proxy_connect_timeout | 自定义 例如60s | nginx连接到后端服务器的超时时间,是建立连接的时间,而不是等待后端返回响应的时间 |
proxy_read_timeout | 自定义 例如60s | 读取超时,默认60s 如果在超时时间内服务器未返回任何数据,视为超时 如果没有大数据量计算或导出的模板,则建议配置不超过100s 如果有大数据量计算或导出的模板,则根据最长耗时的模板时间进行配置 | ||
proxy_send_timeout | 自定义 例如60s | 写入超时,默认60s 如果在超时时间内服务器未收到数据表示超时,视为超时 如果没有大数据量计算或导出的模板,则建议配置不超过100s 如果有大数据量计算或导出的模板,则根据最长耗时的模板时间进行配置 | ||
proxy_buffer_size | 自定义 例如64k | 设置缓冲区的大小为size | ||
proxy_buffers | 自定义 例如32 64k | 每个连接设置缓冲区的数量和大小,proxy_buffers [number] [size] | ||
proxy_busy_buffers_size | 自定义 例如64k | 当开启缓冲响应的功能以后,在没有读到全部响应的情况下,写缓冲到达一定大小时,nginx一定会向客户端发送响应,直到缓冲小于此值 |