Monitorando o uso da memória
Estou mais de acordo com uma das postagens anteriores que mencionaram o Cacti como uma ótima maneira de monitorar o uso da memória. No entanto, como parece que os cactos não são mais populares no mainstream, existe um aplicativo gráfico alternativo chamado Graphite.
O Graphite é relativamente fácil de instalar em um servidor ubuntu e para instalá-lo, você pode conferir este link para os procedimentos de instalação fáceis de seguir.
Após a instalação do grafite, agora você pode enviar métricas de memória para ele, no intervalo que desejar; a cada 5 segundos, a cada minuto, a cada hora ... etc.
Para representar graficamente as métricas de memória, como já sugerido nas postagens anteriores, você pode escrever seu próprio script usando as ferramentas do sistema para reunir as informações de memória necessárias. Ou você pode usar um plug-in snmp pré-escrito que fará todo o trabalho para você.
Se você deseja escrever seu próprio script de memória, é aconselhável garantir que você leve em consideração a memória em cache e em buffer ao calcular a memória usada; caso contrário, você acabará coletando dados falsos.
Se você deseja utilizar um plug-in snmp que já faz todos os cálculos necessários para você, aqui está um link para um que funciona muito bem: checkMemoryviaSNMP .
Prós do SNMP:
Eu tenho o snmp instalado em todos os nós remotos que monitoro. Isso me permite monitorar todos os meus sistemas de um (s) servidor (es) central (is) , sem precisar copiar ou colocar um plug-in nos nós remotos.
Contras do SNMP:
Você precisaria garantir que o agente snmp esteja instalado em cada um dos nós remotos nos quais deseja monitorar a memória. No entanto, esta instalação será um contrato único. Se você estiver usando ferramentas de automação, como chef ou fantoche ou ferramentas similares em seu ambiente, isso não será um problema.
Configuração do agente SNMP no (s) nó (s) remoto (s):
Após a instalação do agente snmp, simplesmente vi o arquivo /etc/snmpd/snmpd.conf e adicione esta linha a ele:
rocommunity (specify-a-community-string-aka-password-here)
Em seguida, reinicie o agente snmpd, com:
/etc/init.d/snmpd restart
Em seguida, no servidor central, no qual você monitora todos os outros servidores, você pode executar o seguinte comando:
$ time ./checkMemoryviaSNMP -v2 public gearman001.phs.blah.com 30 90 graphite,10.10.10.10,2003,typical
WARNING: Used = [ 3.26154 GB ], Installed = [ 5.71509 GB ], PCT.Used = [ 57.069% ], Available.Memory = [ 2.00291 GB ]. Buffer = [ 137.594 MB ], Cached = [ 1.3849 GB ]. Thresholds: [ W=(30%) / C=(90%) ]. System Information = [ Linux gearman001.phs.blah.com 2.6.32-504.30.3.el6.x86_64 #1 SMP Thu Jul 9 15:20:47 EDT 2015 x86_64 ].
real 0m0.23s
user 0m0.03s
sys 0m0.02s
2896
e depois1528
nos buffers, isso não significa que você está usando2896 + 1528
?