Existem muitas ferramentas de monitoramento de código-fonte aberto (e proprietárias) projetadas para resolver esse problema. Eles dependem de ferramentas no Linux e, por sua vez, dependem de chamadas do sistema dentro do kernel.
Algumas ferramentas concentram-se na coleta e monitoramento de dados, enquanto outras se concentram em alertas, que você escolhe dependendo de sua necessidade principal.
O exemplo mais conhecido de uma ferramenta de alerta e monitoramento seria Nagios . Outras ferramentas, mais focadas na coleta de dados e gráficos, com alguns alertas embutidos, seriam Cactos e Munin . Se você tem grandes clusters com muitas máquinas, então Ganglia pode ser sua melhor aposta.
Essas ferramentas costumam ser chamadas de Sistemas de Monitoramento de Rede e a Wikipedia possui uma extensa lista .
Eu recomendo que você não reinvente a roda e procure / use uma ferramenta como essa.
Dependendo de qual distribuição Linux você estiver usando, uma ou mais dessas ferramentas já estarão disponíveis no repositório de distribuição, com configurações padrão que suportam o ambiente que você possui.