ZABBIX Server 4.2, Step-by-step installation on Linux CentOS 7.6

Опубликовано: 21 Март 2026
на канале: Aleksandrs Mortulevs
23,431
186

1. OS
a. Linux CentOS 7.6
b. Update it
c. Prerequisites
d. Database
e. Secure it

2. Zabbix 4.2 using MySQL database, MariaDB - 8:00
a. install Zabbix
b. connect to database
c. configure front-end
d. finish configuration

1. Install basic server and configure it
CentOS Download - https://www.centos.org/download/
http://centos.linux.edu.lv/7.6.1810/i...

Set IP and activate adapters if required
nmtui

#connect using SSH/Telnet

Change time zone if not done jet
mv /etc/localtime /etc/localtime.bak
ln -s /usr/share/zoneinfo/Europe/Riga /etc/localtime

#Check swap file
free -m

Update CentOS - take some ~5-10 minutes..
yum update -y

Install some useful packages and MySQL fork Mariadb
yum install vim mc mariadb-server -y

Edit MySQL config file and add innodb_file_per_table under [mysqld] section
vim /etc/my.cnf
innodb_file_per_table

#Start MySQL and secure it (by default database root has no password)
systemctl start mariadb
mysql_secure_installation

#create zabbix database and user
mysql -p
CREATE DATABASE zabbix CHARACTER SET utf8 COLLATE utf8_bin;
GRANT ALL PRIVILEGES ON zabbix.* TO zabbix@localhost IDENTIFIED BY 'PasswordHere';
flush privileges;
exit

#Configure Firewall
systemctl unmask firewalld
systemctl enable firewalld
systemctl start firewalld

allow connections to ports 10051 (Zabbix server), 10050 (Zabix agent), 80 (HTTP) 443 (HTTPS) in firewalld
firewall-cmd --permanent --zone=public --add-port=10051/tcp
firewall-cmd --permanent --zone=public --add-port=10050/tcp
firewall-cmd --permanent --zone=public --add-port=80/tcp
firewall-cmd --permanent --zone=public --add-port=443/tcp
firewall-cmd --reload

==========================================
2. Install Zabbix packages on CentOS/RHEL 7

Download Zabbix package from http://repo.zabbix.com/zabbix/ (look for latest long term release package)
rpm -ivh http://repo.zabbix.com/zabbix/4.2/rhe...

Install Zabbix packages
yum install zabbix-server-mysql zabbix-web-mysql zabbix-agent zabbix-get zabbix-sender zabbix-java-gateway -y

Import initial DB schema and data (Zabbix version can be different, so check folder name)
cd /usr/share/doc/zabbix-server-mysql-4.2.4
zcat create.sql.gz | mysql -uroot -p zabbix

Edit database configuration in zabbix_server.conf
vim /etc/zabbix/zabbix_server.conf
DBHost=localhost (better change to IP)
DBName=zabbix
DBUser=zabbix
DBPassword=your password for DB user "zabbix"

Edit PHP timezone and change/uncomment the “date.timezone” setting and set the right timezone for you.
vim /etc/httpd/conf.d/zabbix.conf

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 max_input_vars 10000
php_value always_populate_raw_post_data -1
php_value date.timezone Europe/Riga
#Changes will be applied after restart of server or service httpd

Add services to server startup
systemctl enable zabbix-server zabbix-agent zabbix-java-gateway httpd mariadb


#Check startup list
systemctl list-unit-files | grep zabbix
systemctl list-unit-files | grep httpd
systemctl list-unit-files | grep mariadb

Check SELinux status
sestatus


We will switch SELinux off in this example (if you want to keep it on, check Zabbix documentation).
vim /etc/selinux/config
set SELINUX=disabled
Save the file. Reboot required to apply changes


Restart server
reboot


#Ready to go to http://ipaddress/zabbix to finish setup.
Server name: name of Zabbix server instance (will see it in the right up corner, under logout) Example: zbx_prod01, zbx_test01, zbx4.0.centos7 etc.

Default user: Admin
password: zabbix


Thank's for watching!
Please, subscribe!
Br, Alexander


P.S. Additional resources

#Create swap file
dd if=/dev/zero of=/swapfile1 bs=1024 count=524288
chown root:root /swapfile1
chmod 0600 /swapfile1
mkswap /swapfile1
swapon /swapfile1
free -m
To activate /swapfile1 after Linux system reboot
vi /etc/fstab
#Append the following line:
/swapfile1 none swap sw 0 0

#Start Zabbix server process
systemctl start zabbix-server

#check the status
systemctl status zabbix-server

Start Zabbix agent process.
systemctl start zabbix-agent

#Zabbix Server log file location
vim /var/log/zabbix/zabbix_server.log

#Default Admin password location
/etc/zabbix/web/zabbix.conf.php

#Forum
https://www.zabbix.com/forum/in-russian

#Professional help
https://www.zabbix.com/community

Music:
Avant Jazz - Disco Ultralounge by Kevin MacLeod is licensed under a Creative Commons Attribution license (https://creativecommons.org/licenses/...)
Source: http://incompetech.com/music/royalty-...
Artist: http://incompetech.com/