Acesso direto ao conteúdo
Logotipo Dicas-L, por Ricardo Burile

Busca

Visite também: Segurança Linux ·  UnderLinux ·  VivaOLinux ·  LinuxSecurity ·  NoticiasLinux ·  BR-Linux ·  SoftwareLivre.org ·  [mais]   
 

Você está aqui: Home  → Arquivo Dicas-L

 

Aprenda inglês de uma vez por todas

Assine a Lista Dicas-L

Receba diariamente por email as dicas
de informática publicadas neste site
Para se descadastrar, clique aqui.

Configurando o Nagios no Debian Lenny parte 2 (Atualizado)

Colaboração: Guilherme Rezende dos Santos

Data de Publicação: 16 de dezembro de 2010

O título do tutorial se refere a configuração apenas no debian, pois quando escrevi esse tutorial na primeira vez, utilizei apenas esta distribuição. Nessa nova versão apresento como instalá-lo no debian, no ubuntu e no CentOS.

Na primeira parte deste tutorial foi abordado a instalação do Nagios e seus plugins. Agora apresentarei as configurações do Nagios para realizar o monitoramento de servidores GNU/Linux.

Relembrando, a estrutura de diretórios do Nagios é a seguinte:

bin Binários do Nagios
etc Diretório principal do Nagios ele contém os arquivos de configuração
libexec Os plugins do Nagios
sbin CGIs
share Arquivos HTML (para interface web e documentação online)
var Utilizado para arquivos de log

Após a realização da configuração abordada na primeira parte, já temos o Nagios funcionando e monitorando a máquina onde está instalado. Os serviços que estão sendo monitorados no momentos estão disponíveis no arquivo localhost.cfg dentro do diretório /usr/local/nagios/etc/objects/. Nesse arquivo você encontrará basicamente a definição da maquina local, do grupo a qual ela pertence e os serviços que estão sendo monitorados.

  define host{
        use linux-server # Template contendo as configurações que serão
                         #  herdadas pela maquina que está sendo definida
        host_name        localhost       # nome da máquina a ser monitorada
        alias            nagios-machine  # descrição
        address          127.0.0.1
        }
  
  define hostgroup{
        hostgroup_name          linux-servers   #Nome do grupo
        alias                   Linux Servers   #Descrição do grupo
        members                 localhost       #Membros pertencentes ao grupo linux-servers
        }
  
  define service{
        use                     local-service
        host_name               localhost       # Nome da maquina que terá o serviço monitorado
        service_description     Current Users   # Descrição do serviço
        check_command           check_local_users!20!50 # Comando executado para monitoramento
        }

É possível definir todos os servidores GNU/Linux dentro deste arquivo, porém eu recomendo criar um arquivo chamado linux.cfg dentro de diretório objects e definí-lo no arquivo de configuração do nagios. Para isso, insira a linha abaixo dentro do arquivo nagios.cfg

  cfg_file=/usr/local/nagios/etc/objects/linux.cfg

Iremos então definir uma nova máquina a ser monitorada. Primeiramente, realizaremos a configuração na máquina cliente para depois então defini-la no servidor Nagios.

O Nagios utiliza o plugin nrpe para monotiramento das máquinas GNU/Linux, logo, precisaremos instalá-lo.

Instalação do nrpe

Baixe o pacote nrpe-2.12.tar.gz. Esse pacote utiliza ssl, logo você precisará instalar o pacote correspondente, no debian o pacote é o libssl-dev e no CentOS o openssl-devel.i386. O nrpe funciona tanto sobre xinetd, inetd ou como deamon. Utilizei para esse artigo o xinetd, já que o NRPE já possue a o arquivo de configuração para ele.

Extraia o arquivo do nrpe

  tar -xvzf nrpe-2.12.tar.gz

Acesse o diretório nrpe

  cd nrpe-2.12

Instale o pacote ssl correspondente a cada distribuição.

Debian ou ubuntu

  apt-get install libssl-dev

CentOS

  yum install openssl-devel.i386

Instale o xinetd

Debian ou ubuntu

  apt-get install xinetd

CentOS

  yum install xinetd.i386

Compilando nrpe

OBS: O nrpe utiliza o usuário "nagios" para sua execução, portanto o usuário deve ser criado antes de sua instalação Dentro do diretório do nrpe, execute os seguintes comandos

  ./configure
  make
  make install-daemon
  make install-daemon-config
  make install-xinetd

O nrpe deve ser instalado tanto no servidor nagios, quanto nos clientes. Porém no servidor não há a necessidade de configurar o serviço para rodar sobre o xinetd um vez que o servidor só precisa do script de verificação "check_nrpe" que é instalado dentro do diretório /usr/local/nagios/libexec

Configuração do cliente

Realizada a instalação do nrpe, é preciso configurá-lo para que ele rode sobre o xinetd. Edite o arquivo /etc/xinetd/nrpe e altere a linha Only from 127.0.0.1 para o ip do servidor do Nagios. Em seguida, iremos definir uma entrada para o serviço do NRPE também nesse arquivo. No NRPE utiliza a porta 5666 e o protocolo TCP, então a entrada para o NRPE no /etc/services é a seguinte:

  nrpe                5666/tcp        #Nagios NRPE agent

Salve o arquivo, e reinicie o xinetd

  /etc/init.d/xinetd restart

A partir deste momento o nrpe estará funcionando na máquina local. Para checar seu funcionamento você pode usar o plugin nrpe_check do Nagios ou utilizar o Nmap. Para checá-lo utilizando o nrpe_check utilize o seguinte comando:

  /usr/local/nagios/libexec/check_nrpe -H 127.0.0.1                   #localmente  ou
  /usr/local/nagios/libexec/check_nrpe -H < IP-Da-Maquina-com-NRPE>   #No servidor Nagios

Ambas as saídas dos comandos serão a versão do cliente NRPE. Algo como

  NRPE v2.12

A partir de agora as configurações no cliente estão prontas, iremos então realizar as configurações necessárias para receber as informações enviadas dos clientes nrpe para o servidor Nagios.

Configuração do servidor do Nagios

As máquinas GNU/Linux a serem monitoradas serão configuradas dentro do arquivo /usr/local/nagios/etc/objects/linux.cfg

Primeiramente, definiremos o computador a ser monitorado. Para exemplificação o nome do computador que será monitorado é cliente1 e o endereço de IP 192.168.1.10. A definição ficará da seguinte maneira:

  define host{
        use linux-server                                # Template contendo as configurações que serão herdadas pela máquina
                                                        #  que está sendo definida
        host_name               cliente1                # nome da máquina a ser monitorada
        alias                   Servidor-de-arquivos    # descrição
        address                 192.168.1.10
        }

O hostgroup das máquinas GNU/Linux "linux-servers" foi definido dentro do arquivo /usr/local/nagios/etc/objects/localhost.cfg, logo para uma das máquinas GNU/Linux definidas devem ser adicionadas a esse grupo.

A partir de agora temos nosso novo cliente definido, entretanto nenhum serviço de monitoramento foi definido. É possível monitorar serviços como **HTTP, SSH, carga de processador, uso de memória **RAM, Swap e disco rígido e ainda criar seus próprios plugins para monitorar outros serviços em específico. Mostrarei o exemplo de uma configuração para o serviço de monitoramento de conexões ssh. Exemplos de outros serviços podem ser encontrados nos arquivos de exemplo que acompanham o Nagios.

  define service{
        use                      local-service
        host_name                cliente1               # Cliente no qual o serviço está rodando
        service_description      SSH
        check_command            check_ssh
        notifications_enabled        0
        }

Realizada a configuração, reinicie o Nagios

  /etc/init.d/nagios restart

Agora temos o Nagios monitorando nosso cliente Linux para o serviço de SSH. Iremos então, definir um cliente Windows. Para monitorar os clientes Windows, utilizaremos o plugin NSClient++.

No site você encontrará os pacotes para versões 32 e 64 bits. Exitem dois tipos de pacotes, um .msi e outro .zip. Ambos os arquivos possuem os mesmos arquivos a única diferença é que o arquivo .msi já instala e realiza as configurações básicas necessárias para o monitoramento. Independente de qual dos dois arquivos você escolha, a instalação é muito tranquila. No diretório de instalação do NSCLient++ existe um arquivo nsc.ini dentro desse arquivo contém as diretivas de configuração que farão com que o NSCLient++ envie informações para o servidor do Nagios. Basicamente nesse arquivo você irá descomentar as linhas iniciadas por ponto e vírgula ; para que as configurações tenham efeito. Algumas dessas linhas são: FileLogger.dll, CheckSystem.dll, CheckDisk.dll, NSClientListener.dll, NRPEListener.dll, CheckEventLog.dll, CheckHelpers.dll, allowed_hosts = < IP-DO-SERVIDOR-NAGIOS>, port 12489.

Em seguida, salve as configurações e reinicie o serviço do NSClient++. Agora definiremos esse cliente no servidor do Nagios.

As maquinas Windows serão definidas dentro do arquivo /usr/local/nagios/etc/objetc/windows.cfg. No arquivo /usr/local/nagios/etc/nagios.cfg descomente a linha abaixo:

  cfg_file=/usr/local/nagios/etc/objects/windows.cfg

Assim como para os clientes GNU/Linux, nos clientes Windows a configuração é praticamente a mesma:

  define host{
        use                     windows-server
        host_name               cliente2
        alias                   Servidor de nome de dominio
        address                 192.168.1.11
        }
  
  define service{
        use                     generic-service
        host_name               cliente2
        service_description     Uptime
        check_command           check_nt!UPTIME
        }

Todos os clientes definidos dentro desse arquivo, cada um deve ser adicionado ao grupo windows-servers. Terminada a configuração, reinicie o nagios

  /etc/init.d/nagios restart

Pronto! Agora temos o Nagios monitorando tanto clientes Linux, quanto Windows. Além das configurações que apresentei nas duas partes desse tutorial, também é possível configurar o Nagios para que envie informações por e-mail a você caso algo aconteça. Isso ficará para a próxima dica, ok!? Espero ter ajudado. :D

Veja a relação completa dos artigos de Guilherme Rezende dos Santos

Formato PDF
Newsfeed RSS
Formato para impressão
PDF RSS Imprimir

Referências Adicionais

Referências adicionais sobre os assuntos abordados neste site podem ser encontradas em nossa Bibliografia.

Avalie esta dica

  • Currently 2.93/5
  • 1
  • 2
  • 3
  • 4
  • 5

Avaliação: 2.9 /5 (1045 votos)

Opinião dos Leitores

Seja o primeiro a comentar este artigo
*Nome:
Email:
Me notifique sobre novos comentários nessa página
Oculte meu email
*Texto:
 
  Para publicar seu comentário, digite o código contido na imagem acima
 


Powered by Scriptsmill Comments Script
Treinamentos, Consultorias e Soluçoes em TI. Baseados em softwares livres e padrões abertos para ambientes de missão crítica

Submarino.com.br

Objective-C Fundamental