Server installation with MySQL database
It is a good practice to have the innodb_file_per_table option enabled on MySQL. Check this setting before proceeding.
Red Hat Enterprise Linux / CentOS
Installing packages
Here is an example for Zabbix server and web frontend installation with MySQL database:
# yum install zabbix-server-mysql zabbix-web-mysql
Creating initial database
Create Zabbix database and user on MySQL by the following commands, where <root_password> shall be replaced with the actual root password (e.g., shell> mysql -uroot -p12345
) and <password> with new password for zabbix user on the database (including apostrophes: …identified by ‘67890‘;
):
shell> mysql -uroot -p<root_password> mysql> create database zabbix character set utf8 collate utf8_bin; mysql> grant all privileges on zabbix.* to [email protected] identified by ‘<password>‘; mysql> quit;
Now import initial schema and data. Make sure to insert correct version for 3.2.*
. You will be prompted to enter your newly created password.
# zcat /usr/share/doc/zabbix-server-mysql-3.2.*/create.sql.gz | mysql -uzabbix -p zabbix
In order to check the version you have in your package, use the following command:
# rpm -q zabbix-server-mysql
Database configuration for Zabbix server #对于zabbix服务器的配置
Edit server host, name, user and password in zabbix_server.conf as follows, where DBPassword is the password you‘ve set creating initial database:
# vi /etc/zabbix/zabbix_server.conf DBHost=localhost DBName=zabbix DBUser=zabbix DBPassword=<password>
Starting Zabbix server process
It‘s time to start Zabbix server process and make it start at system boot:
# systemctl start zabbix-server # systemctl enable zabbix-server
PHP configuration for Zabbix frontend #配置zabbix的前端PHP
Apache configuration file for Zabbix frontend is located in /etc/httpd/conf.d/zabbix.conf. Some PHP settings are already configured. But it‘s necessary to uncomment the “date.timezone” setting and set the right timezone for you.
php_value max_execution_time 300 php_value memory_limit 128M php_value post_max_size 16M php_value upload_max_filesize 2M php_value max_input_time 300 php_value always_populate_raw_post_data -1 # php_value date.timezone Europe/Riga
SELinux configuration
Having SELinux status enabled in enforcing mode, you need to execute the following command to enable successful connection of Zabbix frontend to the server:
# setsebool -P httpd_can_connect_zabbix on
As frontend and SELinux configuration is done, you need to restart Apache web server:
# systemctl start httpd
Installing frontend
Now you are ready to proceed with frontend installation steps which will allow you to access your newly installed Zabbix.
Zabbix official repository provides fping, iksemel, libssh2 packages for RHEL as well. These packages are located in the non-supported directory.
Debian / Ubuntu
Installing packages
Here is an example for Zabbix server and web frontend installation with MySQL database:
# apt-get install zabbix-server-mysql zabbix-frontend-php
Creating initial database
Create Zabbix database and user on MySQL by the following commands, where <root_password> shall be replaced with the actual root password (e.g., shell> mysql -uroot -p12345
) and <password> with new password for zabbix user on the database (including apostrophes: …identified by ‘67890‘;
):
shell> mysql -uroot -p<root_password> mysql> create database zabbix character set utf8 collate utf8_bin; mysql> grant all privileges on zabbix.* to [email protected] identified by ‘<password>‘; mysql> quit;
Then import initial schema and data. You will be prompted to enter your newly created password.
# zcat /usr/share/doc/zabbix-server-mysql/create.sql.gz | mysql -uzabbix -p zabbix
Database configuration for Zabbix server
Edit server host, name, user and password in zabbix_server.conf as follows, where DBPassword is the password you‘ve set creating initial database::
# vi /etc/zabbix/zabbix_server.conf DBHost=localhost DBName=zabbix DBUser=zabbix DBPassword=<password>
Starting Zabbix server process
Now you may start Zabbix server process and make it start at system boot
# service zabbix-server start # update-rc.d zabbix-server enable
PHP configuration for Zabbix frontend
Apache configuration file for Zabbix frontend is located in /etc/zabbix/apache.conf. Some PHP settings are already configured. But it‘s necessary to uncomment the “date.timezone” setting and set the right timezonefor you.
php_value max_execution_time 300 php_value memory_limit 128M php_value post_max_size 16M php_value upload_max_filesize 2M php_value max_input_time 300 php_value always_populate_raw_post_data -1 # php_value date.timezone Europe/Riga
After that you need to restart Apache web server:
# service apache2 restart
If you have SELinux status enabled in enforcing mode see corresponding block for RHEL / CentOS above.
Installing frontend
Now you are ready to proceed with frontend installation steps which will allow you to access your newly installed Zabbix.