Friday, June 21, 2013

Zabbix installation on linux

Zabbix is the ultimate open source availability and performance monitoring solution. It is designed to monitor and track the status of various network services, servers, and other network hardware.

Here I will explain how to install zabbix server and client on linux ubuntu based system.

First download the latest zabbix 2.0.6 package from the link below, 
                                                                                                                     

wget http://citylan.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/2.0.6/zabbix-2.0.6.tar.gz

Before compiling and installing the package, we need to install the below mentioned dependencies.. For that issue the below command,

apt-get install build-essential mysql-server libmysqlclient15-dev php5 php5-gd php5-mysql snmp libsnmp-dev snmpd libcurl4-openssl-dev fping


Now create zabbix user and bring him  under admin group,
adduser zabbix
adduser zabbix admin


Now move the package to the home folder of zabbix user,
mv zabbix-2.0.6.tar.gz /home/zabbix/


Switch user as zabbix, extract and install the package..
su - zabbix
tar -zxvf zabbix-2.0.6.tar.gz
cd zabbix-2.0.6
./configure --enable-server --enable-agent --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl
make install


Edit the configuration files,

vim /usr/local/etc/zabbix_agentd.conf

specify server-ip

vim /usr/local/etc/zabbix_server.conf

specify database name, user and password

Create the zabbix database,
mysql -u root
mysql> create database zabbix character set utf8 collate utf8_bin;
mysql> grant all on zabbix.* to user@localhost identified by 'password';
mysql> quit; 

 
Now go to the database folder and load the schema, images and data.
cd /home/zabbix/zabbix-2.0.6/database/mysql/

mysql -u root  zabbix < schema.sql
mysql -u root  zabbix < images.sql
mysql -u root  zabbix < data.sql

Now start the zabbix server by issuing the below command,
zabbix_server


For zabbix agent, issue the below command,
zabbix_agentd


Now install apache webserver for hosting zabbix frontend,

apt-get install apache2
groupadd -g 48 apache
useradd -u 48 -g 48 apache -s /bin/false
vim /etc/apache2/envvars
    user apache
    group apache

apache2ctl stop
apache2ctl start

 
If error occurred ..
chown apache.apache /var/lock/apache2/ -R
apache2ctl start
netstat -ntlp

Now port 80 will be listening..

Now go to the frontend folder ..

cd /home/zabbix/zabbix-2.0.6/frontends/
cp -a php/ /var/www/zabbix
chown apache.apache /var/www/zabbix/ -R

 
Now install zabbix frontend,
Should meet your php configuration as defined below,

 vim /etc/php.ini
 memory_limit = 128M
 post_max_size = 16M
 upload_max_filesize = 2M
 max_execution_time = 300
 max_input_time = 300


From your browser http://<server-ip>/zabbix

Follow those simple steps and complete frontend installation.
Now you are ready with the zabbix frontend,

Username = Admin
password = zabbix

Now add users, hosts, monitoring rules and watch real time reports from frontend.

For configuring zabbix clients, follow the below procedures..

tar -zxvf zabbix-2.0.6.tar.gz
cd zabbix-2.0.6
./configure --enable-agent
make install


Now edit the configuration file,
vim /usr/local/etc/zabbix_agentd.conf

specify server-ip

Start zabbix agent,
zabbix_agentd

Related links..
zabbix-concepts
web-monitoring

Thanks for reading..
Cheers /-

2 comments:

  1. Thanks for this installation guide! which packages i need for the agent?
    Regards, Chris

    ReplyDelete
  2. For agent, take the zabbix-2.0.6.tar.gz and configure it with --enable-agent option only. This step is explained above as "configuring zabbix clients".

    ReplyDelete