A grande maioria dos equipamentos de rede exporta suas métricas a partir do protocolo SNMP. Logo, é comum que equipamentos de rede sejam monitorados através deste protocolo. O Network Weather Plugin é muito utilizado pelos profissionais da área de Telecom, pois ele é capaz de gerar gráficos, mapas e relatórios relacionados ao ambiente de rede das empresas.
Aprenderemos neste material como instalar o Cacti 1.2 no Ubuntu 20 LTS, bem como o Network Weather Plugin.
Recentemente um amigo me solicitou ajuda para investigar um problema em um dos plugins do Cacti. No passado usei muito esta solução, e confesso que fiquei curioso para ver o atual estágio de desenvolvimento do Cacti. Então resolvi criar esse artigo rápido, para ajudar a quem precisa, e satisfazer a minha curiosidade. 🙂
sudo apt-get install -y apache2 rrdtool mariadb-server snmp snmpd cacti
Acione a opção padrão YES
Após isso será solicitada uma senha para o banco de dados do Cacti. Entre uma senha segura e tome nota da mesma, pois você precisará dela mais tarde.
O arquivo de configuração da parte web foi gerado como um include do Apache.
sudo apt-get install -y open-vm-tools mc htop sysstat dstat
Agora reinicie o servidor com o comando “sudo reboot”, e tente acessar via browser o IP da VM, como por exemplo:
http://169.254.0.1/cacti/
Recomendo que seja atribuído um FQDN a esta VM, para que os acessos não precisem ser feitos via IP.
Exemplo: cacti.meudominio.com.br
Também é interessante configurar 2 recursos opcionais no Apache:
[1] Habilitar TLS 1.2+ no Apache.
Meu arquivo de configuração do Virtual Host SSL ficou assim:
[2] Configurar um redirect de http://FQDN para https://FQDN
O login é “admin”, e a senha de acesso será a mesma que você definiu no momento de configuração do banco de dados.
Pronto. Cacti instalado e pronto para uso. Foi fácil, não?
Um plugin muito popupar entre os profissionais de telecom é o Weathermap.
De acordo com o manual, o processo de instalação é bem simples. Mas existe um problema: Enquanto eu redigia este post, a versão disponível no GIT do desenvolvedor era 0.98a, que não é compatível com o Cacti 1.2.
Porém, um bom samaritano fez um fork do plugin e realizou os ajustes necessários.
Vou mostrar a seguir como instalá-lo.
Antes de continuar, recomendo que dê uma olhada no arquivo:
/usr/share/cacti/site/plugins/README.Plugins
Ele tem recomendações sobre como manter organizada sua estrutura de plugins.
Em meu ambiente, eu segui os passos descritos no mesmo, e executei um comando a mais:
sudo ln -s /usr/local/share/cacti/plugins /usr/share/cacti/
sudo mkdir /usr/local/share/cacti/plugins
sudo chown www-data:users /usr/local/share/cacti/plugins
sudo chmod 775 /usr/local/share/cacti/plugins
cd /usr/local/share/cacti/plugins
sudo wget https://www.urban-software.com/wp-content/uploads/Cacti1x/weathermap_098a_cacti1.x_updated.zip
sudo unzip weathermap_098a_cacti1.x_updated.zip
sudo chown -R www-data:users /usr/local/share/cacti/plugins/weathermap
sudo chmod 777 /usr/local/share/cacti/plugins/weathermap/{output,configs}
Uma vez armazenados os arquivos do plugin, agora basta ir na interface do Cacti e ativar o mesmo.
Vá em Configuration > Plugins e clique em “Go”.
O plugin aparecerá na lista, mas constará como não instalado. Basta ativar o mesmo no ícone da engrenagem que aparece na coluna “Actions”.
Para saber mais detalhes sobre o processo de instalação do plugin, consultar a documentação aqui.
Antes de fazer o teste, precisamos de um device com o serviço SNMP ativo. Para este exemplo, iremos utilizar o próprio servidor do Cacti.
Para ativar o SNMP no servidor do Cacti, precisaremos seguir os passos abaixo. Observe que existe um arquivo de configuração para o serviço SNMP.
Instalar o SNMP no Linux
sudo apt-get install snmpd
Configurar o SNMP
sudo cat /etc/snmp/snmpd.conf
Ativar o SNMP
sudo systemctl enable snmpd
sudo systemctl restart snmpd
Testar o SNMP
snmpwalk -v2c -c public 127.0.0.1
Com o SNMP funcionando, basta adicionar o device no Cacti. Um device monitorado gera gráficos, como os apresentados a seguir.
Criando Mapas
Agora basta criar um mapa e associar os hosts ao mesmo.
Arquivo PHP.INI
Isso não é necessário, mas por custome eu fiz 2 ajustes no meu arquivo php.ini
short_open_tag = On
display_errors = On
Para este tipo de instalação do Cacti, onde todos os componentes rodam em uma mesma máquina virtual, você não precisará desta senha, pois os acessos serão feitos via local socket.
Para um ambiente de produção, recomendo que o Apache e o MariaDB sejam ajustados de forma a suportar um volume maior de carga, pois a configuração padrão destes serviços pode não ser suficiente para atender a demandas mais exigentes.
Também pode ser interessante substituir os certificados auto-assinados por Let’s Encrypt.
Faziam muitos anos que eu não usava o Cacti, e pelo que eu lembre, não mudou muito.
Apesar de ser uma solução opensource de fácil uso e implementação, existem outras soluções livres que são mais completas e com mais funcionalidades, como por exemplo o Zabbix e o Netbox.
Talvez seja o momento de considerar migrar o seu Cacti para algo mais moderno.
Por favor apóie este conteúdo clicando em um banner de nossos anunciantes. ❤️