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.