Rainbond文档中心
监控报警项说明 编辑此页面

概述

Rainbond 监控服务由组件 rbd-monitor 完成,在 monitor 组件中采用 Sidecar 设计模式思想整合 Prometheus 服务,并基于 ETCD动态发现 需要监控的 targets,自动配置与管理 Prometheus 服务。monitor 会定期到每个 targets 刮取指标数据,并将数据持久化在本地,提供灵活的PromQL查询与RESTful API查询。

架构图:

monitor服务架构图

访问方式

默认监听端口9999,默认安装已添加 Service 对象,在集群获取到 ServiceIP 后在平台添加 第三方服务 打开对外端口即可访问。

获取 ServiceIP 方式

$ kubectl get service rbd-monitor -n rbd-system
NAME          TYPE        CLUSTER-IP    EXTERNAL-IP   PORT(S)    AGE
rbd-monitor   ClusterIP   10.68.140.5   <none>        9999/TCP   7h11m
添加第三方服务打开对外端口访问

具体监控报警项请访问 rbd-monitor 查看,以下仅作为参考。

监控项

节点资源监控项

监控项 所属组件 说明
cadvisorversioninfo cadvisor 节点系统信息
machinememorybytes cadvisor 当前主机内存大小
machinecpucores cadvisor 当前节点CPU数目
nodefilesystemsize node 存储
node_load1 node 负载1m
node_load5 node 负载5m
node_load5 node 负载15m
nodememoryMemTotal node 节点内存total
nodememoryMemFree node 节点内存free
nodeunameinfo node 节点信息

Rainbond服务组件监控项

监控项 所属组件 说明
acpmqdequeue_number rbd-mq
acpmqenqueue_number rbd-mq
acpmqexporterhealthstatus rbd-mq
acpmqexporterlastscrape_error rbd-mq
acpmqexporterscrapestotal rbd-mq
builderexporterbuildertaskerror rbd-chaos 源码构建任务失败数
builderexporterbuildertasknumber rbd-chaos 源码构建任务数
builderexporterhealth_status rbd-chaos 组件状态1为健康
eventlogexporterchancache_size rbd-eventlog
eventlogexportercollectorduration_seconds rbd-eventlog
eventlogexportercontainerlogstorecachebarrelcount rbd-eventlog
eventlogexportercontainerlogstorelog_count rbd-eventlog
eventlogexportereventstorebarrelcount rbd-eventlog
eventlogexportereventstorecachebarrel_count rbd-eventlog
eventlogexportereventstorelogcount rbd-eventlog
eventlogexporterhealthstatus rbd-eventlog
eventlogexporterlastscrape_error rbd-eventlog
eventlogexportermonitorstorebarrelcount rbd-eventlog
eventlogexportermonitorstorelogcount rbd-eventlog
eventlogexporterscrapestotal rbd-eventlog
gatewayrequestdurationsecondsbucket rbd-gateway 在规定请求时间(bucket)内, 客户端请求的数量
gatewayrequestdurationsecondscount rbd-gateway 客户端请求的总数
gatewayrequestdurationsecondssum rbd-gateway 客户端请求时间的总数
gatewayrequestsize_bucket rbd-gateway 在规定出请求大小(bucket)内, 满足条件的请求的数量
gatewayrequestsize_count rbd-gateway 客户端请求的总数
gatewayrequestsize_sum rbd-gateway 客户端请求大小的总数
gateway_requests rbd-gateway 客户端访问的次数
gatewayresponsedurationsecondsbucket rbd-gateway 在规定响应时间(bucket)内, 响应的次数
gatewayresponsedurationsecondscount rbd-gateway 响应的总次数
gatewayresponsedurationsecondssum rbd-gateway 响应的总时间
gatewayresponsesize_bucket rbd-gateway 在规定出响应大小(bucket)内, 满足条件的响应的次数
gatewayresponsesize_count rbd-gateway 响应的总次数
gatewayresponsesize_sum rbd-gateway 响应的总大小
gatewayupstreamlatency_seconds rbd-gateway 在规定出延迟时间(bucket)内, 满足条件的延迟的次数
gatewayupstreamlatencysecondscount rbd-gateway 延迟的总次数
gatewayupstreamlatencysecondssum rbd-gateway 延迟时间的总和
workerexporterhealth_status rbd-worker
workerexporterworkertasknumber rbd-worker
workerexportercollectordurationseconds rbd-worker
workerexporterlastscrapeerror rbd-worker
workerexporterscrapes_total rbd-worker
workerexporterworkertaskerror rbd-worker
workerexporterworkertasknumber rbd-worker
worker_up rbd-worker
scrapesamplesscraped
scrapesamplespostmetricrelabeling
scrapedurationseconds
statsdexporterbuild_info
statsdexporterevents_total
statsdexporterlines_total
statsdexporterloaded_mappings
statsdexportersamples_total
statsdexportertagerrorstotal
statsdexportertags_total
statsdexportertcpconnectionerrors_total
statsdexportertcpconnectionstotal
statsdexportertcptoolonglinestotal
statsdexporterudppacketstotal
up 组件状态

应用级监控项

监控项 说明
appresourceappmemory 应用内存,根据serviceid,tenantid筛选
appresourceappfs 应用
appresourceappmemory 应用
appclientrequest 应用
appclientrequesttime 应用
app_request 应用
apprequestunusual 应用
app_requestclient 应用
app_requesttime 应用

应用级基于CAvisor获取典型监控指标

监控项 类型 说明
containercpuloadaverage10s gauge 过去10秒容器CPU的平均负载
containercpuusagesecondstotal counter 容器在每个CPU内核上的累积占用时间 (单位:秒)
containercpusystemsecondstotal counter System CPU累积占用时间(单位:秒)
containercpuusersecondstotal counter User CPU累积占用时间(单位:秒)
containerfsusage_bytes gauge 容器中文件系统的使用量(单位:字节)
containerfslimit_bytes gauge 容器可以使用的文件系统总量(单位:字节)
containerfsreadsbytestotal counter 容器累积读取数据的总量(单位:字节)
containerfswritesbytestotal counter 容器累积写入数据的总量(单位:字节)
containermemorymaxusagebytes gauge 容器的最大内存使用量(单位:字节)
containermemoryusage_bytes gauge 容器当前的内存使用量(单位:字节
containerspecmemorylimitbytes gauge 容器的内存使用量限制
containernetworkreceivebytestotal counter 容器网络累积接收数据总量(单位:字节)
containernetworktransmitbytestotal counter 容器网络累积传输数据总量(单位:字节)

其他监控项

监控项 说明
processcpuseconds_total
processmaxfds
processopenfds
processvirtualmemory_bytes
processstarttime_seconds
processresidentmemory_bytes
processopenfds
processmaxfds
processcpuseconds_total

报警规则说明

组件监控报警

报警项 报警信息
api服务下线 APIDown
chaos服务下线 BuilderDown
chaos组件状态异常 BuilderUnhealthy
源码构建异常任务数大于30 BuilderTaskError
ETCD服务下线 EtcdDown
ETCD Leader节点下线 EtcdLoseLeader
ETCD集群成员异常 InsufficientMembers
ETCD集群Leader变更 HighNumberOfLeaderChanges
ETCD GPRC失败请求大于0.05 HighNumberOfFailedGRPCRequests
ETCD 1分钟内HTTP请求失败数大于0.05 HighNumberOfFailedHTTPRequests
ETCD 1分钟内GPRC慢查询数量大于0.15 GRPCRequestsSlow
ETCD磁盘空间占用超过80% DatabaseSpaceExceeded
eventlog组件状态异常 EventLogUnhealthy
eventlog服务下线 EventLogDown
gateway服务下线 GatewayDown
gateway请求大小超过10M RequestSizeTooMuch
gateway每秒请求数量超过200 RequestMany
gateway 10s内错误请求数量大于5 FailureRequestMany
mq服务下线 MqDown
mq组件状态异常 MqUnhealthy
mq消息队列中存在时间大于1分钟的任务 MqMessageQueueBlock
webcli服务下线 WebcliDown
webcli组件状态异常 WebcliUnhealthy
webcli执行命令时发生的错误数大于每秒5次 WebcliUnhealthy
worker服务下线 WorkerDown
worker组件状态异常 WorkerUnhealthy
worker执行任务错误数大于50 WorkerTaskError

集群监控报警

报警项 报警信息
Rainbond 集群node节点不健康 RbdNodeUnhealth
K8s集群node节点不健康 KubeNodeUnhealth
收集集群信息时间超过10s ClusterCollectorTimeout
租户使用资源超出资源限额 InsufficientTenantResources
Node节点下线 NodeDown
节点5分钟内CPU使用率大于70% HighCpuUsageOnNode
集群可用内存资源小于2GB InsufficientClusteMemoryResources
集群CPU可用量小于500m InsufficientClusteCPUResources
节点5分钟内负载大于5 HighLoadOnNode
节点Inode剩余可用量小于0.3 InodeFreerateLow
节点根分区磁盘使用率大于85% HighRootdiskUsageOnNode
节点Docker磁盘分区使用率大于85% HighDockerdiskUsageOnNode
节点内存使用量大于80% HighMemoryUsageOnNode

集群监控报警配置参见 监控报警部署

文章目录