도용 시간 모니터링 도구 (st) 의미해야합니다. 실제로 ….

우리는 가상의 “전용”서버에서 실행하고 있습니다. 이론 상으로는 우리가 서버에서 유일한 사람임을 의미해야합니다. 실제로 …. 우리가 아닐 수도 있다고 생각합니다.

여기에 이미지 설명을 입력하십시오

기계를 죽이는 것처럼 보이지만 “Steal time”은 71 %입니다.

나는로드에 대한 통계를 가져 가고 있으며이 통계가 내 그래프에 표시되지 않은 것에 실망했습니다. 이를 모니터링 할 수있는 도구가 있습니까?


추가 정보:

우리는 4 개의 코어를 실행하고 있습니다 :

# grep "model name" /proc/cpuinfo | sort -u
model name  : Intel(R) Core(TM)2 Duo CPU     E7500  @ 2.93GHz



답변

질문은 잘 정의되어 있지만 환경, ​​현재 모니터링 방법 또는 사용중인 그래프 도구에 대한 많은 정보를 제공하지 않습니다. 그러나 SNMP가 거의 보편적으로 사용된다는 점을 감안할 때 SNMP를 사용하고 있으며 적어도 친숙하다고 가정합니다.

CPU Steal 시간은 현재 snmpd에서 사용할 수 없지만 UCD-SNMP-MIB::extOutput객체와 exec명령으로 직접 확장 할 수 있습니다 .

도둑질 시간을 얻는 가장 쉬운 방법은입니다 iostat. 우리가 얻을 다음과 같은 구조를 할 수 있습니다 사용하여 단지 시간을 훔치는 :

$ iostat -c | awk 'NR==4 {print $5}'
0.00

따라서 snmpd.conf에 다음을 추가하십시오.

exec cpu_steal_time /usr/bin/iostat -c | /usr/bin/awk 'NR==4 {print $5}'

(또는 래퍼 스크립트에 명령을 넣고 내부에서 래퍼를 호출 할 수도 있습니다 snmpd.conf.)

exec호출 snmpd.conf은 1부터 시작하여 인덱싱됩니다. 따라서 하나의 exec 문만있는 경우을 폴링하려고합니다 UCD-SNMP-MIB::extOutput.1. 이것이 5 번째 exec 문이면 poll UCD-SNMP-MIB::extOutput.5등을 수행하십시오.

의 숫자 OID는 UCD-SNMP-MIB::extOutput것입니다 .1.3.6.1.4.1.2021.8.1.101당신이 될 것 인덱스 1에 있다면 그래서 .1.3.6.1.4.1.2021.8.1.101.1, 인덱스 5는 것 .1.3.6.1.4.1.2021.8.1.101.5

그런 다음 게이지 유형의 SNMPD OID를 0-100 범위로 폴링하는 그래프를 만듭니다. 이것은 당신에게 예쁜 그래프를 줄 것입니다.


답변

sar -u귀하의 경우에 도움이 될 수 있습니다. sar은 일반적으로 sysstat -package의 일부입니다 .


답변

가장 많이 답한 답변은 훌륭하지만 현재는 제대로 작동하지 않습니다. net-snmp 는 파이프를 잃어 버렸exec 으므로 다음과 같이 보입니다.

extend-sh cpu_steal_time /usr/bin/iostat -c 1 1 | /usr/bin/awk '!/%user|Linux|^$/ {print $5}'

결과는 nsExtendOutput1Table다음과 같습니다.

# snmpwalk localhost NET-SNMP-EXTEND-MIB::nsExtendOutput1Table
NET-SNMP-EXTEND-MIB::nsExtendOutput1Line."cpu_steal_time" = STRING: 0.60
NET-SNMP-EXTEND-MIB::nsExtendOutputFull."cpu_steal_time" = STRING: 0.60
NET-SNMP-EXTEND-MIB::nsExtendOutNumLines."cpu_steal_time" = INTEGER: 1
NET-SNMP-EXTEND-MIB::nsExtendResult."cpu_steal_time" = INTEGER: 0

여기서 nsExtendOutput1Lineoid는 .1.3.6.1.4.1.8072.1.3.2.3.1.1입니다.

snmpwalk localhost .1.3.6.1.4.1.8072.1.3.2.3.1.1
NET-SNMP-EXTEND-MIB::nsExtendOutput1Line."cpu_steal_time" = STRING: 0.60


답변