一.部署環(huán)境 系統(tǒng):CentOS 6.4x64 最小化安裝 Server:192.168.3.28 Client:192.168.3.29 二.基礎(chǔ)軟件包安裝 在server安裝基礎(chǔ)軟件包,這里的環(huán)境使用yum安裝,如果使用源碼安裝也是可以的。
1
| [root@zabbix-server ~]# yum -y install wget vim tree gcc gcc-c++ autoconf httpd php mysql mysql-server php-mysql httpd-manual mod_ssl mod_perl mod_auth_mysql php-gd php-xml php-mbstring php-ldap php-pear php-xmlrpc php-bcmath mysql-connector-odbc mysql-devel libdbi-dbd-mysql net-snmp net-snmp-devel curl-devel
|
啟動httpd、mysql并設(shè)置成開機(jī)自動啟動
1
2
3
4
| [root@zabbix-server ~]# service httpd start
[root@zabbix-server ~]# service mysqld start
[root@zabbix-server ~]# chkconfig httpd on
[root@zabbix-server ~]# chkconfig mysqld on
|
在iptables中放行80,10050,10051端口。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
| [root@zabbix-server ~]# iptables -I INPUT -p tcp -m multiport --destination-port 80,10050:10051 -j ACCEPT
#查看防火墻結(jié)果
[root@zabbix-server ~]# iptables -L -n
Chain INPUT (policy ACCEPT)
target prot opt source destination
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 multiport dports 80,10050:10051
ACCEPT all -- 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED
ACCEPT icmp -- 0.0.0.0/0 0.0.0.0/0
ACCEPT all -- 0.0.0.0/0 0.0.0.0/0
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:22
REJECT all -- 0.0.0.0/0 0.0.0.0/0 reject-with icmp-host-prohibited
Chain FORWARD (policy ACCEPT)
target prot opt source destination
REJECT all -- 0.0.0.0/0 0.0.0.0/0 reject-with icmp-host-prohibited
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
#保存iptables規(guī)則
[root@zabbix-server ~]# service iptables save
iptables: Saving firewall rules to /etc/sysconfig/iptables:[ OK ]
添加zabbix服務(wù)對應(yīng)的端口 echo 'zabbix-agent 10050/tcp #Zabbix Agent' >> /etc/services echo 'zabbix-agent 10050/udp #Zabbix Agent' >> /etc/services echo 'zabbix-trapper 10051/tcp #Zabbix trapper' >> /etc/services echo 'zabbix-trapper 10051/udp #Zabbix trapper' >> /etc/services
|
三.配置PHP參數(shù) zabbix的運(yùn)行需要特定的php參數(shù)支持,修改如下
1
2
3
4
5
6
| [root@zabbix-server ~]# sed -i "s@;date.timezone =@date.timezone = Asia/Shanghai@g" /etc/php.ini
[root@zabbix-server ~]# sed -i "s@max_execution_time = 30@max_execution_time = 300@g" /etc/php.ini
[root@zabbix-server ~]# sed -i "s@post_max_size = 8M@post_max_size = 32M@g" /etc/php.ini
[root@zabbix-server ~]# sed -i "s@max_input_time = 60@max_input_time = 300@g" /etc/php.ini
[root@zabbix-server ~]# sed -i "s@memory_limit = 128M@memory_limit = 128M@g" /etc/php.ini
[root@zabbix-server ~]# sed -i "s@;mbstring.func_overload = 0@ambstring.func_overload = 2@g" /etc/php.ini
|
修改httpd的FQDN錯誤,重啟httpd服務(wù)
1
2
3
4
| [root@zabbix-server ~]# echo "ServerName localhost:80" >>/etc/httpd/conf/httpd.conf
[root@zabbix-server ~]# /etc/init.d/httpd restart
Stopping httpd: [ OK ]
Starting httpd: [ OK ]
|
四.下載zabbix-2.4.5.tar.gz
五.添加zabbix用戶和組 1
2
| [root@zabbix-server ~]# groupadd -g 201 zabbix
[root@zabbix-server ~]# useradd -g zabbix -u 201 -s /sbin/nologin zabbix
|
六.安裝zabbix-server端 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
| [root@zabbix-server ~]# tar xf zabbix-2.4.5.tar.gz
[root@zabbix-server ~]# cd zabbix-2.4.5
[root@zabbix-server zabbix-2.4.5]# ./configure --prefix=/usr/local/zabbix --enable-server --enable-proxy --enable-agent --with-mysql=/usr/bin/mysql_config --with-net-snmp --with-libcurl
[root@zabbix-server zabbix-2.4.5]# make && make install
#創(chuàng)建zabbix數(shù)據(jù)庫以及相關(guān)表
[root@zabbix-server zabbix-2.4.5]# mysql -e "create database zabbix default charset utf8;"
[root@zabbix-server zabbix-2.4.5]# mysql -e "grant all on zabbix.* to zabbix@localhost identified by 'zabbix';"
[root@zabbix-server zabbix-2.4.5]# mysql -uzabbix -pzabbix zabbix<./database/mysql/schema.sql
[root@zabbix-server zabbix-2.4.5]# mysql -uzabbix -pzabbix zabbix<./database/mysql/images.sql
[root@zabbix-server zabbix-2.4.5]# mysql -uzabbix -pzabbix zabbix<./database/mysql/data.sql
#配置軟連接和啟動文件信息
[root@zabbix-server zabbix-2.4.5]# mkdir /var/log/zabbix
[root@zabbix-server zabbix-2.4.5]# chown zabbix.zabbix /var/log/zabbix
[root@zabbix-server zabbix-2.4.5]# ln -s /usr/local/zabbix/etc/ /etc/zabbix
[root@zabbix-server zabbix-2.4.5]# ln -s /usr/local/zabbix/bin/* /usr/bin/
[root@zabbix-server zabbix-2.4.5]# ln -s /usr/local/zabbix/sbin/* /usr/sbin/
[root@zabbix-server zabbix-2.4.5]# cp /root/zabbix-2.4.7/misc/init.d/fedora/core/zabbix_* /etc/init.d/
[root@zabbix-server zabbix-2.4.5]# chmod 755 /etc/init.d/zabbix_*
#修改/etc/init.d目錄下的zabbix_server和zabbix_agentd啟動文件
[root@zabbix-server zabbix-2.4.5]# sed -i "s@BASEDIR=/usr/local@BASEDIR=/usr/local/zabbix@g" /etc/init.d/zabbix_server
[root@zabbix-server zabbix-2.4.5]# sed -i "s@BASEDIR=/usr/local@BASEDIR=/usr/local/zabbix@g" /etc/init.d/zabbix_agentd
#修改/etc/zabbix/zabbix_server.conf
[root@zabbix-server zabbix-2.4.5]# sed -i "s@DBUser=root@DBUser=zabbix@g" /etc/zabbix/zabbix_server.conf
[root@zabbix-server zabbix-2.4.5]# sed -i "s@#DBPassword=@DBPassword=zabbix@g" /etc/zabbix/zabbix_server.conf
[root@zabbix-server zabbix-2.4.5]# sed -i "s@# DBPassword=@DBPassword=zabbix@g" /etc/zabbix/zabbix_server.conf
#修改/etc/zabbix/zabbix_agentd.conf,這里的IP地址寫的是zabbix_server的IP地址,即192.168.3.28
[root@zabbix-server zabbix-2.4.5]# sed -i "s@Server=127.0.0.1@Server=127.0.0.1,192.168.3.28@g" /etc/zabbix/zabbix_agentd.conf
[root@zabbix-server zabbix-2.4.5]# sed -i "s@ServerActive=127.0.0.1@ServerActive=$IP:10051@g" /etc/zabbix/zabbix_agentd.conf
[root@zabbix-server zabbix-2.4.5]# sed -i "s@tmp/zabbix_agentd.log@var/log/zabbix/zabbix_agentd.log@g" /etc/zabbix/zabbix_agentd.conf
[root@zabbix-server zabbix-2.4.5]# sed -i "s@^# UnsafeUserParameters=0@UnsafeUserParameters=1\n@g" /etc/zabbix/zabbix_agentd.conf
#復(fù)制zabbix站點(diǎn)的文件到/var/www/html目錄下
[root@zabbix-server zabbix-2.4.5]# cp -r /root/zabbix-2.4.5/frontends/php/ /var/www/html/zabbix/
[root@zabbix-server zabbix-2.4.5]# chown -R apache.apache /var/www/html/zabbix/
[root@zabbix-server zabbix-2.4.5]# chkconfig zabbix_server on
[root@zabbix-server zabbix-2.4.5]# chkconfig zabbix_agentd on
[root@zabbix-server zabbix-2.4.5]# service zabbix_server start
Starting zabbix_server: [ OK ]
[root@zabbix-server zabbix-2.4.5]# service zabbix_agentd start
Starting zabbix_agentd: [ OK ]
|
七.通過web站點(diǎn)配置zabbix
以上步驟配置完后通過http://192.168.3.28/zabbix/setup.php網(wǎng)頁端進(jìn)行后續(xù)配置
1.安裝界面
2.PHP配置檢查界面,結(jié)果是OK表示正常,如果是fail狀態(tài),請修改相關(guān)的php配置參數(shù),并重啟httpd服務(wù)
3.這里的數(shù)據(jù)庫相關(guān)信息,在上文中有配置,具體請查看上文
4.填寫zabbix的server地址,我這里填寫的是本機(jī)的IP地址192.168.3.28
5.最后配置結(jié)果預(yù)覽
6.安裝完成
八.訪問zabbix的web管理界面 安裝完成后,通過http://192.168.3.28/zabbix/index.php#就能直接訪問web管理界面 默認(rèn)用戶名:admin,密碼:zabbix
九.調(diào)整zabbix語言
十.zabbix語言設(shè)置成中文后,有亂碼解決如下 1.從windows下控制面板->字體->選擇一種中文字庫例如“楷體” 2.將字體上傳至/var/www/html/zabbix/fonts目錄下 3.修改zabbix頁面管理的中文字體設(shè)置 1
2
3
4
| [root@zabbix-server zabbix-2.4.5]# vim /var/www/html/zabbix/include/defines.inc.php
#修改如下2行
define('ZBX_FONT_NAME', 'simkai');
define('ZBX_GRAPH_FONT_NAME', 'simkai');
|
修改后的zabbix界面。
十一.修改完以上步驟后,zabbix界面的歷史記錄還是亂碼,這是由于mysql的數(shù)據(jù)庫字符集導(dǎo)致的,解決辦法如下
1.備份zabbix數(shù)據(jù)庫,并修改備份下來的數(shù)據(jù)文件 1
2
| [root@zabbix-server ~]# mysqldump zabbix >zabbix.sql
[root@zabbix-server ~]# sed -i 's/latin1/utf8/g' zabbix.sql
|
2.刪除zabbix數(shù)據(jù)庫 1
2
| mysql> drop database zabbix;
Query OK, 104 rows affected (0.42 sec)
|
3.關(guān)閉mysql數(shù)據(jù)庫,設(shè)置默認(rèn)字符集 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
| [root@zabbix-server ~]# service mysqld stop
Stopping mysqld: [ OK ]
#在mysql配置文件中添加字符集參數(shù)
[root@zabbix-server ~]# vim /etc/my.cnf
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
default-character-set = utf8
user=mysql
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
|
4.啟動mysql并恢復(fù)zabbix數(shù)據(jù)庫 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
| [root@zabbix-server ~]# service mysqld start
Starting mysqld: [ OK ]
[root@zabbix-server ~]# mysql
mysql> create database zabbix;
Query OK, 1 row affected (0.00 sec)
mysql> show create database zabbix;
+----------+-----------------------------------------------------------------+
| Database | Create Database |
+----------+-----------------------------------------------------------------+
| zabbix | CREATE DATABASE `zabbix` /*!40100 DEFAULT CHARACTER SET utf8 */ |
+----------+-----------------------------------------------------------------+
1 row in set (0.00 sec)
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| test |
| zabbix |
+--------------------+
4 rows in set (0.00 sec)
mysql> use zabbix;
Database changed
mysql> source zabbix.sql;
|
5.查看修改后的結(jié)果
十二.在client端192.168.3.29安裝zabbix 安裝基礎(chǔ)軟件包
1
| [root@zabbix-c1 ~]# yum install wget vim tree gcc gcc-c++ -y
|
安裝zabbix_agentd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
| [root@zabbix-c1 ~]# groupadd -g 201 zabbix
[root@zabbix-c1 ~]# useradd -g zabbix -u 201 -s /sbin/nologin zabbix
[root@zabbix-c1 ~]# tar xf zabbix-2.4.5.tar.gz
[root@zabbix-c1 ~]# cd zabbix-2.4.5
#開始編譯安裝zabbix客戶端
[root@zabbix-c1 zabbix-2.4.5]# ./configure --prefix=/usr/local/zabbix --enable-agent
[root@zabbix-c1 zabbix-2.4.5]# make && make install
#創(chuàng)建zabbix的日志目錄
[root@zabbix-c1 zabbix-2.4.5]# mkdir /var/log/zabbix
[root@zabbix-c1 zabbix-2.4.5]# chown zabbix.zabbix /var/log/zabbix
#復(fù)制zabbix_agentd啟動文件到/etc/init.d目錄下
[root@zabbix-c1 zabbix-2.4.5]# cp misc/init.d/fedora/core/zabbix_agentd /etc/init.d/
[root@zabbix-c1 zabbix-2.4.5]# chmod 755 /etc/init.d/zabbix_agentd
#在iptables中放行10050和10051端口
[root@zabbix-c1 zabbix-2.4.5]# iptables -I INPUT -p tcp -m multiport --dports 10050:10051 -j ACCEPT
[root@zabbix-c1 zabbix-2.4.5]# service iptables save #保存iptables規(guī)則
iptables: Saving firewall rules to /etc/sysconfig/iptables:[ OK ]
#查看iptables結(jié)果
[root@zabbix-c1 zabbix-2.4.5]# iptables -L -n
Chain INPUT (policy ACCEPT)
target prot opt source destination
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 multiport dports 10050:10051
ACCEPT all -- 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED
ACCEPT icmp -- 0.0.0.0/0 0.0.0.0/0
ACCEPT all -- 0.0.0.0/0 0.0.0.0/0
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:22
REJECT all -- 0.0.0.0/0 0.0.0.0/0 reject-with icmp-host-prohibited
Chain FORWARD (policy ACCEPT)
target prot opt source destination
REJECT all -- 0.0.0.0/0 0.0.0.0/0 reject-with icmp-host-prohibited
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
#修改啟動文件和配置軟連接
[root@zabbix-c1 zabbix-2.4.5]# sed -i "s@BASEDIR=/usr/local@BASEDIR=/usr/local/zabbix@g" /etc/init.d/zabbix_agentd
[root@zabbix-c1 zabbix-2.4.5]# ln -s /usr/local/zabbix/etc/ /etc/zabbix
[root@zabbix-c1 zabbix-2.4.5]# ln -s /usr/local/zabbix/bin/* /usr/bin
[root@zabbix-c1 zabbix-2.4.5]# ln -s /usr/local/zabbix/sbin/* /usr/sbin/
#/etc/zabbix/zabbix_agentd.conf,這里的IP地址寫的是zabbix_server端的IP地址
[root@zabbix-c1 zabbix-2.4.5]# sed -i "s@Server=127.0.0.1@Server=192.168.3.28@g" /etc/zabbix/zabbix_agentd.conf
[root@zabbix-c1 zabbix-2.4.5]# sed -i "s@ServerActive=127.0.0.1@ServerActive=192.168.3.28:10051@g" /etc/zabbix/zabbix_agentd.conf
[root@zabbix-c1 zabbix-2.4.5]# sed -i "s@tmp/zabbix_agentd.log@var/log/zabbix/zabbix_agentd.log@g" /etc/zabbix/zabbix_agentd.conf
[root@zabbix-c1 zabbix-2.4.5]# sed -i "s@^# UnsafeUserParameters=0@UnsafeUserParameters=1\n@g" /etc/zabbix/zabbix_agentd.conf
#設(shè)置zabbix_agentd開機(jī)自動啟動,并啟動zabbix_agentd服務(wù)
[root@zabbix-c1 zabbix-2.4.5]# chkconfig zabbix_agentd on
[root@zabbix-c1 zabbix-2.4.5]# service zabbix_agentd start
Starting zabbix_agentd: [ OK ]
|
|