Debianhelp.co.uk


ZABBIX - monitoring your applications,network and servers

What is Zabbix ?

ZABBIX is a 247 monitoring solution without high cost.

ZABBIX is software that monitors numerous parameters of a network and the health and integrity of servers. ZABBIX uses a flexible notification mechanism that allows users to configure e-mail based alerts for virtually any event. This allows a fast reaction to server problems. ZABBIX offers excellent reporting and data visualisation features based on the stored data. This makes ZABBIX ideal for capacity planning.

ZABBIX supports both polling and trapping. All ZABBIX reports and statistics, as well as configuration parameters are accessed through a web-based front end. A web-based front end ensures that the status of your network and the health of your servers can be assessed from any location. Properly configured, ZABBIX can play an important role in monitoring IT infrastructure. This is equally true for small organisations with a few servers and for large companies with a multitude of servers.

Zabbix Features

http://www.zabbix.com/features.php

Zabbix Requirements

http://www.zabbix.com/requirements.php

Download Zabbix

http://www.zabbix.com/download.php

Zabbix Screenshots

http://www.zabbix.com/screenshots.php

Important Things to know Before start

Server, here comes all the info together and is processed in a database, note that the server can be monitored to so it runs an agent too.

Agent, Information is gathered and polled by the server.this need to be installed in all the machines you want to monitor.

Installing Zabbix Server in Debian

First you need to install apache web server and Mysql database server

For installing apache2 with php support click here

For mysql server installation you need to enter the following command

#apt-get install mysql-server snmp

Add the source below to your /etc/apt/sources.list.

# Zabbix
# http://mirror.opf.slu.cz/zabbix/

deb http://mirror.opf.slu.cz/zabbix unstable contrib

Next, update and install the packages

#apt-get update

#apt-get install zabbix-frontend-php zabbix-server zabbix-agent

Reading Package Lists... Done
Building Dependency Tree... Done
The following extra packages will be installed:
php-fpdf
Suggested packages:
ttf2pt1 zabbix-doc gnokii
The following NEW packages will be installed:
php-fpdf zabbix-agent zabbix-frontend-php zabbix-server
0 upgraded, 4 newly installed, 0 to remove and 5 not upgraded.
Need to get 844kB of archives.
After unpacking 4407kB of additional disk space will be used.
Do you want to continue? [Y/n]y

This will start the installation and you need to answer the questions asked for you can see these questions in the following screenshots

First it will ask you to enter your server ipaddress .

Configuring Zabbix Agent

Zabbix sucker server port Leave the default value and press ok



Configuring Zabbix-Frontend PHP

Select the sql server type as mysql and press ok



Enter the mysql server ipaddress and press ok



Enter the mysql User as root and press ok



Enter the mysql root password and press ok


You need to read the below message very carefully to create zabbix database at the end of installation and press ok


Now itwill give First Login to your zabbix frontend is not_ok this you can leave as it is because we need to create databse which we will do after end of this installation.


Enter Listening port for sender requests to server 10051 and press ok


Enter Email of zabbix admin this is your choice i am sending to root here


Select Watch zabbix server processess or not as yes and press ok


select check all zabbix tables before starting zabbix server process as yes and press ok


Now you should see the following error message

You must create database zabbix, user zabbix and give correct rights.You can see error connecting to db ahead. Please correct db rights.After you will be ready, please use dpkg-reconfigure zabbix-server
Please see /usr/share/doc/zabbix-server/README.Debian

Starting Zabbix server checktables ERROR 1049 (42000): Unknown database 'zabbix'
zabbix_server ERROR 1049 (42000): Unknown database 'zabbix' Err: You did not setup your mysql server correctly!
Please run zabbix_installdb manualy!
check_server

- This packages tries to do all of work but you must do little of work by your hands. Especially, database config, rights, users and creating database zabbix is ON YOU! But if you will read install instructions you
can setup it without big problems.
- Use zabbix_installdb script to fill your database with required data to run zabbix-server. Second way is to manualy create database zabbix, give rights to user zabbix and fill with sql statements found in
/usr/share/doc/zabbix-server/create/mysql/schema.sql.gz and /usr/share/doc/zabbix-server/create/data/data.sql.gz
- If there is some error, feel free to use dpkg-reconfigure zabbix-xxx packages

Create Zabbix Database

For creating database you need to run the following command

#/usr/bin/zabbix_installdb

Zabbix db installation script. You will need some basic knowledge to pass. Please note that better way is probably to install zabbix-doc package and read manual. This is very LIGHT version of script and tries to be
simple, but it is not always what you want.

In other words, if you did not read manual yet, you will never login to your zabbix server to administer it

If you have default debian mysql-server installation, no further information's is needed.

Else we will need:

- mysql server host
- mysql server admin user
- mysql server admin pass

We will do:
- create zabbix db
- fill db with right schema and basic data

!! DO NOT RUN THIS SCRIPT IF YOU ALREADY HAVE DATA IN YOUR ZABBIX DB !!
If you want to end now, press ctrl+c

Your DB was created successfully. Please note that it is not good idea to use mysql admin user as zabbix user
even if it is working. You should read mysql documentation, create user zabbix, give him rights for database zabbix and run dpkg-reconfigure zabbix-server to make it working... In other words, you have been warned.

Installing Zabbix Agent in Debian

Zabbix Agent need to be installed in all the systems you want to monitor.

Add the source below to your /etc/apt/sources.list.

# Zabbix
# http://mirror.opf.slu.cz/zabbix/

deb http://mirror.opf.slu.cz/zabbix unstable contrib

Next, update and install the packages

#apt-get update

#apt-get install zabbix-agent

This will install the zabbix agent now you need to configure your agent to communicate with server for this you need to edit the file located at /etc/zabbix/zabbix_agentd.conf

Make sure that the Server parameter points to your zabbix server address:

Server=xxx.xxx.xxx.xxx

Now Edit /etc/services:

vi /etc/services

Add:

zabbix_agent 10050/tcp # Zabbix ports
zabbix_trap 10051/tcp

Now you need to restart the zabbis agent using the following command

#/etc/init.d/zabbix-agent restart

That' it you have installed zabbix server and agent.

Now you can access zabbix using the following URL

http://yourserver/zabbix/ you should see the following screen



Log in with username: admin with No Password

After login in to zabbix you should see screen like below

In zabbix we have 4 main tabs i.e

1) Monitoring

2) Inventory

3) Reports

4) Configuration

You can see above 4 links with subsections available in the following screenshots.

1) Monitoring


2) Inventory


3) Reports


4) Configuration


Now can go to the tab Configuration and then click on Hosts to add new hosts.

Now create a host-group, see that you can give it some templates, e.g: Application.MySQL, Host.SNMP,Host.Standalone, Host.Unix.

Then some hosts:Select your host-group and use Link with Template Host.Unix.Now a lot of triggers are imported and the game begins.Go to the monitoring tab and watch the latest values roll in.

If you want to know more detailed manual how to use zabbix just follow this manual.