该有的矜持---域控CPU长期飙60-80%问题源头确认过程
2019-09-06 15:51
465 查看
背景:
很早就发现域控的CPU长期飙在60-80%之间,日志服务是CPU占用大头,改小日志的最大大小也没有用,域控使用了paloalto和 SXF的单点登录功能,所以我虽然确定肯定是两个的其中一个,但是一直没有实锤。
使用Stack Trace我只能确认是日志查询导致的
由于日志的查询是通过WMI进行的,所以在找到一些WMI TRACE相关的信息后,我抓了一小段时间WMI TRACE为ETL文件,然后使用windows message analyzer 把需要的字段提取出来,生成一个CSV,然后在EXCEL里面进行查看。
- 白色背景的查询1,似乎没有太规则的规律,查询间隔时间最小似乎是1s,但是大的间隔也有5s ,2s左右居多。
select __RELPATH, InsertionStrings from Win32_NTLogEvent where ((Logfile = "security" AND (((EventCode = 672 OR EventCode = 4624) OR EventCode = 540) OR EventCode = 4768)) AND RecordNumber > 939574642)
- (Yellow)色背景的查询2 (唉,这博客的关键词太优(cu)雅(fang)),查询间隔大概是14-15s.
select __RELPATH, EventIdentifier, InsertionStrings, TimeGenerated from Win32_NTLogEvent where (((((((((EventIdentifier = 4624 OR EventIdentifier = 4768) OR EventIdentifier = 4769) OR EventIdentifier = 4770) OR EventIdentifier = 540) OR EventIdentifier = 672) OR EventIdentifier = 673) OR EventIdentifier = 674) AND LogFile = "Security") AND TimeGenerated >= "20190906013740.751000+000")
找到真凶
是的上面的查询1,频率很高,可能是真凶,但是这个查询是谁发出的呢?能否跟到IP地址?
使用netsh trace 进行抓包,使用Windows Message Analyzer进行分析,先筛选WMI,然后点中其中一条,点最前面的加号,一直跟到ip 模块,然后把SourceAddress 显示成列,把strquery 单独显示成一列,大致如下图。真凶找到。
后记
以为在网页上把下面的设置禁用,删除配置的域控列表,就可以禁用日志查询了,结果抓包后不是这样的,SXF 是坚持要干活,AD的日志查询还是一直在继续,估计釜底抽薪的办法,只能把SXF用的账号给改个密码或者把账号禁用了。
我验证了我的想法,然后发现确实有效,我只想说,做人真的要矜持。。。。。。。。。。。
禁用了SXF用的AD账号一段后,又开启后,DC的CPU表现图如下:
附加下Palo Alto的查询配置(可更改的)
参考链接
相关文章推荐
- 关于《自己动手写CPU》使用GNU工具过程遇到的问题
- 一次显式GC导致的High CPU问题处理过程
- 压力测试过程中MySQL服务CPU占用率过高的问题排查思路
- oracle cpu idle值过低问题分析过程
- 记一次线上Java程序导致服务器CPU占用率过高的问题排除过程
- Linux CPU 长期90%以上问题排查
- Ubuntu内核编译和CPU Hot-Plug特性配置全过程及遇到问题记录
- 记一次线上Java程序导致服务器CPU占用率过高的问题排除过程
- java 程序占CPU100%问题的解决过程
- 解決 64 CPU 位元 compiler时zlib 出现(php安装过程中遇到的问题)
- Faster RCNN 在Linux+CPU环境下训练自己的数据集过程以及训练遇到的问题
- Android开发过程中遇到的问题(长期补充)
- 一次显式GC导致的High CPU问题处理过程
- 记一次线上Java程序导致服务器CPU占用率过高的问题排除过程
- 【李珍宝】使用Ice-2.1.2-VC60过程中的问题
- 记一次线上Java程序导致服务器CPU占用率过高的问题排除过程
- openwrt移植过程的问题记录
- 安装autoKeras的大概过程和问题
- 配置下载Android源代码的过程及问题解决