O Zabbix é uma solução open source de monitoramento para servidores, serviços, aplicações e dispositivos de rede. Oferece excelentes relatórios e visualização de dados de recursos com base nos dados armazenados. O Zabbix usa um mecanismo de notificação flexível que permite aos usuários configurar e-mail com alertas para qualquer evento, o que permite uma reação rápida para os problemas dos servidores.
Corretamente configurado, o Zabbix pode desempenhar um papel importante no controle da infraestrutura de TI. Isto é igualmente verdade para as pequenas organizações com alguns servidores e para grandes empresas com um grande número de servidores.
O Zabbix é escrito e distribuído sob a GNU General Public License versão 2. Isso significa que seu código-fonte é distribuído gratuitamente e está disponível para o público em geral.
COMPONENTES DO ZABBIX
Zabbix Server – Este é o centro do Software Zabbix. O servidor pode verificar remotamente os serviços de rede (como servidores web e servidores de e-mail), utilizando controles simples. Ele é o componente central para o qual os agentes reportam a disponibilidade, integridade de informações e estatísticas dos servidores. É nele que toda a configuração, estatísticas e dados operacionais são armazenados, sendo o componente que participará ativamente alertando os administradores quando surgirem problemas em qualquer um dos sistemas monitorados;
Zabbix Proxy – É uma parte opcional da implantação do Zabbix. O Proxy coleta dados de desempenho e disponibilidade, em nome do Zabbix Server. Todos os dados coletados localmente são transferidos para o Zabbix Server Proxy. O Zabbix Proxy é uma solução ideal para um controle centralizado de locais remotos, filiais, não havendo a necessidade dos administradores de redes locais;
Zabbix Agent – A fim de acompanhar ativamente recursos e aplicações locais (como discos rígidos, memória, processador, etc.) em sistemas em rede, os sistemas devem executar o Agente Zabbix. O agente vai reunir informações operacionais do sistema em que está em execução, e informar esses dados ao Zabbix para posterior processamento. Em caso de falhas (como um disco rígido estar lotado, ou um processo parar), o servidor Zabbix pode ativamente alertar os administradores da máquina que relatou o problema;
Interface Web – Permite fácil acesso aos dados de monitoração e configuração do Zabbix em qualquer lugar e em qualquer plataforma. A interface é uma parte do servidor Zabbix, e é geralmente (mas não necessariamente) executada na mesma máquina física como uma execução do servidor Zabbix.ga
Antes de instalarmos o Zabbix precisamos nos certificar que temos os seguintes pré-requisitos instalados:
- Apache: 1.3.12 or later.
- PHP: 5.4.0 or later (PHP 7 not supported).
- MySQL: 5.0.3 or later.
- OpenIPMI: Required for IPMI support.
- libssh2: Required for SSH support. Version 1.0 or higher.
- fping: Required for ICMP ping items.
- libcurl: Required for web monitoring.
- libiksemel: Required for Jabber support.
- net-snmp: Required for SNMP support.
INSTALANDO OS SERVIÇOS
[root@centos7 ~]# yum install -y httpd.x86_64 httpd-devel.x86_64
[root@centos7 ~]# yum install php php-cli php-common php-devel php-pear php-gd php-mbstring php-mysql php-xml -y
Para o banco de dados vou utilizar o MariaDB:
[root@centos7 ~]# rpm -qa | grep MariaDB
MariaDB-common-10.1.22-1.el7.centos.x86_64
MariaDB-shared-10.1.22-1.el7.centos.x86_64
MariaDB-client-10.1.22-1.el7.centos.x86_64
MariaDB-devel-10.1.22-1.el7.centos.x86_64
MariaDB-server-10.1.22-1.el7.centos.x86_64
Habilitamos o Apache:
[root@centos7 ~]# systemctl enable httpd.service && systemctl start httpd.service
[root@centos7 ~]# wget http://repo.zabbix.com/zabbix/3.2/rhel/7/x86_64/zabbix-server-mysql-3.2.0-1.el7.x86_64.rpm
[root@centos7 ~]# wget http://repo.zabbix.com/zabbix/3.2/rhel/7/x86_64/zabbix-web-3.2.0-1.el7.noarch.rpm
[root@centos7 ~]# wget http://repo.zabbix.com/zabbix/3.2/rhel/7/x86_64/zabbix-agent-3.2.0-1.el7.x86_64.rpm
[root@centos7 ~]# wget http://repo.zabbix.com/zabbix/3.2/rhel/7/x86_64/zabbix-java-gateway-3.2.0-1.el7.x86_64.rpm
Instalamos as dependências:
[root@centos7 ~]# yum install -y fping.x86_64 \
OpenIPMI.x86_64
iksemel.x86_64
php-bcmath.x86_64
php-ldap.x86_64
libiodbc.x86_64
libiodbc-devel.x86_64
unixODBC.x86_64
unixODBC-devel.x86_64
Instalando o Zabbix:
[root@centos7 zabbix]# rpm -ivh zabbix-*
Preparando... ################################# [100%]
Updating / installing...
1:zabbix-web-mysql-3.2.0-1.el7 ################################# [ 20%]
2:zabbix-web-3.2.0-1.el7 ################################# [ 40%]
3:zabbix-server-mysql-3.2.0-1.el7 ################################# [ 60%]
4:zabbix-java-gateway-3.2.0-1.el7 ################################# [ 80%]
5:zabbix-agent-3.2.0-1.el7 ################################# [100%]
O Zabbix cria seu próprio arquivo de configuração do Apache:
[root@centos7 zabbix]# cd /etc/httpd/conf.d/
[root@centos7 conf.d]# ll
total 24
-rw-r--r-- 1 root root 2926 Nov 14 16:04 autoindex.conf
-rw-r--r-- 1 root root 691 Nov 5 22:32 php.conf
-rw-r--r-- 1 root root 366 Nov 14 16:05 README
-rw-r--r-- 1 root root 1252 Nov 14 14:53 userdir.conf
-rw-r--r-- 1 root root 824 Nov 14 14:53 welcome.conf
-rw-r--r-- 1 root root 831 Set 13 2016 zabbix.conf
Adicionamos o timezone:
php_value date.timezone America/Sao_Paulo
Restartamos o Apache:
[root@centos7 conf.d]# systemctl restart httpd
No banco de dados:
MariaDB [(none)] > create database zabbix character set utf8;
Query OK, 1 row affected (0.12 sec)
MariaDB [(none)]> grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix123';
Query OK, 0 rows affected (0.03 sec)
MariaDB [(none)]> flush privileges;
Query OK, 0 rows affected (0.01 sec)
MariaDB [(none)]> quit;
Bye
Também podemos importar o banco do Zabbix:
[root@centos7 ~]# cd /usr/share/doc/zabbix-server-mysql-3.2.0
[root@centos7 zabbix-server-mysql-3.2.0]# gzip -d create.sql.gz
[root@centos7 zabbix-server-mysql-3.2.0]# mysql -u root -p zabbix
> create.sql
Vamos habilitar o Zabbix:
[root@centos7 ~]# systemctl enable zabbix-server.service
[root@centos7 ~]# systemctl enable zabbix-agent.service
[root@centos7 ~]# systemctl enable zabbix-java-gateway.service
[root@centos7 ~]# systemctl start zabbix-server.service
E no /etc/zabbix/zabbix_server.conf
ListenPort=10051
SourceIP=192.168.56.2 #IP do Host
LogFile=/var/log/zabbix/zabbix_server.log
LogFileSize=0
PidFile=/var/run/zabbix/zabbix_server.pid
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix123
DBPort=3306
E terminamos a configuração utilizando a URL no Browser:
http://centos7.cissaspike.net/zabbix/
Checamos os pré-requisitos e se tudo estiver ok “Next Step”, seguimos as próximas telas entramos com os dados usados durante a instalação e clicamos em “Next Step” and we are done.
Referência:
https://tecadmin.net/install-zabbix-network-monitoring-on-centos-rhel-and-fedora/https://www.zabbix.com/documentation/3.0/pt/manual/introduction/about
https://www.digitalocean.com/community/tutorials/how-to-install-and-configure-zabbix-to-securely-monitor-remote-servers-on-centos-7
https://pt.wikipedia.org/wiki/Zabbixhttps://www.zabbix.com/documentation/3.0/pt/manual/installation/install#from_distribution_packages