說明:
操作系統:CentOS 7
Web環境:Nginx+MySQL+PHP
zabbix版本:zabbix-2.4.8.tar.gz
備注:Linux下安裝zabbix需要有LAMP或者LNMP運行環境
准備篇:
一、Web環境:Nginx+MySQL+PHP
CentOS 7.0編譯安裝Nginx1.6.0+MySQL5.6.19+PHP5.5.14
二、zabbix軟件包下載
zabbix-2.4.8.tar.gz
https://sourceforge.net/projects/zabbix/files/ZABBIX%20Latest%20Stable/2.4.8/zabbix-2.4.8.tar.gz/download
上傳zabbix-2.4.8.tar.gz到服務器/usr/local/src目錄下面
安裝篇
一、創建、導入zabbix數據庫
cd /usr/local/src #進入軟件包下載目錄
tar zxvf zabbix-2.4.8.tar.gz#解壓
cd /usr/local/src/zabbix-2.4.8/database/mysql #進入mysql數據庫創建腳本目錄
ls #列出文件,可以看到有schema.sql、images.sql、data.sql這三個文件
mysql -u root -p #輸入密碼,進入MySQL控制台
create database zabbix character set utf8; #創建數據庫zabbix,並且數據庫編碼使用utf8
insert into mysql.user(Host,User,Password) values('localhost','zabbix',password('123456')); #新建賬戶zabbix,密碼123456
flush privileges; #刷新系統授權表
如果出現以下錯誤
ERROR 1364 (HY000): Field 'ssl_cipher' doesn't have a default value
請打開 vim /usr/local/mysql/my.cnf 有一句
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
指定了嚴格模式,為了安全,嚴格模式禁止通過insert 這種形式直接修改mysql庫中的user表進行添加新用戶
解決辦法:
將配置文件中的STRICT_TRANS_TABLES刪掉,即改為:
sql_mode=NO_ENGINE_SUBSTITUTION
然後重啟mysql即可
/etc/init.d/mysqld restart
grant all on zabbix.* to 'zabbix'@'127.0.0.1' identified by '123456' with grant option; #允許賬戶zabbix能從本機連接到數據庫zabbix
flush privileges; #再次刷新系統授權表
use zabbix #進入數據庫
source /usr/local/src/zabbix-2.4.8/database/mysql/schema.sql #導入腳本文件到zabbix數據庫
source /usr/local/src/zabbix-2.4.8/database/mysql/images.sql #導入腳本文件到zabbix數據庫
source /usr/local/src/zabbix-2.4.8/database/mysql/data.sql #導入腳本文件到zabbix數據庫
注意:請按照以上順序進行導入,否則會出錯。
exit #退出
或者這樣導入
mysql -uzabbix -p123456 -hlocalhost zabbix < /usr/local/src/zabbix-2.4.8/database/mysql/schema.sql
mysql -uzabbix -p123456 -hlocalhost zabbix < /usr/local/src/zabbix-2.4.8/database/mysql/images.sql
mysql -uzabbix -p123456 -hlocalhost zabbix < /usr/local/src/zabbix-2.4.8/database/mysql/data.sql
cd /usr/lib64/mysql #32位系統為/usr/lib/mysql,注意系統版本同,文件版本可能不一樣,這裡是16.0.0
ln -s libmysqlclient.so.16.0.0 libmysqlclient.so #添加軟連接
ln -s libmysqlclient_r.so.16.0.0 libmysqlclient_r.so #添加軟連接
二、安裝zabbix
1、添加用戶:
groupadd zabbix #創建用戶組zabbix
useradd zabbix -g zabbix -s /bin/false #創建用戶zabbix,並且把用戶zabbix加入到用戶組zabbix中
2、安裝依賴包 #CentOS使用yum命令安裝
yum install net-snmp-devel curl curl-devel mysql-devel
備注:以上軟件包如果在安裝Web環境LAMP或者LNMP時已經安裝過,此步驟可忽略
3、安裝zabbix
ln -s /usr/local/lib/libiconv.so.2 /usr/lib/libiconv.so.2 #添加軟連接
/sbin/ldconfig #使配置立即生效
cd /usr/local/src/zabbix-2.4.8 #進入安裝目錄
./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --with-net-snmp --with-libcurl --enable-proxy --with-mysql=/usr/bin/mysql_config #配置
make #編譯
make install #安裝
ln -s /usr/local/zabbix/sbin/* /usr/local/sbin/ #添加系統軟連接
ln -s /usr/local/zabbix/bin/* /usr/local/bin/ #添加系統軟連接
說明:find / -name mysql_config 查找位置,如果沒有mysql_config,需要安裝yum install mysql-devel
4、添加zabbix服務對應的端口
vi /etc/services #編輯,在最後添加以下代碼
# Zabbix
zabbix-agent 10050/tcp # Zabbix Agent
zabbix-agent 10050/udp # Zabbix Agent
zabbix-trapper 10051/tcp # Zabbix Trapper
zabbix-trapper 10051/udp # Zabbix Trapper
:wq! #保存退出
5、修改zabbix配置文件
cd /usr/local/zabbix/etc
vi /usr/local/zabbix/etc/zabbix_server.conf
DBName=zabbix #數據庫名稱
DBUser=zabbix #數據庫用戶名
DBPassword=123456 #數據庫密碼 #去掉注釋 注意格式上下都為空列
ListenIP=127.0.0.1 #數據庫ip地址
AlertScriptsPath=/usr/local/zabbix/share/zabbix/alertscripts #zabbix運行腳本存放目錄
:wq! #保存退出
vi /usr/local/zabbix/etc/zabbix_agentd.conf
Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/
UnsafeUserParameters=1 #啟用自定義key
:wq! #保存退出
6、添加開機啟動腳本
cp /usr/local/src/zabbix-2.4.8/misc/init.d/fedora/core/zabbix_server /etc/rc.d/init.d/zabbix_server #服務端
cp /usr/local/src/zabbix-2.4.8/misc/init.d/fedora/core/zabbix_agentd /etc/rc.d/init.d/zabbix_agentd #客戶端
chmod +x /etc/rc.d/init.d/zabbix_server #添加腳本執行權限
chmod +x /etc/rc.d/init.d/zabbix_agentd #添加腳本執行權限
chkconfig zabbix_server on #添加開機啟動
chkconfig zabbix_agentd on #添加開機啟動
7、修改zabbix開機啟動腳本中的zabbix安裝目錄
vi /etc/rc.d/init.d/zabbix_server #編輯服務端配置文件
BASEDIR=/usr/local/zabbix/ #zabbix安裝目錄
:wq! #保存退出
vi /etc/rc.d/init.d/zabbix_agentd #編輯客戶端配置文件
BASEDIR=/usr/local/zabbix/ #zabbix安裝目錄
:wq! #保存退出
四、配置web站點
cd /usr/local/src/zabbix-2.4.8
cp -r /usr/local/src/zabbix-2.4.8/frontends/php /usr/local/nginx/html/zabbix
chown www.www -R /usr/local/nginx/html/zabbix
備注:/usr/local/nginx/html為Nginx默認站點目錄 www為Nginx運行賬戶
service zabbix_server start #啟動zabbix服務端
service zabbix_agentd start #啟動zabbix客戶端
六、修改php配置文件參數
1、vi /etc/php.ini #編輯修改
post_max_size =16M
max_execution_time =300
max_input_time =300
:wq! #保存退出
2、vi /usr/local/php/etc/php-fpm.conf #編輯修改
request_terminate_timeout = 300
:wq! #保存退出
service php-fpm restart #重啟php-fpm
七、安裝web
在浏覽器中打開:
http://IP/zabbix/setup.php
檢查系統環境設置,必須全部都為ok,才能繼續
Next
配置MySQL數據庫信息
Database:MySQL
Database host:127.0.0.1
Database port:use default port
Database name:zabbix
User:zabbix
Password:123456
如果出現一下這種錯誤,那是你的zabbix密碼配置錯誤①,或者沒有這個用戶②。解決辦法:
①:mysql>use mysql;
mysql> UPDATE user SET password=PASSWORD(‘123456’) WHERE user='zabbix';
mysql> FLUSH PRIVILEGES;
mysql> quit;
②:select user,host,password from user;
insert into mysql.user(Host,User,Password) values('localhost','zabbix',password('123456')); #新建賬戶zabbix,密碼123456
Test connection #測試數據庫連接是否正常,顯示ok表示通過
Next
4、5步Next默認即可,第六步點擊finish安裝完成
八、更改zabbix默認語言為簡體中文、替換監控圖像上系統默認的中文字體
1、修改系統配置文件,讓web頁面支持簡體中文顯示
vi /usr/local/nginx/html/zabbix/include/locales.inc.php #編輯修改
'zh_CN' => array('name' => _('Chinese (zh_CN)'), 'display' => false),
修改為
'zh_CN' => array('name' => _('Chinese (zh_CN)'), 'display' => true),
:wq! #保存退出
2、替換監控圖像上系統默認的字體 #默認字體不支持中文,如果不替換,圖像上會顯示亂碼
在Windows系統中的C:\Windows\Fonts目錄中復制出一個中文字體文件,例如simkai.ttf(中文 常規)
把字體文件simkai.ttf上傳到zabbix站點根目錄下fonts文件夾中
例如:/usr/local/nginx/html/zabbix/fonts
備份默認的字體文件:DejaVusSans.ttf-bak
修改simkai.ttf名稱為DejaVusSans.ttf
3、在浏覽器中打開:
http://IP/zabbix
賬號:admin
密碼:zabbix
Sign in 登錄
Language:Chinese(zh_CN) #簡體中文
點update保存
如下圖所示,默認界面已經是中文顯示