Zabbix is an open source software for networks and application monitoring. Zabbix provides agents to monitor remote hosts as well as Zabbix includes support for monitoring via SNMP, TCP and ICMP checks. Click here to know more about zabbix.
This article will help you to step by step install Zabbix 3.0 Server on CentOS/RHEL 7/6 systems. Before starting installation read below basic requirements to run Zabbix 3.4.
- Apache: 1.3.12 or later.
- PHP: 5.4.0 or later.
- MySQL: 5.0.3 or later.
- OpenIPMI: Required for IPMI support.
- libssh2: Required for SSH support. Version 1.0 or higher.
- fping: Required for ICMP ping items.
- libcurl: Required for web monitoring.
- libiksemel: Required for Jabber support.
- net-snmp: Required for SNMP support.
Step 1 – SetUp Apache, MySQL and PHP
In order to use Zabbix, we required a Web Server, database server, and PHP to work. In this steps we are going to set up these services, You may skip this step if you have already configured it.
Install All Services
yum install httpd httpd-devel yum install mysql mysql-server yum install php php-devel php-bcmath php-pear php-gd php-mbstring php-mysql php-xml
Start All Services
service httpd start service mysqld start
MySQL Initial Setup
Run the following command to setup MySQL initially and secure it
mysql_secure_installation
Step 2 – Configure Yum Repository
You can file zabbix repositories package on zabbix official website. You can also use one of following commands to add zabbix repository in your system.
CentOS/RHEL 7: rpm -Uvh https://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-2.el7.noarch.rpm CentOS/RHEL 6: rpm -Uvh https://repo.zabbix.com/zabbix/4.0/rhel/6/x86_64/zabbix-release-4.0-2.el6.noarch.rpm
Step 3 – Install Zabbix Server with MySQL
You have added Zabbix yum repository in above step. Now use the following command to install Zabbix server with MySQL database support packages on your system.
yum install zabbix-server-mysql zabbix-web-mysql zabbix-proxy-mysql
Step 4 – Setup Zabbix Apache Configuration
Zabbix creates its own apache configuration file /etc/httpd/conf.d/zabbix.conf. Edit this file and just update timezone. More timezone’s
php_value date.timezone Asia/Kolkata
After changing value restart Apache service.
service httpd restart
Step 5 – Configure MySQL Database for Zabbix
This installation is using MySQL as the backend of Zabbix, So we need to create MySQL database and User for Zabbix installation.
mysql -u root -p mysql> CREATE DATABASE zabbixdb CHARACTER SET UTF8; mysql> GRANT ALL PRIVILEGES on zabbixdb.* to [email protected] IDENTIFIED BY 'password'; mysql> FLUSH PRIVILEGES; mysql> quit
After creating database restore the default mysql database provided by zabbix. These files can be found at /usr/share/doc/zabbix-server-mysql-<version>/create/ directory.
zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uroot -p zabbixdb zcat /usr/share/doc/zabbix-proxy-mysql*/schema.sql.gz | mysql -uroot -p zabbixdb
Now edit Zabbix server configuration file /etc/zabbix/zabbix_server.conf and update the following database configurations.
DBHost=localhost DBName=zabbixdb DBUser=zabbix DBPassword=password
Step 6 – Start Zabbix Server
After completing the setup, let’s start the Zabbix server using the following command.
service zabbix-server start
After starting Zabbix service, let’s go to Zabbix web installer and finish the installation.
Step 7 – Complete Zabbix Web Installer Wizzard
Zabbix web installer can be accessed on /zabbix
subdirectory URL on your servers IP or domain. For example, host.tecadmin.net is pointed to my Zabbix server. Now access the Zabbix using the following URL. You must change FQDN as per your setup.
http://host.tecadmin.net /zabbix/
and follow the steps as per given screenshots below.
Zabbix Setup Welcome Screen
This is the welcome screen of Zabbix web installer. Go forward by click on next button.
Check for pre-requisities
Check if your system has all required packages, if everything is ok click next.
Configure DB Connection
Enter database details created in Step #4 and click next to continue.
Zabbix Server Details
This is the host and port of running Zabbix server. As your Zabbix server is running on the same host, so keep the values unchanged. You can give a name for your instance.
Pre-Installation Summary
In this step will show the summary you have entered previous steps, so simply click next.
Install Zabbix
If everything goes correctly, you will see a successful installation message on this page. This will also show you a message for the created configuration file.
Zabbix Login Screen
Login to Zabbix using default credentials.
Username: admin Password: zabbix
After successful login, You will get Zabbix dashboard like below.
Congratulation! Your Zabbix setup has been completed. Read our next article to install zabbix agent and add host in zabbix server.
Hi, at Step 5
GRANT ALL PRIVILEGES on zabbixdb.* to [email protected] IDENTIFIED BY ‘password’;
Fails.
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ‘IDENTIFIED BY ‘password” at line 1
What is the correct command for Server version: 8.0.15 MySQL Community Server ?
From what I have read that command is no longer valid in versions SQL 8+?
Is it happening when you copy/paste from here? If so, did you try changing the quotes around the password?
I wish to use encryption between server and agents. I am using Linux 6 and 7.
hi i follwed you tutorial and have the same ptoblem zabbix server is nort running the information displayed may not be current. upon typing command systemctl status zabbix-server Igot following output
systemctl status zabbix-server
● zabbix-server.service – Zabbix Server
Loaded: loaded (/usr/lib/systemd/system/zabbix-server.service; enabled; vendor preset: disabled)
Active: active (running) since Wed 2017-11-08 15:31:45 PKT; 26min ago
Process: 79711 ExecStop=/bin/kill -SIGTERM $MAINPID (code=exited, status=0/SUCCESS)
Process: 79718 ExecStart=/usr/sbin/zabbix_server -c $CONFFILE (code=exited, status=0/SUCCESS)
Main PID: 79720 (zabbix_server)
CGroup: /system.slice/zabbix-server.service
└─79720 /usr/sbin/zabbix_server -c /etc/zabbix/zabbix_server.conf
Nov 08 15:31:45 localhost.localdomain systemd[1]: zabbix-server.service: main process exited, code=exited, status=1/FAILURE
Nov 08 15:31:45 localhost.localdomain systemd[1]: Unit zabbix-server.service entered failed state.
Nov 08 15:31:45 localhost.localdomain systemd[1]: zabbix-server.service failed.
Nov 08 15:31:45 localhost.localdomain systemd[1]: Starting Zabbix Server…
Nov 08 15:31:45 localhost.localdomain systemd[1]: PID file /run/zabbix/zabbix_server.pid not readable (yet?) after start.
Nov 08 15:31:45 localhost.localdomain systemd[1]: Started Zabbix Server.