主机监控 问题原因 为避免Agent负载过高,影响主机上的其他业务,云监控服务在Agent占用CPU或内存过高时,提供了熔断机制。当Agent负载过高时,会自动触发熔断,触发熔断机制后,Agent暂时停止工作,不上报监控数据。 熔断机制原理 默认情况下,Agent检测机制为: 1分钟查检测一次Agent是否超过第二阈值(占用CPU超过30%或占用内存超过700M)。如果CPU或内存任何一个超出,Agent直接退出:如果没有超过第二阈值,查看Agent是否超过第一阈值(占用CPU超过10%或占用内存超过200M),连续三次超过第一阈值,则退出Agent进程并记录。 退出后,守护进程会自动拉起Agent进程,首先检测退出记录,如果有连续三次退出记录,则休眠20分钟,休眠期间,不会采集监控数据。 当主机挂载磁盘数量较多时,Agent占用的CPU或内存可能较高。您可以根据实际观测主机的资源占用率,参考下文操作,配置Agent熔断机制中的第一阈值和第二阈值。 操作步骤 1. 使用root帐号,登录Agent不上报数据的ECS或BMS。 2. 执行以下命令,切换至Agent安装路径的bin下。 cd /usr/local/telescope/bin 说明 Windows系统下为telescopewindowsamd64bin目录。 3. 修改配置文件conf.json。 a. 执行以下命令,打开配置文件conf.json。 vi conf.json b. 在conf.json文件中,添加如下四行参数,具体参数请参见下表。 表 参数说明 参数 说明 cpufirstpctthreshold 第一阈值(CPU),若Agent进程^a^的CPU使用率为20%左右,此处建议配置为35,单位为%。说明 Agent的CPU使用率和内存使用率查询方法: Linux: top ptelescope的PIDWindows: 在任务管理器中查看Agent进程详情。 memoryfirstthreshold 第一阈值(内存),若Agent进程使用的内存大小为100M左右,此处建议配置为314572800(300MB),单位为Byte。 cpusecondpctthreshold 第二阈值(CPU),若Agent进程的CPU使用率为20%左右,此处建议配置为55,单位为%。 memorysecondthreshold 第二阈值(内存),若Agent进程使用的内存大小为100M左右,此处建议配置为734003200(700MB),单位为Byte。 json { "InstanceId":"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx", "ProjectId":"b5b92ee0xxxxxxxxxxxxxxxxcab92396", "AccessKey":"QZ0XGJXFxxxxxxxxT65R", "SecretKey":"lEv2aXAGwxxxxxxxxxxxxxxxxxxxxF8t0Bf18Tn2", "RegionId":"cnhz1", "cpufirstpctthreshold":35, "memoryfirstthreshold":314572800, "cpusecondpctthreshold":70, "memorysecondthreshold":734003200 } c. 执行如下命令,保存并退出conf.json文件。 :wq 4.请执行如下命令,重启Agent。 /usr/local/telescope/telescoped restart