我正在运行 Ubuntu 16.04,我的 Linux 内核版本是 4.4.0。如何启用内核的防扩散安全倡议? 或者有没有类似的工具?
答案1
每个资源的压力信息通过相应的文件导出/proc/pressure/
– cpu
、memory
和io
。
您的 CPU 的 PSI 命令是:
some avg10=0.00 avg60=0.00 avg300=0.00 total=0
对于内存和 I/O:
some avg10=0.00 avg60=0.00 avg300=0.00 total=0
full avg10=0.00 avg60=0.00 avg300=0.00 total=0
“一些”线表示至少一些任务在给定资源上停滞的时间份额。
“满”线表示所有非空闲任务在给定资源上同时停滞的时间份额。在这种状态下,实际的 CPU 周期将被浪费,并且长时间处于这种状态的工作负载被视为处于抖动状态。这会严重影响性能,将这种情况与某些任务停滞但 CPU 仍在进行生产性工作的状态区分开来很有用。因此,在停滞状态的这个子集中所花费的时间被单独跟踪并导出到“满”平均值中。
更多详情可参阅我的来源,我将其添加为您查询第一个图表中的链接。
答案2
对于“监控”,你可能需要显示当前值。你可以通过使用来实现这一点watch
,例如
watch cat /proc/pressure/*
(虽然这里很难辨别哪条线代表哪个类别)
或
watch "(echo CPU; cat /proc/pressure/cpu ; echo IO; cat /proc/pressure/io; echo MEMORY; cat /proc/pressure/memory)"
显示类似
CPU some avg10=0.00 avg60=0.00 avg300=0.04 total=51646098 IO some avg10=0.00 avg60=0.00 avg300=0.09 total=20413087 full avg10=0.00 avg60=0.00 avg300=0.08 total=16237739 MEMORY some avg10=0.00 avg60=0.00 avg300=0.00 total=0 full avg10=0.00 avg60=0.00 avg300=0.00 total=0