Nagios com Check-MK
O Nagios é uma excelente ferramenta de monitoração, desde hosts e serviços até temperatura (dependendo do plugin e do hardware que você usa :-)), já o vimos aqui no artigo Monitorando Servidores com Nagios, mas como alguns leitores pediram vamos colocar o Nagios com o Check_MK, ele é um plugin que substitui o NRPE (plugin remoto de checagem) e tem até uma interface mais agradável do que o Nagios, além de consumir menos recursos no servidor.
Vamos instalar a versão mais atual do Nagios e do Check_MK no Ubuntu server 12.04
Primeiro vamos instalar as dependências para baixar e compilar o Nagios, como root faça:
# apt-get install build-essential wget libgd2-xpm libgd2-xpm-dev libssl-dev
Obs: O libssl-dev é opcional, serve para que o Nagios possa utilizar o plugin de ssl.
Vamos instalar os programas utilizados para interface, visualização e funcionamento do Nagios:
# apt-get install apache2 php5-gd libapache2-mod-php5
Crie, sem diretório HOME nem shell, o usuário nagios:
# useradd -M -d /opt/nagios -s /bin/false nagios
Adicione o usuário www-data e usuários nagios ao grupo nagios:
# usermod -a -G nagios www-data
# usermod -a -G nagios nagios
Vamos para o diretório /usr/src e baixemos o Nagios e seus plugins:
OBS: Se você utiliza proxy lembre-se de configurá-lo antes de tentar baixar.
# cd /usr/src
# wget http://prdownloads.sourceforge.net/sourceforge/nagios/nagios-3.4.3.tar.gz
# wget http://prdownloads.sourceforge.net/sourceforge/nagiosplug/nagios-plugins-1.4.16.tar.gz
Vamos descompactar os arquivos baixados:
# tar xvf nagios-3.4.3.tar.gz
# tar xvf nagios-plugins-1.4.16.tar.gz
Agora vamos compilar o Nagios (melhor parte :-)):
# cd nagios
1 | # ./configure --prefix /opt/nagios --sysconfdir=/etc/nagios --with-nagios-user=nagios --with-nagios-group=nagios --with-command-user=nagios --with-command-group=nagios |
Assim iremos compilar o Nagios com diretório de instalação /opt, de configuração /etc com usuários e grupo nagios para execução do servidor e dos comandos.
Depois de executarmos o configure teremos esse resultado:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | *** Configuration summary for nagios 3.4.3 11-30-2012 ***: General Options: ------------------------- Nagios executable: nagios Nagios user/group: nagios,nagios Command user/group: nagios,nagios Embedded Perl: no Event Broker: yes Install ${prefix}: /opt/nagios Lock file: ${prefix}/var/nagios.lock Check result directory: ${prefix}/var/spool/checkresults Init directory: /etc/init.d Apache conf.d directory: /etc/apache2/conf.d Mail program: /bin/mail Host OS: linux-gnu Web Interface Options: ------------------------ HTML URL: http://localhost/nagios/ CGI URL: http://localhost/nagios/cgi-bin/ Traceroute (used by WAP): Review the options above for accuracy. If they look okay, type 'make all' to compile the main program and CGIs. |
Agora vamos: compilar, instalar, instalar os arquivos de inicialização, os arquivos de configuração e os arquivos de comandos e configuração do Apache para o Nagios.
# make all
# make install
# make install-init
# make install-config
# make install-commandmode
# make install-webconf
Agora vamos compilar e instalar os plugins:
Instale o perl-snmp para os plugins do Nagios:
# perl -MCPAN -e ‘install Net::SNMP’
# cd /usr/src
# cd nagios-plugins-1.4.16/
1 | # ./configure --prefix /opt/nagios --with-nagios-user=nagios --with-nagios-group=nagios |
Agora é só compilar e instalar:
# make
# make install
Vamos criar o arquivo com o usuário e senha para autenticação na interface Web:
# htpasswd -c /etc/nagios/htpasswd.users nagiosadmin
Coloque a senha de acesso e pronto.
Agora vamos configurar a inicialização do nagios, verificar se existem erros nos arquivos e executar o serviço:
# update-rc.d -f nagios defaults
# /opt/nagios/bin/nagios -v /etc/nagios/nagios.cfg
# /etc/init.d/nagios start
O Nagios está compilado e pronto para acessar, só o básico e nada configurado :-), mas vamos deixar isso pro check_mk.
Agora reincie o servidor Apache:
# /etc/init.d/apache2 restart
Para acessar a interface padrão utilize o seguinte endereço no browser:
http://ip-do-servidor/nagios
Utilize a senha do nagiosadmin que foi criada anteriormente.
Para o check_mk funcionar é preciso o módulo de Python para Apache, instale com o seguinte comando:
# apt-get install libapache2-mod-python
Vamos instalar o check_mk, primeiro vamos baixá-lo dentro do /usr/src:
# wget http://mathias-kettner.de/download/check_mk-1.2.0p3.tar.gz
# tar xvf check_mk-1.2.0p3.tar.gz
# cd check_mk-1.2.0p3
# ./setup.sh
Agora verifique os locais apontados para instalação, lembrando que o nosso Nagios está instalado no /opt/nagios e os plugins estão em /opt/nagios/libexec, incluindo o plugin check_icmp, por isso troque o caminho do plugin para /opt/nagios/libexec/check_icmp quando for perguntado.
Lembre-se que os caminhos apresentados pelo check_mk são obtidos por consultas do Nagios, exceto o do plugin check_mk.
Logo que ele compilar basta reiniciar o Apache e o Nagios para começar a usar:
# service apache2 restart
# service nagios restart
Agora instale os pacotes dos agentes nos clientes e não esqueça de liberar no firewall deles o acesso a porta 6556.
Baixe o cliente para sua distribuição Linux e para o Microsoft Windows aqui: http://mathias-kettner.com/check_mk_download.html
Lembrando que se você usa Ubuntu ou Debian deve ter o sudo e xinetd instalados.
Para instalar no Windows faça o seguinte:
1 – Baixe o agente no diretório C:
2 – Descompacte o agente
3 – Execute com :
cd C:\check_mk-1.1.10p3\agents\windows
check_mk_agent.exe install
net start check_mk_agent
No edite o /etc/hosts com o IP e o nome(nome que você quer escolher) para cada cliente, acrescentando no final:
# vi /etc/hosts
.
.
.
#####
# Lista de Servidores para o Check_MK #
192.168.1.252 Debian-Server
192.168.1.251 Windows2008-AD
192.168.1.250 Windows2008-DFS
#######################################
Criada as máquinas no /etc/hosts e os agentes já instalados, vamos adicioná-las ao check_mk:
# vi /etc/check_mk/main.mk
all_hosts = [ “Debian-Server”, “Windows2008-AD”, “Windows2008-DFS” ]
Agora basta forçar a checagem manual dos hosts e a atualização do Nagios:
# check_mk -I Debian-Server
# check_mk -I Windows2008-AD
# check_mk -I Windows2008-DFS
# check_mk -O
Pronto pode acessar a interface do Nagios com as informações do Check_MK ou na interface do próprio Check_MK:
http://ip-do-servidor/nagios
ou
http://ip-do-servidor/check_mk
A tela do check_mk é a seguinte:
Agora é só monitorar os hosts, lembrando que na interface do check_mk é possível configurar alertas e criar novos usuários para acessar a monitoração.
Não esqueça de comentar e curtir nossa página no Facebook.