本文以CentOS 6.7 x86_64系統爲例,環境爲剛做好的新系統。
Zabbix-Server端環境監察
[root@linux-node1 ~]# cat /etc/redhat-release CentOS release 6.7 (Final) [root@linux-node1 ~]# uname -r 2.6.32-573.8.1.el6.x86_64 [root@linux-node1 ~]# uname -m x86_64 [root@linux-node1 ~]# hostname linux-node1.example.com [root@linux-node1 ~]# ifconfig | awk -F '[inet addr:| ]+' 'NR==2{print $2}' 10.19.1.19 [root@linux-node1 ~]# yum repolist 已加載插件:fastestmirror, security Loading mirror speeds from cached hostfile * base: mirrors.aliyun.com * epel: mirrors.aliyun.com * extras: mirrors.aliyun.com * updates: mirrors.aliyun.com
首先指定Zabbix的yum源
[root@linux-node1 ~]# rpm -ivh http://repo.zabbix.com/zabbix/2.4/rhel/6/x86_64/zabbix-release-2.4-1.el6.noarch.rpm
然後指定Zabbix的epel源
[root@linux-node1 ~]# rpm -ivh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
Zabbix-Server同時也要監控自己,所以Zabbix-Agent也需要安裝。安裝Zabbix-Server端。需要下載內容約18MB。
[root@linux-node1 ~]# yum install -y zabbix zabbix-get zabbix-server zabbix-web-mysql zabbix-web zabbix-agent zabbix-sender
Zabbix需要數據庫的支持,我選用的是MySQL,安裝在了本端,使用yum安裝即可。需要下載內容約10MB。
[root@linux-node1 ~]# yum install -y mysql-server
MySQL安裝完成之後,需要修改/etc/my.cnf配置文件,添加2行內容。(有註釋的2行)
[root@linux-node1 ~]# vim /etc/my.cnf [mysqld] datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock user=mysql # Disabling symbolic-links is recommended to prevent assorted security risks symbolic-links=0 character-set-server=utf8 #指定字符集爲utf8,重要。 innodb_file_per_table=1 #讓innodeb的每個表文件單獨存儲 [mysqld_safe] log-error=/var/log/mysqld.log pid-file=/var/run/mysqld/mysqld.pid
將MySQL服務設置爲開機自啓動,然後開啓MySQL服務。
[root@linux-node1 ~]# chkconfig mysqld on [root@linux-node1 ~]# chkconfig --list mysqld mysqld 0:關閉 1:關閉 2:啓用 3:啓用 4:啓用 5:啓用 6:關閉 [root@linux-node1 ~]# /etc/init.d/mysqld start [root@linux-node1 ~]# /etc/init.d/mysqld status mysqld (pid 2009) 正在運行...
給MySQL設置root用戶管理密碼,例如我設置的密碼爲oldboy。
[root@linux-node1 ~]# mysqladmin -uroot password oldboy
進入MySQL,創建Zabbix所需要的庫和用戶。
[root@linux-node1 ~]# mysql -uroot -poldboy mysql> create database zabbix character set utf8; Query OK, 1 row affected (0.00 sec) mysql> grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix'; Query OK, 0 rows affected (0.00 sec) mysql> flush privileges; Query OK, 0 rows affected (0.00 sec) mysql> quit; Bye
再次進入MySQL中,導入Zabbix的數據庫
[root@linux-node1 ~]# mysql -uroot -poldboy mysql> use zabbix Database changed mysql> source /usr/share/doc/zabbix-server-mysql-2.4.7/create/schema.sql; mysql> source /usr/share/doc/zabbix-server-mysql-2.4.7/create/images.sql; mysql> source /usr/share/doc/zabbix-server-mysql-2.4.7/create/data.sql; mysql> quit; Bye
查看一下現在的Zabbix_Server配置文件內容。
[root@linux-node1 ~]# egrep -v "(^#|^$)" /etc/zabbix/zabbix_server.conf LogFile=/var/log/zabbix/zabbix_server.log LogFileSize=0 PidFile=/var/run/zabbix/zabbix_server.pid DBName=zabbix DBUser=zabbix DBSocket=/var/lib/mysql/mysql.sock SNMPTrapperFile=/var/log/snmptt/snmptt.log AlertScriptsPath=/usr/lib/zabbix/alertscripts ExternalScripts=/usr/lib/zabbix/externalscripts
對此配置文件進行編輯,增加一行數據庫的密碼設置,密碼設置爲zabbix,即有註釋的1行。默認在配置文件的第106行。
[root@linux-node1 ~]# egrep -v "(^#|^$)" /etc/zabbix/zabbix_server.conf LogFile=/var/log/zabbix/zabbix_server.log LogFileSize=0 PidFile=/var/run/zabbix/zabbix_server.pid DBName=zabbix DBUser=zabbix DBPassword=zabbix #設置數據庫密碼爲zabbix DBSocket=/var/lib/mysql/mysql.sock SNMPTrapperFile=/var/log/snmptt/snmptt.log AlertScriptsPath=/usr/lib/zabbix/alertscripts ExternalScripts=/usr/lib/zabbix/externalscripts
創建Zabbix所需要的相關目錄。
[root@linux-node1 ~]# mkdir /etc/zabbix/alertscripts [root@linux-node1 ~]# mkdir /etc/zabbix/externalscripts
啓動Zabbix-Server服務,設置Zabbix-Server和httpd服務爲開機自啓動。
[root@linux-node1 ~]# /etc/init.d/zabbix-server start Starting Zabbix server: [確定] [root@linux-node1 ~]# chkconfig zabbix-server on [root@linux-node1 ~]# chkconfig httpd on [root@linux-node1 ~]# chkconfig --list zabbix-server zabbix-server 0:關閉 1:關閉 2:啓用 3:啓用 4:啓用 5:啓用 6:關閉 [root@linux-node1 ~]# chkconfig --list httpd httpd 0:關閉 1:關閉 2:啓用 3:啓用 4:啓用 5:啓用 6:關閉
配置iptables設置(爲了省事我就直接關閉服務了),禁用selinux功能。
[root@linux-node1 ~]# /etc/init.d/iptables stop [root@linux-node1 ~]# chkconfig iptables off [root@linux-node1 ~]# chkconfig --list iptables iptables 0:關閉 1:關閉 2:關閉 3:關閉 4:關閉 5:關閉 6:關閉 [root@linux-node1 ~]# setenforce 0 setenforce: SELinux is disabled [root@linux-node1 ~]# getenforce Disabled
編輯php配置文件,指定date.timezong(時區)爲亞洲上海,默認在946行。
[root@linux-node1 ~]# egrep -v "(^;|^$)" /etc/php.ini |grep date.timezone date.timezone = Asia/Shanghai
啓動httpd服務。
[root@linux-node1 ~]# /etc/init.d/httpd start
命令行下的初步安裝已經完成,下面進入Web界面的安裝過程。
我的本機IP地址爲10.19.1.19,所以我使用瀏覽器訪問http://10.19.1.19/zabbix
[root@linux-node1 ~]# ifconfig | awk -F '[inet addr:| ]+' 'NR==2{print $2}' 10.19.1.19
點擊“Next”按鈕
本界面檢查Zabbix-Server所需要的環境,如果全部都是“OK”就繼續點擊“Next”按鈕,如果其中有非“OK”的項目,請按照提示進行修改即可。
本頁面是連接數據庫的配置,我們使用的是MySQL數據庫,數據庫是本機的localhost的,端口使用默認,數據庫名字是zabbix,用戶名是zabbix,密碼也是zabbix。(密碼是在創建數據庫時指定的,如當時設置的不是zabbix,請按自己的實際情況進行修改,另外/etc/zabbix/zabbix_server.conf配置文件中的DBPassword項內容也需要更改)點擊“Test connection”按鈕後提示“OK”則爲成功,可以點擊“Next”按鈕進行下一步。
本頁面中需要指定Zabbix-Server的地址與端口,建議保持默認,Name一項可以根據自己的喜好填寫,在Zabbix安裝完成之後,頁面中顯示的名字即爲此名,我設置的Name爲Radish。設置完成後點擊“Next”按鈕進入下一步。
本頁面是讓你確信設置的信息是否有誤,如果都沒有問題,直接點擊“Next”按鈕進入下一步。
本頁面顯示配置文件創建成功,點擊“Finish”按鈕完成Zabbix-Server的頁面安裝,進入Zabbix-Server的登錄頁面。