Ferramentas para monitorar o tempo de steal (st)

11

Estamos rodando em um servidor virtual "dedicado", o que, teoricamente, deve significar que somos os únicos caras no servidor. Na prática ... estou pensando que talvez não seja.

Observeque,emborapareçaqueestamosmatandonossamáquina,"Steal time" está em 71%

Estou pegando estatísticas sobre carga e fiquei desapontado que essa estatística não apareceu nos meus gráficos. Há alguma ferramenta que monitore isso que possa ajudar?

Informações adicionais:

Estamos executando 4 núcleos, modelo:

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

2 respostas

10

Sua pergunta é bem definida, mas você não está dando muitas informações sobre o seu ambiente, como você está monitorando no momento ou quais ferramentas gráficas você está usando. No entanto, dado que o SNMP é usado universalmente para isso, presumo que você o esteja usando e tenha pelo menos alguma familiaridade com ele.

Embora (o mais perto que eu possa dizer) o tempo de CPU Steal não esteja atualmente disponível a partir do snmpd, você pode estendê-lo você mesmo com os comandos UCD-SNMP-MIB::extOutput e exec .

A maneira mais fácil (que encontrei) de obter o tempo de roubo é de iostat . Usando a seguinte construção podemos obter apenas o tempo de roubo:

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

Portanto, acrescente o seguinte ao seu snmpd.conf:

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

(Como alternativa, você pode colocar o comando em um script wrapper e chamar o wrapper de dentro de snmpd.conf .)

Cada exec de chamada em snmpd.conf é indexada a partir de 1. Então, se você tiver apenas uma única instrução exec, será necessário pesquisar UCD-SNMP-MIB::extOutput.1 . Se esta for a quinta declaração exec, então faça o polling UCD-SNMP-MIB::extOutput.5 , etc.

O OID numérico para UCD-SNMP-MIB::extOutput é .1.3.6.1.4.1.2021.8.1.101 , por isso, se você estiver no índice 1, será .1.3.6.1.4.1.2021.8.1.101.1 e o índice 5 será .1.3.6.1.4.1.2021.8.1.101.5 , etc.

Em seguida, você cria um gráfico que pesquisa o SNMPD OID do tipo medidor, variando de 0 a 100. Isso deve lhe dar alguns gráficos bonitos.

    
por 20.06.2012 / 20:42
7

sar -u pode ser útil no seu caso. O sar é normalmente parte do pacote sysstat .

    
por 20.06.2012 / 21:43