Installing Zabbix (Server And Agent) On Ubuntu 7.10Zabbix is a solution for monitoring applications, networks, and servers. With Zabbix, you can monitor multiple servers at a time, using a Zabbix server that comes with a web interface (that is used to configure Zabbix and holds the graphs of your systems) and Zabbix agents that are installed on the systems to be monitored. The Zabbix agents deliver the desired data to the Zabbix server.
1 Preliminary Note
I will use the system sahab-desktop.com with the IP address 192.168.1.187 as the Zabbix server, and I'll install a Zabbix agent on the same system (so that it can monitor itself) as well as on a second Ubuntu 7.10 system with the hostname kcs.keltron.org and the IP address 192.168.1.36.
2 Install The Zabbix Server And Zabbix Agent On server
apt-get install mysql-server mysql-client
Create a password for the MySQL? user root (replace yourrootsqlpassword with the password you want to use):
mysqladmin -u root password yourrootsqlpassword
Then check with
netstat -tap | grep mysql
on which addresses MySQL? is listening. If the output looks like this:
tcp 0 0 localhost.localdo:mysql *:* LISTEN 2713/mysqld
which means MySQL? is listening on localhost.localdomain only, then you're safe with the password you set before. But if the output looks like this:
tcp 0 0 *:mysql *:* LISTEN 2713/mysqld
you should set a MySQL? password for your hostname, too, because otherwise anybody can access your database and modify data:
mysqladmin -h sahab-desktop.com -u root password yourrootsqlpassword
Afterwards, we can install the Zabbix server, Zabbix agent, and the Zabbix web interface with a single command:
apt-get install zabbix-server-mysql zabbix-frontend-php zabbix-agent
You will be asked a few questions:
Configure database for zabbix-server-mysql with dbconfig-common? <-- Yes
Password of your database's administrative user: <-- yourrootsqlpassword (password of the MySQL? root user)
MySQL? application password for zabbix-server-mysql: <-- zabbixsqlpassword (password of the MySQL? user zabbix)
Password confirmation: <-- zabbixsqlpassword
Next we must edit the Zabbix agent configuration in /etc/zabbix/zabbix_agentd.conf. Replace Server=localhost with Server=192.168.1.187
and specify the hostname of the current system in the Hostname line:
Then we restart the Zabbix agent:
Finally, we must specify the password of our zabbix MySQL? user in the Zabbix web interface configuration:
That's it. you can now open http://sahab-desktop.com/zabbix> or http://192.168.1.187/zabbix> in a browser. Log in with the username Admin
and no password:
If you have problems with Zabbix, please check the Zabbix logs:
The Zabbix configuration files for the server, agent, and web interface are as follows:
Note: I got the error in zabbix.pid file creation, then I have manualy created the zabbix.pid file under the user home folder. Then edit the zabbix server and agent configuration file.
/etc/zabbix/zabbix_server.conf and /etc/zabbix/zabbix_server.conf
3 Install The Zabbix Agent On kcs.keltron.orgLet's assume we have a second server (kcs.keltron.org, 192.168.1.36) that we want to monitor. Of course, we don't have to install the Zabbix server or a MySQL? database on kcs.keltron.org , because this is already installed on sahab-desktop.com. All we have to do is install the Zabbix agent:
apt-get install zabbix-agent
Then we must edit the Zabbix agent configuration file /etc/zabbix/zabbix_agentd.conf and put the IP address of our Zabbix server in the Server line and specify the hostname of the current system in the Hostname line:
Afterwards, we restart the Zabbix agent:
That's it. You can now use the Zabbix web interface on the Zabbix server to monitor kcs.keltron.org.
If you have problems, you should check out the Zabbix agent log file /var/log/zabbix-agent/zabbix_agentd.log.