Zabbix: Instalando o proxy
1. Introdução
Zabbix é uma solução de código aberto para monitoramento de dispositivos e aplicações, sendo capaz de monitorar parâmetros utilizando agentes em diversas plataformas de sistemas operacionais, além de protocolos como SNMP, IPMI, JMX, entre outros.
É uma plataforma bastante difundida e não está limitada a ativos de TIC, apenas. Pode ser utilizado em diversas áreas, pois o seu método de coleta é flexível e permitindo personalizá-lo de acordo com necessidades de monitoramento do ambiente.
2. Ferramentas utilizadas
Os softwares utilizados na produção deste tutorial é apresentado a seguir:
- CentOS 7
- Zabbix 3.4.1
- SQLite3
O ambiente utilizado é apresentado a seguir:
- Uma MV, com o sistema operacional CentOS 7, destinada ao servidor proxy do Zabbix
A instalação do CentOS 7 utilizada para validar esse tutorial foi a Minimal-1611. A ISO dessa versão pode ser baixada através deste link.
3. Configurando o serviço
Todos os comandos executados nesse tutorial foram executados com o usuário root.
Passos preparatórios
3.1. Após a instalação do CentOS, execute o comando abaixo para atualizar os pacotes presentes no sistema:
yum update
3.2. Habilite o modo permissivo do SELinux, com os comandos abaixo:
sed s/SELINUX=enforcing/SELINUX=permissive/g -i /etc/selinux/config
setenforce 0
3.3. Adicione o repositório do Zabbix e MariaDB:
URL='https://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-2.el7.noarch.rpm'
rpm -ivh "$URL" # Adiciona o repositório do zabbix
3.4. Instalar o agente do Zabbix
yum install zabbix-agent zabbix-get # Instala o agente do zabbix
systemctl enable zabbix-agent # Configura o systemd para iniciar o agente do zabbix após o boot
Instalando o banco de dados
3.5. Após a instalação do CentOS, execute o comando abaixo para atualizar os pacotes presentes no sistema:
yum install sqlite -y
Instalando o proxy do Zabbix
3.6. Após a instalação do CentOS, execute o comando abaixo para atualizar os pacotes presentes no sistema:
yum install zabbix-proxy-sqlite zabbix-get zabbix-agent -y
3.7. Vamos criar os diretórios a serem utilizados pelo proxy:
mkdir /etc/zabbix/{default,zabbix_proxy.conf.d}
chown zabbix:root -P /etc/zabbix/
touch /var/log/zabbix/snmptrap.log
chown zabbix:zabbix /var/log/zabbix/snmptrap.log
3.8. configurar a base de dados do Zabbix e importar os schemas:
mkdir -p /app/zabbix
cd /usr/share/doc/zabbix-proxy-sqlite3-3*
zcat schema.sql.gz | sqlite3 /app/zabbix/proxy.db
3.9. alterar os parâmetros do banco de dados no arquivo de configuração /etc/zabbix/zabbix_server.conf
:
cd /etc/zabbix
cp *.conf default/
sed s/'# ProxyMode=0'/'ProxyMode=0'/g -i zabbix_proxy.conf
sed s/'LogFileSize=0'/'LogFileSize=128'/g -i zabbix_proxy.conf
sed s/'# StartPollers=5'/'StartPollers=35'/g -i zabbix_proxy.conf
sed s/'Server=127.0.0.1'/'Server=SERVIDOR_ZABBIX'/g -i zabbix_proxy.conf
sed s/'DBName=zabbix_proxy'/'DBName=\/app\/zabbix\/proxy.db'/g -i zabbix_proxy.conf
sed s/'# StartPollersUnreachable=1'/'StartPollersUnreachable=70'/g -i zabbix_proxy.conf
sed s/'Hostname=Zabbix proxy'/Hostname=$(hostname)/g -i zabbix_proxy.conf
sed s/'# StartIPMIPollers=0'/'StartIPMIPollers=5'/g -i zabbix_proxy.conf
sed s/'# ProxyLocalBuffer=0'/'ProxyLocalBuffer=360'/g -i zabbix_proxy.conf
sed s/'# ConfigFrequency=3600'/'ConfigFrequency=60'/g -i zabbix_proxy.conf
sed s/'# StartHTTPPollers=1'/'StartHTTPPollers=10'/g -i zabbix_proxy.conf
sed s/'# ProxyOfflineBuffer=1'/'ProxyOfflineBuffer=720'/g -i zabbix_proxy.conf
sed s/'# HeartbeatFrequency=60'/'HeartbeatFrequency=30'/g -i zabbix_proxy.conf
sed s/'# DataSenderFrequency=1'/'DataSenderFrequency=45'/g -i zabbix_proxy.conf
sed s/'# StartTrappers=5'/'StartTrappers=15'/g -i zabbix_proxy.conf
sed s/'# StartPingers=1'/'StartPingers=5'/g -i zabbix_proxy.conf
sed s/'# StartVMwareCollectors=0'/'StartVMwareCollectors=10'/g -i zabbix_proxy.conf
sed s/'# VMwareTimeout=10'/'VMwareTimeout=19'/g -i zabbix_proxy.conf
sed s/'# StartSNMPTrapper=0'/'StartSNMPTrapper=1'/g -i zabbix_proxy.conf
sed s/'# StartDBSyncers=4'/'StartDBSyncers=8'/g -i zabbix_proxy.conf
sed s/'# CacheSize=8M'/'CacheSize=32M'/g -i zabbix_proxy.conf
sed s/'# HistoryIndexCacheSize=4M'/'HistoryIndexCacheSize=16M'/g -i zabbix_proxy.conf
sed s/'# HistoryCacheSize=16M'/'HistoryCacheSize=64M'/g -i zabbix_proxy.conf
sed s/'\/var\/log\/snmptrap\/snmptrap.log'/'\/var\/log\/zabbix\/snmptrap.log'/g -i zabbix_proxy.conf
sed s/'Timeout=4'/'Timeout=19'/g -i zabbix_proxy.conf
sed s/'ExternalScripts=\/usr\/lib\/zabbix\/externalscripts'/'ExternalScripts=\/app\/zabbix\/externalscripts'/g -i zabbix_proxy.conf
sed s/'# Include=\/usr\/local\/etc\/zabbix_proxy.conf.d\/*.conf'/'\/etc\/zabbix_proxy.conf.d\/*.conf'/g -i zabbix_proxy.conf
Substitua “SERVIDOR_ZABBIX” pelo IP ou FQDN do servidor do zabbix configurado anteriormente.
3.10. Permita os serviços no Firewall
firewall-cmd --permanent --add-port=10051/tcp # configura o firewalld para permitir conexões ao proxy do zabbix
firewall-cmd --permanent --add-port=10050/tcp # configura o firewalld para permitir conexões ao agente do zabbix
firewall-cmd --reload
3.11. Configure o serviço do servidor e agente:
systemctl enable zabbix-proxy zabbix-agent # Configura o systemd para iniciar os serviços do zabbix após o boot
systemctl start zabbix-proxy zabbix-agent # Inicia os serviços imediatamente
Nenhum comentário