1. 程式人生 > >Centos7.4 zabbix3.4.7原始碼安裝

Centos7.4 zabbix3.4.7原始碼安裝

Zabbix自動化監控QQ交流群:9888359 歡迎喜歡交流的朋友加入!

一、概述

Zabbix 是一個企業級的分散式開源監控方案。能夠監控各種網路引數以及伺服器健康性和完整性。支援靈活的通知機制,提供出色的報告和資料視覺化功能。Zabbix支援主動輪詢和被動捕獲。最關鍵的是原始碼都是免費發行的,可供公眾任意使用。這也是它在中小企業廣為流行的重要原因之一。本文簡要描述Zabbix特性以及基於CentOS 7下安裝Zabbix 3.4。
特性功能
Zabbix自3.4.5rc1版本開始支援Elasticsearch作為歷史資料儲存,17年12月28日釋出了3.4.5
BUG
最近發現zabbix3.4.5後的版本出現餅型圖形只顯示一般的問題 

二、安裝及配置
1、下載原始碼包
zabbix官網:https://www.zabbix.com/
zabbix下載:https://www.zabbix.com/download
wget http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-agent-3.4.7-1.el7.x86_64.rpm

2、所依賴的安裝包
yum -y install gcc* make php php-gd php-mysql php-bcmath php-mbstring php-xml curl curl-devel net-snmp  net-snmp-devel perl-DBI httpd mariadb* mysql-devel libxml2-devel curl-devel unixODBC-devel net-snmp-devel OpenIPMI-devel openldap openldap-devel libevent-devel

3、建立安裝目錄
mkdir -pv /app/zabbix

4、建立zabbix使用者和組
groupadd zabbix
useradd -g zabbix zabbix

5、解壓及安裝
tar -xvf zabbix-3.4.7.tar.gz 
cd zabbix-3.4.7/
./configure --prefix=/app/zabbix --enable-server --enable-agent --with-mysql --with-net-snmp --with-libcurl --with-libxml2 --with-openipmi --with-unixodbc 

6、啟動及配置資料庫
systemctl start mariadb.service
systemctl status mariadb.service

mysqladmin -u root -p password 10880347
mysql -uroot -p10880347

create database zabbix character set utf8 collate utf8_bin;
grant all privileges on zabbix.* to
[email protected]
identified by 'zabbix2018';

7、匯入資料庫
mysql -uzabbix -pzabbix2018 zabbix < schema.sql
mysql -uzabbix -pzabbix2018 zabbix < images.sql
mysql -uzabbix -pzabbix2018 zabbix < data.sql

8、修改PHP的配置引數
vim /etc/php.ini 
date.timezone= Asia/Shanghai
max_execution_time = 300
post_max_size = 32M
memory_limit = 128M
mbstring.func_overload = 1
max_input_time = 300

9、移動zabbix專案到httpd目錄中去
cp -r frontends/php/ /var/www/html/zabbix
ll /var/www/html/
chown -R apache.apache /var/www/html/zabbix/

10、修改配置檔案zabbix_server.conf
建立相關目錄
mkdir logs
mkdir alertscripts
mkdir externalscripts

grep -n '^'[a-Z] /app/zabbix/etc/zabbix_server.conf
38:LogFile=/app/zabbix/logs/zabbix_server.log
68:PidFile=/app/zabbix/logs/zabbix_server.pid
95:DBName=zabbix
111:DBUser=zabbix
119:DBPassword=zabbix
440:Timeout=4
481:AlertScriptsPath=/app/zabbix/alertscripts
490:ExternalScripts=/app/zabbix/externalscripts
526:LogSlowQueries=3000

11、zabbix服務啟動指令碼
cp misc/init.d/fedora/core/zabbix_server /etc/init.d/

將啟動指令碼的路徑修改為/app/zabbix
vim /etc/init.d/zabbix_server
BASEDIR=/app/zabbix

12、zabbix安裝目錄授權
cd /app/
chown -R zabbix.zabbix  zabbix/

13、開機啟動
chkconfig --add zabbix_server
chkconfig zabbix_server on
systemctl enable httpd.service
systemctl enable mariadb.service
systemctl start httpd.service
/etc/init.d/zabbix_server restart

14、web服務初始化

輸入伺服器IP地址172.16.8.254


下一步


環境配置檢測,如果不OK,應返回前面的步驟進行排查 
問題:是因少一個/usr/lib64/php/modules/ldap.so 找不到這個檔案
[email protected] modules]# tail -f /var/log/httpd/error_log 
PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib64/php/modules/ldap.so' - /usr/lib64/php/modules/ldap.so: cannot open shared object file: No such file or directory in Unknown on line 0
解決方法:
1、首先檢視原始碼安裝的php模組中是否有ldap.so

2、重新拷一個ldap.so檔案到/usr/lib64/php/modules/目錄


至此zabbix 前面安裝 “Check of pre-requisites”全部OK

下面配置到資料庫的連線 


下一步


伺服器名稱及埠配置 


登陸,預設使用者名稱Admin,密碼zabbix 


三、BUG

最近發現zabbix3.4.5-3.4.7後的版本出現餅型圖形只顯示一半的問題 


四、中文顯示亂碼的問題
1、修改配置檔案defines.inc.php
cd /var/www/html/zabbix/include/
vi defines.inc.php
54  define('ZBX_GRAPH_FONT_NAME', 'msyh'); 
103 define('ZBX_FONT_NAME', 'msyh');
2、拷貝字型及授權
將win7系統微軟雅黑的字型C:\Windows\Fonts,先拷貝桌面,在將msyh,msyhbd字型拷貝/var/www/html/zabbix/fonts
注意許可權的問題(最近很多網友,遇見字型不生效的問題)
cd /var/www/html/zabbix/fonts
chown -R apache.apache *

yum -y install http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-agent-3.4.9-1.el7.x86_64.rpm
sed -i 's/Server=127.0.0.1/Server=192.168.58.58/' /etc/zabbix/zabbix_agentd.conf
sed -i 's/ServerActive=127.0.0.1/ServerActive=192.168.58.58/' /etc/zabbix/zabbix_agentd.conf
sed -i 's/# HostMetadata=/HostMetadata=elk/' /etc/zabbix/zabbix_agentd.conf
host=`ifconfig |awk -F '[ :]+' 'NR==2 {print $3}'`
sed -i 's/Hostname=Zabbix server/Hostname='$host'/' /etc/zabbix/zabbix_agentd.conf
systemctl enable zabbix-agent.service
systemctl restart zabbix-agent.service

Zabbix自動化監控QQ交流群:9888359 歡迎喜歡交流的朋友加入!