O
Nagios Core é o sistema de monitoramento gratuito e Open Source, que permite o monitoramento de aplicações e servidores, viabilizando a identificação e a solução de problemas de infraestrutura de TI, antes que eles afetem os processos críticos de negócios.
Nagios Core permite que você monitore toda a sua infraestrutura de TI, garantindo que os sistemas, aplicativos online, serviços web e processos de negócios, estejam funcionando corretamente. No caso de uma falha, ele consegue alertar os responsáveis técnicos do problema, permitindo que eles iniciem o processo de correção, antes que as interrupções afetam os processos de negócios, usuários finais ou clientes.
Este sistema oferece muitos benefícios aos administradores de sistemas, incluindo:
- Acompanhamento Exaustivo: monitoramento de todos os componentes da infraestrutura de TI, incluindo aplicativos online, serviços web, sistemas operacionais, protocolos de rede, métricas de sistemas, além de infraestrutura de rede.
- Visibilidade: fornece uma visão central de toda a rede de operações da sua TI, junto com os processos de negócio.
- Sensibilização: alertas são enviados para sua equipe de TI via e-mail e/ou SMS. Possui capacidades de escalonamento de notificação, com diversos usuários, assegurando o processo de alertar e alcançar a equipe responsável pelo sistema.
- Corretores de Problemas: manipuladores de eventos nos servidores que permitem que sua equipe reinicie automaticamente aplicativos falhos, serviços, servidores e dispositivos quando os problemas são detectados, de forma remota.
- Tendências e Capacity Planning: permite que sua empresa planeje as melhorias na sua infraestrutura, antes que os sistemas desatualizados sejam pegos de surpresa.
- Relatórios: possibilidade de verificar se os SLAs estão sendo atendidos de forma correta, proporcionando registros, históricos de quedas, notificações e resposta aos alertas para análise posterior.
- Arquitetura Extensível: oferecendo fácil integração com softwares disponíveis in-house, além de aplicativos de terceiros.
Passo 1: Instalar os pré-requisitos do Nagios
Antes de instalar o
Nagios Core através do código fonte no Ubuntu ou no Debian, é necessário instalar a pilha LAMP, sem o banco de dados MySQL, utilizando o seguinte comando:
# apt install apache2 libapache2-mod-php php
O próximo passo é instalar as seguintes dependências para a compilação e instalação do [B]Nagios Core[/B].
# apt install wget unzip zip autoconf gcc libc6 make apache2-utils libgd-dev
Passo 2: Instalar o Nagios 4 Core no Ubuntu ou Debian
Devemos iniciar criando um usuário e um grupo nagios no sistema operacional, além de adicionar a conta nagios ao grupo www-data do Apache.
# useradd nagios
# usermod -a -G nagios www-data
Com todas as dependências instaladas, podemos realizar o download a última versão estável do
Nagios Core utilizando o comando wget.
# wget https://assets.nagios.com/downloads/nagioscore/releases/nagios-4.4.6.tar.gz
Após o download, devemos extrair o arquivo descarregado e entrar no diretório criado. Depois execute o comando ls para verificar o conteúdo do diretório.
# tar xzf nagios-4.4.6.tar.gz
# cd nagios-4.4.6/
# ls
O resultado deve ser parecido com esse:
total 600
-rwxrwxr-x 1 root root 346 Apr 28 20:48 aclocal.m4
drwxrwxr-x 2 root root 4096 Apr 28 20:48 autoconf-macros
drwxrwxr-x 2 root root 4096 Apr 28 20:48 base
drwxrwxr-x 2 root root 4096 Apr 28 20:48 cgi
-rw-rw-r-- 1 root root 32590 Apr 28 20:48 Changelog
drwxrwxr-x 2 root root 4096 Apr 28 20:48 common
-rwxrwxr-x 1 root root 43765 Apr 28 20:48 config.guess
-rwxrwxr-x 1 root root 36345 Apr 28 20:48 config.sub
-rwxrwxr-x 1 root root 246354 Apr 28 20:48 configure
-rw-rw-r-- 1 root root 29812 Apr 28 20:48 configure.ac
drwxrwxr-x 5 root root 4096 Apr 28 20:48 contrib
-rw-rw-r-- 1 root root 6291 Apr 28 20:48 CONTRIBUTING.md
drwxrwxr-x 2 root root 4096 Apr 28 20:48 docs
-rw-rw-r-- 1 root root 886 Apr 28 20:48 doxy.conf
-rwxrwxr-x 1 root root 7025 Apr 28 20:48 functions
drwxrwxr-x 11 root root 4096 Apr 28 20:48 html
drwxrwxr-x 2 root root 4096 Apr 28 20:48 include
-rwxrwxr-x 1 root root 77 Apr 28 20:48 indent-all.sh
-rwxrwxr-x 1 root root 161 Apr 28 20:48 indent.sh
-rw-rw-r-- 1 root root 422 Apr 28 20:48 INSTALLING
...
Iniciaremos o processo de compilação utilizando o comando abaixo.
# ./configure --with-httpd-conf=/etc/apache2/sites-enabled
Exemplo de retorno deste comando:
*** Configuration summary for nagios 4.4.6 2020-04-28 ***:
General Options:
-------------------------
Nagios executable: nagios
Nagios user/group: nagios,nagios
Command user/group: nagios,nagios
Event Broker: yes
Install ${prefix}: /usr/local/nagios
Install ${includedir}: /usr/local/nagios/include/nagios
Lock file: /run/nagios.lock
Check result directory: /usr/local/nagios/var/spool/checkresults
Init directory: /lib/systemd/system
Apache conf.d directory: /etc/apache2/sites-enabled
Mail program: /bin/mail
Host OS: linux-gnu
IOBroker Method: epoll
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.
O próximo passo é compilar o
Nagios e depois instalar.
# make all
# make install
Agora, instalar o daemon do [B]Nagios[/B], além dos arquivos dos comandos externos de configuração, através dos seguintes comandos:
# make install-init
# make install-commandmode
# systemctl enable nagios.service
Execute o próximo comando para instalar os arquivos de configurações necessários para que o [B]Nagios[/B] seja executado corretamente.
# make install-config
Deve-se também instalar os arquivos de configuração para o Apache, que depois podem ser encontrados no diretório /etc/apache2/sites-enabled/.
# make install-webconf
A próxima ação é criar a conta [B]nagiosadmin[/B] junto com sua senha, sendo ela necessária pelo servidor web Apache.
# htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin
Para habilitar que o Apache execute os scripts CGI do
Nagios, além de acessar o seu painel via HTTP, devemos habilitar o módulo CGI no Apache, e depois reiniciá-lo. Na sequencia iniciar o daemon do
Nagios e habilitar que ele inicie automaticamente com o sistema.
# a2enmod cgi
# systemctl restart apache2
# systemctl start nagios
# systemctl enable nagios
Finalmente, entre no painel do
Nagios na web, utilizando o usuário
nagiosadmin criado anteriormente, utilizando o seguinte endereço:
http://IP-Address/nagios
Passo 3: Instalar os Plugins do Nagios no Ubuntu ou Debian
Para poder compilar e instalar os plugins do
Nagios no Ubuntu ou no Debian, será necessário instalar primeiro as dependências.
# apt install libmcrypt-dev make libssl-dev bc gawk dc build-essential snmp libnet-snmp-perl gettext libldap2-dev smbclient fping libmysqlclient-dev libdbi-dev
Agora realize o download dos plugins utilizando o comando wget. Depois descomprima o arquivo baixo e entre no diretório criado.
# wget https://github.com/nagios-plugins/nagios-plugins/archive/release-2.3.3.tar.gz
# tar xfz release-2.3.3.tar.gz
# cd nagios-plugins-release-2.3.3/
Devemos então compilar e realizar a instalação dos plugins, utilizando os seguintes comandos:
# ./tools/setup
# ./configure
# make
# make install
Os arquivos compilados e instalados dos plugins do
Nagios podem ser encontrados no diretório /usr/local/nagios/libexec/.
# ls /usr/local/nagios/libexec/
Finalmente, reinicie o serviço do [B]Nagios[/B] para que os plugins instalados entrem em execução.
# systemctl restart nagios.service
Entre no painel administrativo do [B]Nagios[/B] na web, e navegue em [B] Current Status -> Services[/B]. Veja que todos os serviços do host estão sendo verificados pelos plugins.
Podemos também liberar o acesso ao [B]Nagios[/B] na web utilizando a interface através do protocolo HTTPS. Devemos executar os seguintes comandos para habilitar o SSL no Apache, e depois reiniciar seu serviço.
# a2enmod ssl
# a2ensite default-ssl.conf
# systemctl restart apache2
Depois de habilitar o SSL na configuração do Apache, abra o arquivo
/etc/apache2/sites-enabled/000-default.conf para edição e adicione o seguinte bloco depois da configuração DocumentRoot.
RewriteEngine on
RewriteCond %{HTTPS} off
RewriteRule ^(.*) https://%{HTTP_HOST}/$1
Será necessário reiniciar novamente o serviço do Apache, para que as configurações do SSL entrem em funcionamento.
# systemctl restart apache2.service
Agora, atualize a página do painel do
Nagios no seu navegador web, para que ela seja redirecionada para o conteúdo através do protocolo HTTPS. Aceite a mensagem referente à fonte do certificado, já que ele foi gerado no seu servidor, e depois, autentique novamente utilizando o usuário
nagiosadmin.
Parabéns! Você instalou e configurou o sistema de monitoramento [B]Nagios Core[/B], utilizando o código fonte no seu servidor Ubuntu ou Debian!
Conclusões
Espero que as informações apresentadas nesse material te ajudem a monitorar seu servidor web de forma mais eficiente, utilizando o
Nagios Core!
Você usa esse tipo de monitoramento em seu servidor web? Ou utiliza outra configuração/ferramenta?