有Exadata客户在进行exachk巡检之后反馈,发现系统中,exachk进程占用了大量CPU资源。 了解之前的变更,只是巡检之前升级了AHF,然后进行标准的exachk巡检。
现象:
目前机器整体CPU使用率是20% ,但被使用到的具体CPU core基本都是满负荷,都是这些exachk进程,这些进程初步判断的确是有异常,正常不会运行这么久都不结束。
解决:
尝试方案1:
首先,依据 文档 How to disable TFA autostart on Exadata (Doc ID 2516169.1)
代码语言:javascript复制# /etc/init.d/init.tfa shutdown
# /etc/init.d/init.tfa disable
关闭了tfa服务之后,发现进程依然存在。
尝试方案2:
可以尝试正常停止,先启动tfa,使用tfactl尝试将exachk进程停止:
代码语言:javascript复制/etc/init.d/init.tfa enable
/etc/init.d/init.tfa start
tfactl stop exachk
验证进程是否停止成功:
代码语言:javascript复制ps -ef|grep exachk
发现进程依然存在。
尝试方案3:
没办法,只能采用强行kill的方式,反复确认需要kill的进程PID信息,均是exachk,然后进行kill:
代码语言:javascript复制kill -9 xxxxxx
kill -9 xxxxxx
...
这样就完成 kill 所有异常exachk进程,CPU使用率也随之恢复正常。
目前tfa服务也保持启动状态,为了后续再观察,如有问题复现再具体分析。
总结:
针对异常的进程可以kill,但是需反复确保要操作kill的进程完全不会影响到正常生产运行。