历史版本12 :组件监控 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 概述编辑

1.1 版本

运维平台版本
功能变更
V1.5.5-
V1.11.0新增「加速引擎监控」,帮助管理员监控管理BI大数据引擎组件
V2.1.0

1)对于非运维平台部署的项目,支持手动调整nginx、加速引擎监控信

2)集群组件出现变更后,监控自动变更配置,确保正常监控

V2.6.0新增「kafka监控」,帮助管理员监控管理FineDataLink的kafka组件

1.2 功能简介

组件监控,主要用来监控运维项目中,各类组件(外接数据库、Nginx、Elasticsearch等)的运行状况,使用情况等。

1.3 操作步骤

1)如需正常使用本文看板,请务必达成使用前提,详情请参见:监控仪表板使用前提

2)管理员登录FineOps运维平台,选择运维项目,点击「项目监控>组件监控」。

3)点击右上角可切换查看不同组件:外接数据库监控、Redis监控、Nginx监控、Elasticsearch监控、Minio监控、加速引擎监控。

注1:右上角支持切换查看不同时间段的监控数据,默认时间段为前30分钟,支持查看时间范围为前15天。

注2:根据运维项目中的组件构成,会导致下文提及的部分仪表盘无数据。

        例如若未安装Elasticsearch组件,则Elasticsearch监控仪表盘无数据。

        例如若未安装MinIO组件,则MinIO监控仪表盘无数据。

2. 外接数据库监控编辑

外接数据库监控主要用来监控外接数据库的压力情况,避免因为外接数据库的不稳定而影响帆软系统的正常使用。

注:仅支持监控MySQL5.6以上版本外接数据库。

1)仪表板示例:

2)仪表板指标说明:

指标
具体说明
是否存活外接数据库是否存活
运行时长外接数据库举例上次启动的时长
缓冲池大小缓冲池大小,内存允许的情况下缓冲池越大性能越好
缓冲池利用率
展示一段时间内缓冲池利用率的变化趋势
磁盘读取请求次数磁盘读取请求次数,磁盘读取请求次数持续增长可能出现外接数据库性能差,磁盘io压力大等问题
连接数展示外接数据库的剩余连接数和实例拒绝连接数,如果剩余连接数不足可能会出现应用访问异常
QPS展示外接数据库每秒处理的请求数量,用来判断外接数据库的压力情况
正在查询的数量展示外接数据库正在查询的语句数量,持续增长可能说明外接数据库超负荷
慢查询数量展示外接数据库的慢查询数量,如果慢查询数量持续增长可能影响外接数据库的性能及可用性,需要关注具体慢查询的情况
死锁信息展示数据库的死锁信息:

ts:检测到死锁的时间戳

thread:产生死锁的线程id,这个id和show processlist里面的线程id是一致的

txn_id:innodb的事务ID

txd_time:死锁检查到前,事务执行时间

user:执行transcation的用户名

db:发生死锁的DB名

tbl:死锁发生的表名

idx:产生死锁的索引名(在上面这个demo里面, 我们直接走的主键,加的记录锁)

lock_type:锁的类型(记录锁,gap锁,next-key锁)

lock_mode:锁模式(S,X)

wait_hold:是否等着锁释放,一般死锁都是两个wait

victim:该会话是否做了牺牲,终止了执行

query:造成死锁的SQL语句

3. Redis监控编辑

Redis监控仪表板用于监控帆软系统使用的Redis状态服务器的运行情况。

1)仪表板示例:

2)仪表板指标说明:

指标
具体说明
是否存活redis的存活状态
redis版本redis的版本
模式
单机还是集群
运行时长redis本次启动的运行时长
集群活跃节点数集群活跃的节点数
主节点数集群主节点数量
从节点数集群从节点数量
redis内存信息redis分配的内存和使用情况,通常来说redis内存占用比较小,如果出现内存使用率很高,那么可能存在异常
内存使用率曲线一段时间内已用内存在分配内存中的占比
内存碎片率

内存碎片率表示「Redis向操作系统中申请的内存」 与「分配器分配的内存总量」的比值

指数>1表明有内存碎片,越大表明越多,<1表明正在使用虚拟内存,虚拟内存其实就是硬盘,性能比内存低得多,这是应该增强机器的内存以提高性能。
一般来说,内存碎片率数值在1 ~ 1.5之间是比较健康的。

大于1.5表示,系统分配的内存大于Redis实际使用的内存,Redis没有把这部分内存返还给系统,产生了很多内存碎片。在Redis 4.0版以前,只能通过安全重启解决这个问题。Redis 4.0及以上版本可以支持内存自动清理。

小于1表示,系统分配的内存小于Redis实际使用的内存,而Redis很有可能在使用Swap了!使用swap是相当影响性能的。

客户端连接个数用于查看当前redis的客户端连接个数,默认的客户端连接数最大限制为10000,如果连接数过高,会影响redis吞吐量。>5000   时通常就需要进行告警
redis每秒执行的命令数展示一段时间内redis每秒执行命令数的曲线
每秒查找数据库键成功/失败的次数展示每秒查找数据库的hit/miss的次数,用于参考根据业务需求调优Redis配置
过期/未过期数据库键数展示redis中过期/未过期数据库键数,用于参考根据业务需求调优Redis配置

4. Nginx监控编辑

Nginx监控仪表板用于监控帆软系统使用的Nginx服务器的运行情况,重点关注的是请求情况。

4.1 仪表板简介

1)仪表板示例:


2)仪表板指标说明:

指标
具体说明
是否存活Nginx的存活状态
读取客户端的连接数展示当前读取中的客户端连接数
回写客户端的连接数展示当前回写中的客户端连接数
等待中的客户端的链接数展示当前等待中的客户端连接数
用户请求总数展示一段时间内的用户请求总数变化情况
活跃用户连接数展示一段时间内活跃的用户连接数变化的情况
接收到的用户连接数展示一段时间内接收到的用户连接数变化情况
处理的用户连接数展示一段时间内处理的用户连接数变化情况

4.2 注意事项

若项目非运维平台部署,在接入运维平台监控时,无法自动获取nginx信息。

用户需要手动安装ngx_http_stub_status_module模块,再进行信息配置。

Nginx状态监控模块ngx_http_stub_status_module是统计Nginx服务所接收和处理的请求数量的模块。

1)检查是否安装模块

  • 进入运维项目的Nginx的安装目录(本示例/usr/nginx是一个示例目录,请根据实际情况,确保使用正确的目录名)

cd /usr/nginx

  • 检查Nginx启用了哪些模块

./nginx -V

  • 结果

如果已启用,将在命令输出中看到http_stub_status_module的相关信息「with-http_stub_status_module」。

如果没有启用http_stub_status_module模块,则需要重新编译nginx。

2)安装模块

  • 进入Nginx的安装目录(本示例/usr/nginx是一个示例目录,请根据实际情况,确保使用正确的目录名)

cd /usr/nginx

  • 在configure命令中,添加http_stub_status_module的支持

./configure --with-http_stub_status_module

注:请将上一步中「nginx -V」发现的已安装的模块都一一带上,例如./configure --with-http_stub_status_module --prefix=/usr/nginx --with-pcre=/usr/nginx/pcre-8.42 --with-zlib=/usr/nginx/zlib-1.2.11 --with-http_ssl_module --with-openssl=/usr/nginx/openssl-1.1.1a --with-stream --add-module=/usr/nginx/ngx_healthcheck_module-master

  • 编译和安装Nginx

make && make install

3)启用模块

  • 打开nginx.conf文件并修改

在默认情况下,nginx.conf 文件通常位于 Nginx 的安装目录下的 conf 目录中。

cd /usr/nginx/conf

  • 在nginx.conf文件中,找到server {}块,并添加以下配置,以启用ngx_http_stub_status_module模块查询Nginx状态。

location /basic_status {
  stub_status on;
  #allow 127.0.0.1;  #限制访问ip,可自行修改127.0.0.1为所需开放的ip
  #deny all;   #deny all other hosts 
 }

注意事项:

  • Location地址请严格命名为basic_status。

  • allow 127.0.0.1和deny all表示仅允许本地访问。

    若需允许Nginx Exporter访问,则可将这两行代码注释,或者将127.0.0.1设置为Nginx Exporter的IP地址。

4)重启Nginx

  • 进入Nginx的安装目录(本示例/usr/nginx是一个示例目录,请根据实际情况,确保使用正确的目录名)

cd /usr/nginx

  • 检查Nginx配置文件的语法和结构是否正确

./nginx -t

  • 关闭Nginx服务器

./nginx -s stop

  • 重新加载 Nginx 的配置文件并启动服务器

nginx

5)验证模块是否启用

验证ngx_http_stub_status_module模块是否已成功启动

使用语句查询,若出现提示「server accepts handled requests」则表示ngx_http_stub_status_module模块已成功启动。

curl http://127.0.0.1/basic_status

6)运维平台对接Nginx

管理员登录运维平台,选择运维项目,点击「项目监控>组件监控」,选择「Nginx监控」,点击「设置」。

填入nginx相关信息,点击「确定」即可。

5. Elasticsearch监控编辑

注:若未安装Elasticsearch组件,则Elasticsearch监控仪表盘无数据。

1)仪表板示例:

6. Minio监控编辑

注:若未安装Minio组件,则Minio监控仪表盘无数据。

1)仪表板示例:

7. 加速引擎监控编辑

7.1 仪表板简介

注:若未安装StarRocks组件,则加速引擎监控仪表盘无数据。

1)仪表板示例:

7.2 注意事项

若项目非运维平台部署,在接入运维平台监控时,无法自动获取加速引擎信息,需要用户手动配置。

管理员登录运维平台,选择运维项目,点击「项目监控>组件监控」,选择「加速引擎监控」,点击「设置」。

填入StarRocks的各个引擎信息,点击「确定」即可。

8. kafka监控编辑

8.1 仪表板简介

注:若未安装kafka组件,则kafka监控仪表盘无数据。

1)仪表板示例:

8.2 注意事项

1)对于运维平台部署的FineDataLink项目和kafka组件,请升级kafka组件至V20.0.2及以上版本

2)对于非运维平台部署的kafka组件,在接入运维平台监控时,无法自动获取信息,需要用户手动配置。

请在FineDataLink服务群联系相关客户成功获取