Zabbix 5.0 版本於 5 月 12日正式發布,是最新的 LTS(長期支持)版本,5.0 帶來很多功能和特性,后面會陸續推出文章介紹,下面主要介紹 5.0 版本的安裝。
一、環境要求
5.0 版本對基礎環境的要求有大的變化,最大的就是對 php 版本的要求,最低要求 7.2.0 版本,對 php 擴展組件版本也有要求,詳見官網文檔。
(https://www.zabbix.com/documentation/current/manual/installation/requirements)
二、YUM 安裝
基本環境
操作系統:CentOS Linux release 7.8.2003 (Core) x86_64
安裝方式:最小化安裝
- 安裝好操作系統后,關閉防火牆和 selinux 並重啟
sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
systemctl disable --now firewalld
reboot
- 安裝 zabbix rpm 源,鑒於國內網絡情況,使用阿里雲 zabbix 源
rpm -Uvh https://mirrors.aliyun.com/zabbix/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm
sed -i 's#http://repo.zabbix.com#https://mirrors.aliyun.com/zabbix#' /etc/yum.repos.d/zabbix.repo
yum clean all
- 安裝 Zabbix server 和 agent
yum install zabbix-server-mysql zabbix-agent -y
- 安裝 Software Collections,便於后續安裝高版本的 php,默認 yum 安裝的 php 版本為 5.4 過低
yum install centos-release-scl -y
- 啟用 Zabbix 前端源,修改/etc/yum.repos.d/zabbix.repo,將[zabbix-frontend]下的 enabled 改為 1
enabled=1
- 安裝 Zabbix 前端和相關環境
yum install zabbix-web-mysql-scl zabbix-apache-conf-scl -y
- 由於使用 yum 安裝 zabbix,不自動依賴安裝數據庫,因此需要手動安裝數據庫,這里使用 yum 安裝 centos7 默認的 mariadb 數據庫
yum install mariadb-server -y
- 啟動數據庫,並配置開機自動啟動
systemctl enable --now mariadb
- 使用以下命令初始化 mariadb 並配置 root 密碼
mysql_secure_installation
- 使用 root 用戶進入 mysql,並建立 zabbix 數據庫,注意數據庫編碼
create database zabbix character set utf8 collate utf8_bin;
create user zabbix@localhost identified by 'password';
grant all privileges on zabbix.* to zabbix@localhost;
quit;
- 使用以下命令導入 zabbix 數據庫,zabbix 數據庫用戶為 zabbix,密碼為 password
zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix
- 修改 zabbix server 配置文件/etc/zabbix/zabbix_server.conf 里的數據庫密碼
DBPassword=password
- 修改 zabbix 的 php 配置文件 /etc/opt/rh/rh-php72/php-fpm.d/zabbix.conf 里的時區
php_value[date.timezone] = Asia/Shanghai
- 啟動相關服務,並配置開機自動啟動
systemctl restart zabbix-server zabbix-agent httpd rh-php72-php-fpm
systemctl enable zabbix-server zabbix-agent httpd rh-php72-php-fpm
- 使用瀏覽器訪問 http://ip/zabbix 即可訪問 zabbix 的 web 頁面。
三、編譯安裝
01
基礎環境配置
鑒於 5.0 對 php 等組件版本的要求,編譯安裝前建議參考版本,使用對應的版本進行安裝,lnmp 環境采用 dnf 方式安裝,使用編譯安裝 Zabbix。
基本環境
操作系統:CentOS Linux release 8.1.1911 (Core) x86_64
安裝方式:最小化安裝
- 安裝好操作系統后,關閉防火牆和 selinux 並重啟
sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
systemctl disable --now firewalld
reboot
- 使用 dnf 安裝 lnmp 等基礎環境包
dnf install httpd php php-gd php-ldap php-mysqlnd php-json php-bcmath php-mbstring php-xml mysql mysql-server mysql-devel libevent-devel pcre-devel gcc gcc-c++ make libcurl-devel curl-* net-snmp* libxml2-* wget tar -y
useradd zabbix
3.啟動相關組件並配置開機啟動
systemctl enable --now httpd mysqld php-fpm
02
安裝配置
- 安裝好啟動 http,mysql 等服務,並使用 mysql_secure_installation 命令初始化 mysql。下載 Zabbix5.0 源碼,解壓並編譯。
cd /opt
wget https://cdn.zabbix.com/zabbix/sources/stable/5.0/zabbix-5.0.0.tar.gz
tar zxvf zabbix-5.0.0.tar.gz
cd zabbix-5.0.0
./configure --prefix=/usr/local/zabbix --enable-server --enable-agent \
--with-mysql --with-net-snmp --with-libcurl --with-libxml2
make
make install
- 使用 mysql 的 root 用戶登錄 mysql 數據庫,建立 Zabbix 數據庫用戶等相關信息
create database zabbix character set utf8 collate utf8_bin;
create user zabbix@localhost identified by 'password';
grant all privileges on zabbix.* to zabbix@localhost;
quit
- 按照順序,依次導入 sql
mysql -uzabbix -p zabbix < /opt/zabbix-5.0.0/database/mysql/schema.sql
mysql -uzabbix -p zabbix < /opt/zabbix-5.0.0/database/mysql/images.sql
mysql -uzabbix -p zabbix < /opt/zabbix-5.0.0/database/mysql/data.sql
- 修改 Zabbix server 配置文件/usr/local/zabbix/etc/zabbix_server.conf,修改數據庫密碼
DBPassword=password
- 為 Zabibx server 添加 systemd 啟動文件
vi /lib/systemd/system/zabbix-server.service
內容如下
[Unit]
Description=Zabbix Server
After=syslog.target
After=network.target
After=mysql.service
After=mysqld.service
After=mariadb.service
After=postgresql.service
[Service]
Environment="CONFFILE=/usr/local/zabbix/etc/zabbix_server.conf"
EnvironmentFile=-/etc/sysconfig/zabbix-server
Type=forking
Restart=on-failure
PIDFile=/tmp/zabbix_server.pid
KillMode=control-group
ExecStart=/usr/local/zabbix/sbin/zabbix_server -c $CONFFILE
ExecStop=/bin/kill -SIGTERM $MAINPID
RestartSec=10s
TimeoutSec=0
[Install]
WantedBy=multi-user.target
- 為 Zabbix agent 添加 systemd 啟動文件
vi /lib/systemd/system/zabbix-agent.service
內容如下
[Unit]
Description=Zabbix Agent
After=syslog.target
After=network.target
[Service]
Environment="CONFFILE=/usr/local/zabbix/etc/zabbix_agentd.conf"
EnvironmentFile=-/etc/sysconfig/zabbix-agent
Type=forking
Restart=on-failure
PIDFile=/tmp/zabbix_agentd.pid
KillMode=control-group
ExecStart=/usr/local/zabbix/sbin/zabbix_agentd -c $CONFFILE
ExecStop=/bin/kill -SIGTERM $MAINPID``RestartSec=10s
User=zabbix
Group=zabbix
[Install]
WantedBy=multi-user.target
- 啟動 zabbix server 和 zabbix agent,並配置開機啟動
systemctl enable --now zabbix-server
systemctl enable --now zabbix-agent
03
前端安裝
- 拷貝 zabbix 前端文件到 apache 默認 web 目錄
cp -r /opt/zabbix-5.0.0/ui/* /var/www/html/
chown -R apache:apache /var/www/html/
- 配置 php 參數
sed -i 's#post_max_size = 8M#post_max_size = 16M#' /etc/php.ini
sed -i 's#max_execution_time = 30#max_execution_time = 300#' /etc/php.ini
sed -i 's#max_input_time = 60#max_input_time = 300#' /etc/php.ini
sed -i 's#;date.timezone =#date.timezone = Asia/Shanghai#' /etc/php.ini
systemctl restart php-fpm
- 配置后使用瀏覽器訪問 http://ip/ 就可以訪問 zabbix 頁面了。
四、WEB 初始化
- 編譯或者 yum 安裝好之后,使用瀏覽器訪問 web
- 檢查各個組件配置是否正常
- 輸入配置數據庫 zabbix 用戶的密碼
下一步
下一步
下一步
登錄賬號為 Admin,密碼:zabbix
首頁
完成頁面初始化。
五、修改字體,避免中文顯示小方塊
1.安裝谷歌字體
yum install google-noto-sans-simplified-chinese-fonts.noarch -y
2.備份原字體
mv /etc/alternatives/zabbix-web-font /etc/alternatives/zabbix-web-font_bak
3.軟鏈接新字體
ln -s /usr/share/fonts/google-noto/NotoSansSC-Regular.otf /etc/alternatives/zabbix-web-font