Como monitorar o uso de memória do servidor linux usando nagios

4

Acabei de instalar nagios em uma máquina central e nrpe em 10 máquinas linux remotas e comecei a monitorá-las. Isso funciona muito bem. Eu posso obter carga de cpu, usuários atuais, processos, mysql, etc. Eu não consigo encontrar uma maneira de monitorar o uso de memória usando os plugins do núcleo. o que estou perdendo? Preciso de um plugin externo para fazer isso?

    
por Ricardo Marimon 30.09.2010 / 19:41

3 respostas

4

Eu sugiro que você monitore o uso de swap. confira o plug-in check_swap - ele vem por padrão [pelo menos no debian].

    
por 30.09.2010 / 20:35
2

sim, eu pensei por que eles não incluíram um plugin que irá verificar a memória, quando eles incluíram check_swap e check_disk ... ok, algo errado ... mas o plugin check_memory está disponível no exchange.nagios.org link

este funciona muito bem .. é um script perl, então nem uma instalação precisa ... Este é o link link da página do plugin acima. ..simples e boa documentação ...

$ /usr/local/nagios/libexec/check_mem.pl -w 10 -c 5 -f 

AVISO - 9,9% (406520 kB) livre! | TOTAL = 4113824KB ;;;; USADO = 3707304KB ;;;; LIVRE = 406520KB ;;;; CACHES = 816947KB ;;;;

Portanto, as etapas de configuração são simples:

  • Copie o script perl e escreva-o como "check_memory" (ou check_mem ou um nome adequado para você) no mesmo diretório de onde você tem check_disk, check_load etc
    • importante para alterar as permissões de execução para aquela check_memory similar a outras check_plugins (ou seja, a permissão de execução deve ser dada aos nagios do utilizador. no nosso ambiente dev eu dei 755, por favor, verifique se você precisa de 754 ou 755)
    • atualize o arquivo de configuração nrpe.cfg do cliente remoto com o comando [check_memory] = / usr / lib64 / nagios / plugins / check_memory -u -w 8% -c 90%
por 14.10.2012 / 10:44
0

Trabalhando com o Nagios Server e o cliente NRPE para reiniciar automaticamente os serviços em caso de falha 13 de janeiro de 2015

Executando comandos remotos usando Nagios e NRPE

1. Instalando o NRPE no host remoto:

rpm -Uvh link yum –enablerepo = epel -y instala nrpe nagios-plugins yum –enablerepo = epel -y lista nagios-plugins * vim /etc/nagios/nrpe.cfg

serviço nrpe start chkconfig nrpe on

2. Para executar comandos no cliente nagios remoto, siga os passos abaixo:

  1. Abra o arquivo de configuração do NRPE e faça as alterações abaixo mencionadas:

vim /etc/nagios/nrpe.cfg uma. Altere de 0 para 1, conforme mostrado abaixo: dont_blame_nrpe = 1 b. Configurando o comando no NRPE Abra o arquivo nrpe.cfg em um editor de texto e adicione a seguinte linha para definir o comando no NRPE. Adicione o comando abaixo mencionado abaixo da seção de comandos no arquivo nrpe.cfg: comando [runcmd] = serviço sudo $ ARG1 $ restart

  1. Concedendo permissão NRPE para reiniciar serviços Execute o seguinte comando como root para conceder permissão ao NRPE para reiniciar os serviços. Faça alterações no arquivo sudoers:

vim / etc / sudoers nagios ALL = NOPASSWD: / sbin / service nrpe ALL = NOPASSWD: / sbin / service

Testando o comando runcmd do servidor nagios:

Testando os Comandos do Nagios Server Passando para a linha de comando do Nagios, o script de reinício do serviço estará usando o Check_Nrpe para enviar o comando para o Host do Serviço. Navegue até a linha de comando do Nagios e digite os seguintes comandos:

/ usr / local / nagios / libexec / check_nrpe -H 192.168.5.180 -p 5666 -c runcmd -a httpd

Execução de comandos remotos usando Nagios NRPE & Manipulador de eventos Configurando o cliente nagios / máquina remota 1. Modifique o nrpe.cfg conforme mostrado abaixo: Alterar dont_blame_nrpe = 0 para don't_blame_nrpe = 1 2. Adicione o comando custom abaixo no nrpe.cfg, conforme mostrado abaixo: Comando [event-ntp] = /usr/lib64/nagios/plugins/event-ntp $ ARG1 $ $ ARG2 $ $ ARG3 $ 3. Crie um manipulador de eventos, conforme mostrado abaixo: vim / usr / lib64 / nagios / plugins / event-ntp

#!/bin/bash

case “$1″ in
OK)
;;
WARNING)
    echo -e “Running NTP Query” “\n”
    ntpq -p | mailx -s “HOSTNAME – NTP Query” [email protected]
;;
UNKNOWN)
;;
CRITICAL)
    case “$2″ in
    SOFT)
        case “$3″ in
        3)
            echo -e “Running NTP Query & Restarting NTP Service” “\n”
            ntpq -p | mailx -s “HOSTNAME – NTP Query – Restarted NTPD” \
              [email protected] &&
              /usr/bin/sudo /sbin/service ntpd restart
        ;;
        esac
    ;;
    HARD)
        echo -e “Running NTP Query & Restarting NTP Service” “\n”
        ntpq -p | mailx -s “HOSTNAME – NTP Query – Restarted NTPD” \
            [email protected] &&
        /usr/bin/sudo /sbin/service ntpd restart
    ;;
    esac
;;
esac
exit 0
  1. Conceder permissão de execução e alterar proprietário e grupo: chmod + x / usr / lib64 / nagios / plugins / evento-ntp nagios chown: nagios / usr / lib64 / nagios / plugins / evento-ntp

  2. A maneira mais difícil e provavelmente não mais segura de fazer isso é modificar o arquivo do sudoer para permitir que o usuário nagios execute comandos do sistema

visudo adicione o seguinte: User_Alias NAGIOS = nagios, nagcmd Cmnd_Alias NAGIOSCOMMANDS = / sbin / service Padrões: NAGIOS! Requiretty NAGIOS ALL = (todos) NOPASSWD: NAGIOSCOMMANDS

  1. Quando tudo estiver concluído, reinicie o serviço nrpe e a configuração do cliente é feita.

Configurando o manipulador de eventos no servidor Nagios A primeira coisa que você precisa fazer é criar um comando event-ntp no arquivo commands.cfg:

  1. Vim /usr/local/nagios/etc/objects/commands.cfg

define comando { comando_name evento-ntp command_line / usr / local / nagios / libexec / check_nrpe -H $ HOSTNAME $ -c event-ntp -a $ SERVICESTATE $ $ SERVICESTATETYPE $ $ SERVICEATTEMPT $ }

  1. Isso será chamado pelo objeto manipulador de eventos em seu arquivo de configuração. Agora, modifique sua descrição de serviço onde quer que você configure suas definições de serviço / host. No meu caso eu tenho um arquivo de configuração separado chamado linux.cfg.

define serviço { usar serviço local host_name neeraj-test service_description Time Sync Check event_handler event-ntp check_command check_nrpe! check_ntp }

  1. Agora reinicie o nagios (reinicialização do nagio de serviço) e teste a configuração do lado do servidor: / usr / local / nagios / libexec / check_nrpe -H REMOTEHOSTNAME -c evento-ntp -a DICA CRÍTICA

Se tudo correr bem, você deverá receber um e-mail do seu cliente com uma saída de ntpq -p e um serviço ntpd será reiniciado. Se você tiver algum problema, não receber e-mail ou não executar o dito script, defina o nível de depuração = 1 em nrpe.cfg, reinicie o nrpe, execute o teste event-ntp acima e verifique seus logs. Como você pode ver, não é muito difícil executar scripts de manipulador de eventos e economiza o tempo do administrador quando o nagios pode fazer o trabalho de legenda em alertas críticos de sistema / host.

    
por 16.01.2015 / 10:08