top 명령의 %wa가 높습니다. 이를 제한할 수 있는 방법이 있나요?

top 명령의 %wa가 높습니다. 이를 제한할 수 있는 방법이 있나요?

이것이 막히기 전 마지막으로 중요한 메시지입니다.

top - 18:26:10 up 238 days,  5:43,  3 users,  load average: 1782.01, 1824.47, 1680.36
Tasks: 1938 total,   1 running, 1937 sleeping,   0 stopped,   0 zombie
Cpu(s):  2.4%us,  3.0%sy,  0.0%ni,  0.0%id, 94.5%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:  65923016k total, 65698400k used,   224616k free,    13828k buffers
Swap: 33030136k total, 17799704k used, 15230432k free,   157316k cached

보시다시피, hadoop get명령을 실행하는 프로세스를 약 2000개 시작했기 때문에%와매우 높습니다. 메모리와 CPU를 제한합니다 cgroups. 디스크 IO도 제한하면 도움이 될까요? 그렇다면 누구든지 이 작업을 수행하는 방법에 대한 아이디어를 줄 수 있습니까 cgroups? 미리 감사드립니다.

답변1

시스템에서 많은 스왑(17G 스왑 사용)을 수행하고 있어 일반 프로세스에서 해당 드라이브로의 I/O가 극도로 느려지므로 결과적으로 %wa.

100% 확실하지는 않지만 교체 자체도 해당 %wa숫자에 직접적인 영향을 미칠 수 있습니다(일반적으로 kswapd프로세스를 통해, 귀하의 경우 CPU를 가장 많이 사용하는 프로세스일 수도 있음).

먼저 스왑이 전혀(또는 아주 적게) 사용되도록 프로세스 수를 제한한 다음 %wa를 다시 확인하고 실제로 해당 프로세스에 대한 I/O를 제한해야 하는지 평가합니다.

관련 정보