Partimos de una versión mínima de centos 7 instalada en una mv.
Lo primero es configurar la ip, y añadir al /etc/resolv.conf los nombres de los servidores dns
Actualizamos la instalación con
yum update
y instalamos los requisitos de zabbix
yum install httpd
y los ponemos para que se ejecute en el inicio
systemctl start httpd
systemctl enable httpd
si ya tenemos un cortafuegos deshabilitamos el firewall del equipo
systemctl disable firewalld
o bien habilitamos el puerto 80.
Si no usamos ip6 lo deshabilitamos
sysctl -w net.ipv6.conf.all.disable_ipv6=1 && sysctl -w net.ipv6.conf.default.disable_ipv6=1
yum install mariadb mariadb-server
systemctl start mariadb systemctl enable mariadb.service
Ejecutamos lo siguiente para asegurar la instalación de la BDD
/usr/bin/mysql_secure_installation
yum install php
rpm -ivh http://repo.zabbix.com/zabbix/2.4/rhel/7/x86_64/zabbix-release-2.4-1.el7.noarch.rpm
yum install zabbix-server-mysql zabbix-web-mysql
https://www.zabbix.com/documentation/2.4/manual/appendix/install/db_scripts
mysql -uroot -p<password> mysql> create database zabbix character set utf8 collate utf8_bin; mysql> grant all privileges on zabbix.* to zabbix@localhost identified by '<password>'; mysql> quit;
Creamos el esquema inicial de la BDD
cd /usr/share/doc/zabbix-server-mysql-2.4.0/create
mysql -uroot -p<password> zabbix < schema.sql
mysql -uroot -p<password> zabbix < images.sql
mysql -uroot -p<password> zabbix < data.sql
Editamos el archivo de configuración /etc/zabbix_server.conf y cambiamos lo siguiente:
vi /etc/zabbix/zabbix_server.conf
DBHost=localhost DBName=zabbix DBUser=zabbix DBPassword=zabbix
Arrancamos el proceso zabbix-server
systemctl start zabbix-server
Cambiamos los siguientes parámentros en /etc/php.ini.
sed -i 's/^max_execution_time.*/max_execution_time=600/' /etc/php.ini sed -i 's/^max_input_time.*/max_input_time=600/' /etc/php.ini sed -i 's/^memory_limit.*/memory_limit=256M/' /etc/php.ini sed -i 's/^post_max_size.*/post_max_size=32M/' /etc/php.ini sed -i 's/^upload_max_filesize.*/upload_max_filesize=16M/' /etc/php.ini sed -i "s/^\;date.timezone.*/date.timezone=\'Atlantic\/Canary\'/" /etc/php.ini
Modificamos el fichero de configuración /etc/httpd/conf.d/zabbix.conf para restringir el a acceso
# # Zabbix monitoring system php web frontend # Alias /zabbix /usr/share/zabbix <Directory "/usr/share/zabbix"> Options FollowSymLinks AllowOverride None Require all granted </Directory> <Directory "/usr/share/zabbix/conf"> Require all denied </Directory> <Directory "/usr/share/zabbix/include"> Require all denied </Directory>
Reiniciamos el servidor apache
service httpd restart
También debemos de instalar el soporte para SNMP
yum install net-snmp
y modificamos el fichero /etc/snmp/snmpd.conf para cambiar el nombre de la comunidad de public a el que tengamos en nuestros equipos
Lo configuramos para arrancar desde el iniciio
systemctl start snmpd systemctl enable snmpd
Una vez realizados los pasos anteriores debemos acceder a la url de zabbix y comenzar la instalación. Desde nuestro navegador ponemos la siguiente dirección:
http://x.x.x.x/zabbix/setup.php
Una vez terminado de configurar debemos de editar el fichero d econfiguración del Zabbix para optimizar ciertos valores
sed -i 's/^# CacheSize=.*/CacheSize=32M/' /etc/zabbix/zabbix_server.conf sed -i 's/^# StartPingers=.*/StartPingers=5/' /etc/zabbix/zabbix_server.conf
ya podemos acceder mediante nuestro navegador favorito a la URL del servidor
Si queremos desactivarlo:
vi /etc/selinux/config
Donde pone SELINUX=enforcing cambiar por SELINUX=disabled.
Luego:
setenforce 0
Si no queremos deshabilitarlo podemos permitir que el servidor zabbix acceda por el puerto 10051
semanage port -a -t http_port_t -p tcp 10051