首批通过分布式安全可靠测评,为关键业务系统打造
obagent_dead Agent 服务不可用
更新时间:2026-04-14 11:55:54
告警描述
OCP-Agent 是部署在主机上的服务程序总称,ocp_monagent 负责采集主机、OBServer 节点的监控数据, ocp_mgragent 负责对 OBServer 节点进行运维操作,ocp_agentd 进程则为这两个服务的守护进程。若守护进程不存在,则无法保证 OCP-Agent 能够持续正常提供服务。
该告警负责监测主机上的 OCP-Agent 进程是否正常,若不正常则触发该告警。
说明
该告警能够上报基于 OCP-Agent 还在正常提供监控采集服务,即守护进程不存在而 OCP-Agent 服务负责监控的进程仍正常。
告警原理
| 参数 | 值 |
|---|---|
| 监控指标 | host_agent_process_status 监控指标 host_agent_process_status 的值表示进程状态,1 表示正常,0 表示不正常。 |
| 指标来源 | 请求 ocp_mgragent 状态接口(http://ip:62888/api/v1/agent/status)获取,可以获得 ocp_agentd,ocp_monagent,ocp_mgragent 进程的状态。 |
| 采集指标 | host_agent_process_status |
| 监控表达式 | min(host_agent_process_status{@LABELS}) by (@GBLABELS) |
| 采集周期 | 30 秒 |
规则信息
| 监控指标 | 默认阈值 | 持续时间 | 检测周期 | 消除周期 |
|---|---|---|---|---|
| host_agent_process_status | 0 | 0 秒 | 15 秒 | 5 分钟 |
告警信息
| 告警触发方式 | 告警等级 | 范围 |
|---|---|---|
| 基于监控指标的表达式 | 停服 | 服务器 |
告警模板
告警概述模板:${alarm_target} ${alarm_name}
告警详情模板:集群:${ob_cluster_name},主机:${host},告警:agent 进程不可用,进程名:${agent_process}, 进程状态:${process_status}。
告警概述样例:svr_ip=xxx.xxx.xxx.xxx Agent 服务不可用
告警详情样例:集群:obcluster-1,主机:xxx.xxx.xxx.xxx,告警:agent 进程不可用,进程名:ocp_monagent, 进程状态:不可用。
对系统的影响
- 若 ocp_agentd 进程不存在,则 OCP-Agent 相关进程则有异常停止而不被自动启动的可能,从而带来如下影响:
ocp_monagent 进程异常,因无法采集监控数据,而无法上报告警,导致用户不能发现系统中存在的风险。
ocp_mgragent进程异常,无法对 OBServer 节点做运维操作。
可能原因
- ocp_agentd 进程一般可能会因为主机内存或磁盘满等原因被意外终止。
- 程序存在bug,ocp_agentd 尝试多次拉起进程启动失败而不再拉起。
处理方法
确认是否磁盘或内存剩余不足。
登录告警主机,参考如下命令查看磁盘和内存的使用情况。
# 查看磁盘情况,/home/admin 所在盘的使用率是否接近 100%。 df -B1 # 查看内存使用情况,剩余内存是否接近于 0。 free -g若磁盘使用率接近 100%,则参考如下方法清理日志或为磁盘扩容。
查看 /home/admin/logs/ 下占用磁盘空间大的目录。
[root]# du /home/admin/logs/ 4 /home/admin/logs/obproxy/minidump 32 /home/admin/logs/obproxy/etc 1261772 /home/admin/logs/obproxy/log 1261812 /home/admin/logs/obproxy 1261816 /home/admin/logs/进入该目录并删除该目录中归档时间已久的日志。
[root]# ll /home/admin/logs/obproxy/log [root]# cd /home/admin/logs/obproxy/log [root]# rm obproxy.67344.log.20210902*重新启动 ocp_agentd 进程。
[root]# cd /home/admin/ocp_agent [root]# python ocp_agent_ctl.py recover
若剩余内存接近 0,则参考如下方法释放内存,然后重新启动进程。
释放内存
[root]# sync [root]# echo 1 > /proc/sys/vm/drop_caches [root]# echo 0 > /proc/sys/vm/drop_caches重启 ocp_agentd 进程。
[root]# cd /home/admin/ocp_agent [root]# python ocp_agent_ctl.py recover
若剩余内存和磁盘空间都充足,则可能是其他原因。
其他原因,请收集 /home/admin/ocp_agent/log下 ocp_agentd.log,ocp_monagent.error.log 和 ocp_mgragent.error.log 日志和告警详情信息,然后联系技术支持人员定位。
ocp_monagent.error.log 进程里可能存在导致程序崩溃的关键字:panic,可以搜索关键字后提供给技术支持人员。
[root]# tail -1000 /home/admin/ocp_agent/log/ocp_monagent.error.log | grep -10 panic