Instalando zabbix 1.6.2 en Debian etch
Llevo unos días informándome de algún sistema que permita la monitorización de servidores con la misma finalidad que siempre: aprender
.
Buscando por la red encontré distintas aplicaciones de código libre entre las cuales se encuentra zabbix. Mi principal objetivo es el de disponer de un sistema de monitorización que me avise por mail cuando se produce la caída de cualquier servicio del servidor (ssh, ftp, apache, bind, etc). Zabbix permite eso y mucho más.
A continuación os explico como instalar la última versión en linux debian:
Instalamos todos los requerimientos de zabbix:
aptitude -y install build-essential libmysqlclient-dev libssl-dev libsnmp-dev apache2 libapache2-mod-php5 php5-gd php5-mysql mysql-server
Añadimos el grupo y usuario zabbix ya que es necesario para la aplicación:
groupadd zabbix useradd -c 'Zabbix' -d /home/zabbix -g zabbix -s /bin/bash zabbix mkdir /home/zabbix chown zabbix:zabbix /home/zabbix
Creamos la base de datos para zabbix:
mysql -p -u root create database zabbix; grant all on zabbix.* to 'zabbix'@'localhost' identified by 'PASSWORD'; quit;
Nota: debes substituir PASSWORD por la contraseña que le quieras asignar.
Descargamos y descomprimimos las fuentes
cd /home/zabbix wget http://ovh.dl.sourceforge.net/sourceforge/zabbix/zabbix-1.6.2.tar.gz tar zxvf zabbix-1.6.2.tar.gz cd zabbix-1.6.2
Compilamos el código fuente y instalamos zabbix_server y zabbix_agentd.
./configure --prefix=/usr --with-mysql --with-net-snmp --enable-server --enable-agent --with-libcurl make make install
Añadimos los puertos a /etc/services y creamos algunos ficheros de configuración:
echo " zabbix_agent 10050/tcp # Zabbix ports zabbix_trap 10051/tcp" >> /etc/services mkdir -p /etc/zabbix chown -R zabbix:zabbix /etc/zabbix cp misc/conf/zabbix_* /etc/zabbix
Modificamos los datos de acceso a la base de datos:
nano /etc/zabbix/zabbix_server.conf
Modificamos lo siguiente:
DBHost=localhost o tu db host DBName=zabbix DBUser=zabbix DBPassword=ZABBIX_PASSWORD
Nota: ZABBIX_PASSWORD corresponde con la contraseña que configuamos cuando dimos permisos con GRANT.
Copiamos los iniciadores de los servicios y hacemos una pequeña modificación:
cp /home/zabbix/zabbix-1.6.2/misc/init.d/debian/* /etc/init.d/ nano /etc/init.d/zabbix-agent
Buscamos la linea
DAEMON=/home/zabbix/bin/${NAME}
y la substituimos por
DAEMON=/usr/sbin/${NAME}
Ahora con el otro fichero:
nano /etc/init.d/zabbix-server
Buscamos la linea
DAEMON=/home/zabbix/bin/${NAME}
y la substituimos por
DAEMON=/usr/sbin/${NAME}
Subimos las tablas a la base de datos:
mysql -u root -p zabbix < /home/zabbix/zabbix-1.6.2/create/schema/mysql.sql mysql -u root -p zabbix < /home/zabbix/zabbix-1.6.2/create/data/data.sql mysql -u root -p zabbix < /home/zabbix/zabbix-1.6.2/create/data/images_mysql.sql
Modificamos la configuración de nuestro php:
nano /etc/php5/apache2/php.ini
Modificamos lo siguiente:
max_execution_time = 300 date.timezone = Europe/Madrid
Reiniciamos apache e iniciamos los servicios de zabbix:
/etc/init.d/apache2 restart /etc/init.d/zabbix-server start /etc/init.d/zabbix-agent start
Ya podemos acceder a zabbix desde http://tu_ip/zabbix/ y seguimos las instrucciones.
