【银河麒麟高级服务器操作系统】实际案例分析,xfsaild占用过高

avatar
作者
筋斗云
阅读量:0

了解银河麒麟操作系统更多全新产品,请点击访问麒麟软件产品专区:https://product.kylinos.cn

服务器环境及配置

物理机/虚拟机

 物理机

处理器:

Intel(R) Xeon(R) Silver 4110 CPU @ 2.10GHz

内存:

65536 MiB (64 GiB)

主板型号:

HPE ProLiant DL380 Gen10  Not Specified

整机类型/架构:

x86

BIOS版本:

HPE U30

系统硬盘:

2 disks, totaling 2515 GiB (2.46 TiB)

网卡:

BCM5719:tg3

操作系统版本:

银河麒麟高级服务器操作系统 Kylin-Server-10-SP2-Release-Build09-20210524-x86_64

内核版本

4.19.90-24.4.v2101.ky10.x86_64

现象分析

查看 sosreport 日志中的进程信息,可以看到,xfsaild/sda4为不可中断进程,并且cpu占用高的为abrtd 进程。

由于现场有两台机器存在这个问题,另外一台机器复现频率较高,我们从另外一台入手。

现场 iotop 结果如下,可见占用最高的为内核线程 xfsaild/sda4

两台 ps 信息都是 xfsaild/sda4进入了D状态,xfsaild 是xfs文件系统的一个辅助进程,用于异步执行一些I/O操作,如延迟分配,元数据同步等,此处可以看到是对 sda4 进行操作。并且占用最高 cpu 进程为 abrtd,Abrtd服务在sp2没有被默认安装,在sp2上,用于生成进程的核心转储文件(core dump)的组件为systemd-coredump。abrtd的频繁报告,可能会加大磁盘的负载。

sda4 为系统的根分区,用的调度算法为none,据现场说都是机械盘,跑的是nginx 业务,如果是机械盘建议调度算法为mq-deadline而不是设置为none。

并且注意到rasdaemon和audit服务有缺陷,具体可以参考官网https://www.kylinos.cn/support/update/6.html、https://www.kylinos.cn/support/update/12.html

初步建议

1、修改sda磁盘调度算法为mq-deadline。

Shell
echo "mq-deadline" > /sys/block/sda/queue/scheduler

2、如对abrtd服务没特殊需求,可关闭abrtd服务

Shell
systemctl disable abrtd --now

# 注意,停止后确保abrt进程全部停掉
ps -ef | grep abrt

3、升级audit到源里面最新版本,升级后重启auditd.service生效

Shell
systemctl restart auditd.service

4、升级rasdaemon到源里面最新版本,升级后重启rasdaemon.service生效

Shell
systemctl restart rasdaemon.service

    广告一刻

    为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!