Nagios - Add-ons / Plugins

Os plug-ins ajudam a monitorar bancos de dados, sistemas operacionais, aplicativos, equipamentos de rede, protocolos com o Nagios. Plugins são executáveis ​​ou scripts compilados (Perl ou não Perl) que estendem a funcionalidade do Nagios para monitorar servidores e hosts. O Nagios executará um plug-in para verificar o status de um serviço ou host. O Nagios pode ser compilado com suporte para um interpretador Perl integrado para executar plug-ins Perl. Sem ele, o Nagios executa plug-ins Perl e não-Perl bifurcando e executando os plug-ins como um comando externo.

Tipos de plug-ins Nagios

O Nagios possui os seguintes plug-ins disponíveis -

Official Nagios Plugins- Existem 50 plug-ins oficiais do Nagios. Os plug-ins oficiais do Nagios são desenvolvidos e mantidos pela equipe oficial de plug-ins do Nagios.

Community Plugins - Existem mais de 3.000 plug-ins do Nagios de terceiros que foram desenvolvidos por centenas de membros da comunidade do Nagios.

Custom Plugins- Você também pode escrever seus próprios plug-ins personalizados. Existem certas diretrizes que devem ser seguidas para escrever Plug-ins personalizados.

Diretrizes para escrever plugins personalizados do Nagios

Ao escrever plug-in personalizado no Nagios, você precisa seguir as diretrizes fornecidas abaixo -

  • Os plug-ins devem fornecer uma opção de linha de comando "-V" (verifique as alterações de configuração)
  • Imprima apenas uma linha de texto
  • Imprima o diagnóstico e apenas parte da mensagem de ajuda
  • Os plug-ins de rede usam DEFAULT_SOCKET_TIMEOUT para atingir o tempo limite
  • "-v", ou "--verbose“ está relacionado ao nível de verbosidade
  • "-t" ou "--timeout" (tempo limite do plugin);
  • "-w" ou "--warning" (limite de aviso);
  • "-c" ou "--critical" (limite crítico);
  • "-H" ou "--hostname" (nome do host a ser verificado)

Vários plug-ins do Nagios são executados e verificam ao mesmo tempo, para que todos funcionem perfeitamente juntos, o plug-in do Nagios segue um código de status. A tabela abaixo informa o status do código de saída e sua descrição -

Código de Saída Status Descrição
0 Está bem Trabalhando bem
1 ATENÇÃO Funcionando bem, mas precisa de atenção
2 CRÍTICO Não está funcionando corretamente
3 DESCONHECIDO Quando o plugin não consegue determinar o status do host / serviço

Os plug-ins do Nagios usam opções para sua configuração. A seguir estão alguns parâmetros importantes aceitos pelo plugin Nagios -

Sr. Não Opção e descrição
1

-h, --help

Isso fornece ajuda

2

-V, --version

Isso imprime a versão exata do plugin

3

-v, --verbose

Isso faz com que o plugin forneça informações mais detalhadas sobre o que está fazendo

4

-t, --timeout

Isso fornece o tempo limite (em segundos); após este tempo, o plugin irá relatar o status CRÍTICO

5

-w, --warning

Isso fornece os limites específicos do plugin para o status WARNING

6

-c, --critical

Isso fornece os limites específicos do plug-in para o status CRÍTICO

7

-H, --hostname

Isso fornece o nome do host, endereço IP ou soquete Unix para se comunicar

8

-4, --use-ipv4

Isso permite que você use IPv4 para conectividade de rede

9

-6, --use-ipv6

Isso permite que você use IPv6 para conectividade de rede

10

-p, --port

Isso é usado para se conectar à porta TCP ou UDP

11

-s, -- send

Isso fornece a string que será enviada ao servidor

12

-e, --expect

Isso fornece a string que deve ser enviada de volta do servidor

13

-q, --quit

Isso fornece a string a ser enviada ao servidor para fechar a conexão

O pacote de plug-ins do Nagios tem várias verificações disponíveis para hosts e serviços para monitorar a infraestrutura. Vamos experimentar os plug-ins do Nagios para realizar algumas verificações.

SMTP é um protocolo usado para enviar e-mails. Os plug-ins padrão do Nagios possuem comandos para realizar verificações de SMTP. A definição de comando para SMTP -

define command {
   command_name check_smtp
   command_line $USER2$/check_smtp -H $HOSTADDRESS$
}

Vamos usar o plugin Nagios para monitorar o MySQL. Nagios oferece 2 plug-ins para monitorar o MySQL. O primeiro plug-in verifica se a conexão mysql está funcionando ou não, e o segundo plug-in é usado para calcular o tempo gasto para executar uma consulta SQL.

As definições dos comandos para ambos são as seguintes -

define command {
   command_name check_mysql
   command_line $USER1$/check_mysql –H $HOSTADDRESS$ -u $ARG1$ -p $ARG2$ -d
   $ARG3$ -S –w 10 –c 30
}

define command {
   command_name check_mysql_query
   command_line $USER1$/check_mysql_query –H $HOSTADDRESS$ -u $ARG1$ -p $ARG2$ -d
   $ARG3$ -q $ARG4$ –w $ARG5$ -c $ARG6$
}

Note - Nome de usuário, senha e nome do banco de dados são necessários como argumentos em ambos os comandos.

O Nagios oferece um plugin para verificar o espaço em disco montado em todas as partições. A definição do comando é a seguinte

define command {
   command_name check_partition
   command_line $USER1$/check_disk –p $ARG1$ –w $ARG2$ -c $ARG3$
}

A maioria das verificações pode ser feita por meio de plug-ins padrão do Nagios. Mas existem aplicativos que requerem verificações especiais para monitorá-los, caso em que você pode usar plug-ins do Nagios de terceiros que fornecerão verificações mais sofisticadas no aplicativo. É importante saber sobre questões de segurança e licenciamento quando você estiver usando um plugin de terceiros do Nagios exchange ou baixando o plugin de outro site.