Muitas vezes termos um servidor linux, onde é necessário a monitoração dos serviços e desempenho da máquina para fins de auditória e melhora do sistema. Nesse artigo vou ensinar a como instalar o Zabbix sincronizar com o Zabbix Server.
Vou mostrar em 3 sistemas Linux, o Ubuntu/Debian e CentOS, sendo que todos os comandos que mostrar o Ubuntu também funciona no Debian, porém os do CentOS embora a semântica seja a semelhante, só muda uma palavra ou o comando todo, então atente-se na hora da instalação.
Descobrindo a versão do seu Linux
cat /etc/os-release
Adicionando o repositório
Adicione conforme sua versão do Linux:
rpm -Uvh http://repo.zabbix.com/zabbix/3.0/rhel/7/x86_64/zabbix-release-3.0-1.el7.noarch.rpm
rpm -Uvh http://repo.zabbix.com/zabbix/3.0/rhel/6/x86_64/zabbix-release-3.0-1.el6.noarch.rpm
rpm -Uvh http://repo.zabbix.com/zabbix/3.0/rhel/5/x86_64/zabbix-release-3.0-1.el5.noarch.rpm
wget http://repo.zabbix.com/zabbix/3.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_3.0-2+bionic_all.deb
sudo dpkg -i zabbix-release_3.0-2+bionic_all.deb
sudo apt update
wget http://repo.zabbix.com/zabbix/3.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_3.0-1+xenial_all.deb
sudo dpkg -i zabbix-release_3.0-1+xenial_all.deb
sudo apt update
wget http://repo.zabbix.com/zabbix/3.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_3.0-1+trusty_all.deb
sudo dpkg -i zabbix-release_3.0-1+trusty_all.deb
sudo apt-get update
wget http://repo.zabbix.com/zabbix/2.2/ubuntu/pool/main/z/zabbix-release/zabbix-release_2.2-1+precise_all.deb
sudo dpkg -i zabbix-release_2.2-1+precise_all.deb
sudo apt-get update
wget http://repo.zabbix.com/zabbix/3.0/debian/pool/main/z/zabbix-release/zabbix-release_3.0-1+jessie_all.deb
sudo dpkg -i zabbix-release_3.0-1+jessie_all.deb
sudo apt-get update
http://repo.zabbix.com/zabbix/3.0/debian/pool/main/z/zabbix-release/zabbix-release_3.0-1+wheezy_all.deb
sudo dpkg -i zabbix-release_3.0-1+wheezy_all.deb
sudo apt-get update
Code language: JavaScript (javascript)
Instalando o Agente Zabbix
sudo apt-get install zabbix-agent
Code language: JavaScript (javascript)
Você verá algumas telas como essa, basta concordar com a tecla y para prosseguir.
Configuração
Antes de prosseguirmos, é importante a correta configuração abaixo, então atente-se a todos os campos sobretudo os que envolvem IP,nome da máquina, e diretórios.
Durante a instalação, ele vai criar o arquivo abaixo já com algumas configurações, mas recomendo deletar, ele e criar só com as opções que vai usar de fato, então seria algo como:
rm /etc/zabbix/zabbix_agentd.conf
vi /etc/zabbix/zabbix_agentd.conf
Uma vez criado o arquivo acima, adicione o conteúdo, conforme abaixo e edite conforme necessidade.
PidFile=/var/run/zabbix/zabbix_agentd.pid
LogFile=/var/log/zabbix/zabbix_agentd.log
LogFileSize=0
DebugLevel=3
Server=IP DO SERVIDOR ZABBIX,localhost,IP DO LINUX MONITORADO
StartAgents=5
ServerActive=IP DO SERVIDOR ZABBIX,localhost,IP DO LINUX MONITORADO
Hostname=HOSTNAME DA MAQUINA MONITORADA
Timeout=30
Include=/etc/zabbix/zabbix_agentd.d/*.conf
Code language: PHP (php)
Uma vez editado, salve o arquivo, do seu editor preferido no Linux.
Iniciando o serviço e colocando para iniciar com o Sistema
Os comandos, para iniciar ou restart podem variar dependendo da sua versão e nome do Linux, então vou deixar aqui alguns exemplos para iniciar/reiniciar o serviço do zabbix-agente
service zabbix-agent start
systemctl start zabbix-agent
/bin/systemctl start zabbix-agent.service
/bin/systemctl restart zabbix-agent.service
service zabbix-agent restart
systemctl restart zabbix-agent
Agora que o serviço foi iniciado, e necessário configurarmos para iniciar junto com o Sistema Operacional, nos casos que for necessário reiniciar a máquina.
chkconfig zabbix-agent on
systemctl enable zabbix-agent
sudo update-rc.d zabbix-agent defaults
sudo update-rc.d zabbix-agent enable
Code language: CSS (css)
Configurações adicionais
Em alguns casos é necessário desabilitar o firewall, ou adicionar exceção para o zabbix-agent não ser barrado, até mesmo o Selinux da máquina pode atrapalhar, nesses casos, já fica registrado abaixo os comandos para fazer de acordo com a sua necessidade.
iptables -A INPUT -p tcp -s IP_DO_ZABBIX_SERVER --dport 10050 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A INPUT -p tcp -s IP_DO_ZABBIX_SERVER --dport 10051 -m state --state NEW,ESTABLISHED -j ACCEPT
systemctl stop firewalld.service
systemctl disable firewalld.service
Code language: CSS (css)
Desabilitando o selinux, temos um artigo simples e prático, abaixo
Em alguns casos é necessário algum desses pacotes abaixo
yum -y install build-essential snmp vim libssh2-1-dev libssh2-1 libopenipmi-dev libsnmp-dev wget libcurl4-gnutls-dev fping curl libcurl3-gnutls libcurl3-gnutls-dev libiksemel-dev libiksemel-utils libiksemel3
apt-get install build-essential snmp vim libssh2-1-dev libssh2-1 libopenipmi-dev libsnmp-dev wget libcurl4-gnutls-dev fping curl libcurl3-gnutls libcurl3-gnutls-dev libiksemel-dev libiksemel-utils libiksemel3
Code language: JavaScript (javascript)
Checando se o serviço Zabbix Agente está rodando corretamente
systemctl status zabbix-agent
Configurando no Zabbix Server
Agora logue no Zabbix Server na versão Web da sua aplicação, e navegue até Configuração > Hosts > Criar Host
Coloque o IP do servidor Linux que quer monitorar em “Interfaces do agente”, coloque os grupos de acordo com a sua necessidade, e coloque o nome do host, caso for monitorar com o zabbix ativo é necessário o nome do host ser exatamente o mesmo do nome da máquina monitorada.
Na aba templates, adicione algum template que já tenha importado anteriormente no sistema.
Após isso, clique em “Atualizar”, e vamos checar se está tudo funcionado, para isso navegue agora até Monitoramento > Dados Recentes, filtre pelo host recém adicionado, e já deve chegar os primeiros dados em alguns minutos.
Bom, o processo é bem simples, e caso tenham dúvida, basta deixar um comentário que tento ajudar da melhor maneira possível.