CentOS 6.7 mininal 源碼安裝Zabbix-3.0.1
1、環境準備
Lnmp架構
wget -c https://api.sinas3.com/v1/SAE_lnmp/soft/lnmp1.3beta-full.tar.gz 下載下傳時wget需要加--no-check-certificate參數 #lnmp一鍵安裝很好用,生産不建議使用
2、系統設定
CentOS 6.7 IP:192.168.5.5
關閉防火牆:
[root@master mysql]# service iptables stop
iptables: Setting chains to policy ACCEPT: nat filter [ OK ]
iptables: Flushing firewall rules: [ OK ]
iptables: Unloading modules: [ OK ]
[root@master mysql]# service iptables status
iptables: Firewall is not running.
[root@master mysql]# chkconfig iptables off
禁用selinux
[root@master mysql]# sed -i 's/SELINUX=enforceing/SELINUX=disabled/' /etc/sysconfig/selinux
[root@master mysql]# getenforce
Disabled
#禁用selinux需要重新開機使生效
[root@master mysql]# setenforce 0 #使selinux設定臨時生效
3、安裝Zabbix源碼包
建立Zabbix使用者組及使用者
groupadd zabbix
useradd -g zabbix zabbix -s /bin/nologin
安裝依賴包
yum install net-snmp-devel curl curl-devel mysql-devel -y
#
yum -y install mysql-devel libdbi-dbd-mysql unixODBC-devel OpenIPMI-devel java-devel
yum install php-pecl-ssh2.x86_64 libssh2-devel.x86_64 openldap openldap-devel
#此步驟如果在搭建lnmp時已經完成,可跳過此步驟
下載下傳Zabbix源碼包
http://sourceforge.net/projects/zabbix/files/ZABBIX Latest Stable/3.0.1/zabbix-3.0.1.tar.gz
wget -c -url -P /usr/local/src #源碼包的一般存放位置
[root@master ~]# cd /usr/local/src/
[root@master src]# tar -zxvf zabbix-3.0.1.tar.gz && cd zabbix-3.0.1
[root@master zabbix-3.0.1]# ./configure --help | less #檢視configure支援的參數
[root@master zabbix-3.0.1]# ./configure --prefix=/opt/zabbix --enable-server --enable-agent --enable-ipv6 --with-net-snmp --with-libcurl --with-libxml2 --enable-java --with-ssh2 --with-openssl --with-openipmi --with-mysql=/usr/local/mysql/bin/mysql_config
注:--with-libcurl configuration option with cURL 7.20.0 or higher is required for SMTP authentication, supported since Zabbix 3.0.0.

出現上圖界面表示已經configure完成,然後編譯
[root@master zabbix-3.0.1]# make && make install
#編譯需要等待一會
出現上圖表示Zabbix編譯完成。
4、建立一個名為zabbix的資料庫,并配置相關檔案
可以通過mysql -e參數免登陸mysql建立zabbix使用者及zabbix資料庫
設定方法:
cat >> ~/.my.cnf << EOF
[client]
password="password"
user=root
EOF
#password = "MySQL密碼"
#user = MySQL 使用者名
#其中user 行可以省略, 預設使用目前的使用者名填充mysql的登入使用者
mysql -e "create database zabbix character set utf8 collate utf8_bin;"
mysql -e "grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix';"
mysql -e "flush privileges;"
或者登陸mysql之後建立:
[root@master scripts]# mysql -u root -p
#
shell> mysql -uroot -p
mysql> create database zabbix character set utf8 collate utf8_bin;
mysql> grant all privileges on zabbix.* to zabbix@localhost identified by '';
mysql> quit;
shell> cd database/mysql
shell> mysql -uzabbix -p zabbix < schema.sql
# stop here if you are creating database for Zabbix proxy
shell> mysql -uzabbix -p zabbix < images.sql
shell> mysql -uzabbix -p zabbix < data.sql
或者
shell> mysql -uroot -p
mysql>use zabbix;
mysql>source /usr/local/src/zabbix-3.0.1/database/mysql/schema.sql
mysql>source /usr/local/src/zabbix-3.0.1/database/mysql/images.sql
mysql>source /usr/local/src/zabbix-3.0.1/database/mysql/data.sql
設定zabbix啟動服務
root@master core]# cp /usr/local/src/zabbix-3.0.1/misc/init.d/fedora/core/zabbix_* /etc/rc.d/init.d/
[root@master core]# chmod 744 /etc/init.d/zabbix_*
[root@master core]# sed -i "s#BASEDIR=/usr/local#BASEDIR=/opt/zabbix#g" /etc/init.d/zabbix_*
#拷貝zabbix前端程式到web應用目錄下
root@master zabbix-3.0.1]# cp -rf /usr/local/src/zabbix-3.0.1/frontends/php /home/wwwroot/default/zabbix
[root@master zabbix-3.0.1]# chown -R zabbix:zabbix /home/wwwroot/default/zabbix #授權
#服務端口設定
cat >>/etc/services <<EOF
zabbix-agent 10050/tcp #Zabbix Agent
zabbix-agent 10050/udp #Zabbix Agent
zabbix-trapper 10051/tcp #Zabbix Trapper
zabbix-trapper 10051/udp #Zabbix Trapper
EOF
#編輯zabbix_server.conf檔案
sed -i "s/#\ DBPassword=/DBPassword=zabbix/g" /opt/zabbix/etc/zabbix_server.conf
sed -i "s/#\ DBHost=localhost/DBHost=localhost/g" /opt/zabbix/etc/zabbix_server.conf
sed -i "s/#\ DBSocket=\/tmp\/mysql.sock/DBSocket=/tmp/mysql.sock/g" /opt/zabbix/etc/zabbix_server.conf
sed -i "s#tmp/zabbix_server.log#var/log/zabbix/zabbix_server.log#g" /opt/zabbix/etc/zabbix_server.conf
sed -i "s#tmp/zabbix_server.pid#opt/zabbix/pid/zabbix_server.pid#g" /opt/zabbix/etc/zabbix_server.conf
sed -i "s/#\ Timeout=3/Timeout=5/g" /opt/zabbix/etc/zabbix_server.conf
#修改php.ini 支援zabbix
sed -i "s/;always_populate_raw_post_data = -1/always_populate_raw_post_data = -1/g" /usr/local/php/etc/php.ini
sed -i "s/max_input_time = 60/max_input_time = 300/g" /usr/local/php/etc/php.ini
#修改php配置檔案完成之後重新開機php-fpm
/etc/init.d/php-fpm restart
#edit zabbix_agentd.conf file
sed -i "s/Server\=127.0.0.1/Server=127.0.0.1,192.168.5.5/g" /opt/zabbix/etc/zabbix_agentd.conf
sed -i "s#tmp/zabbix_agentd.log#var/log/zabbix/zabbix_agentd.log#g" /opt/zabbix/etc/zabbix_agentd.conf
sed -i "s#tmp/zabbix_agentd.pid#opt/zabbix/pid/zabbix_agentd.pid#g" /opt/zabbix/etc/zabbix_agentd.conf
sed -i "s/#\ Timeout=3/Timeout=5/g" /opt/zabbix/etc/zabbix_agentd.conf
sed -i "s/#\ Include=\/usr\/local\/etc\/zabbix_agentd.conf.d/Include=\/opt\/zabbix\/etc\/zabbix_agentd.conf.d/g" /opt/zabbix/etc/zabbix_agentd.conf
sed -i "s/#\ UnsafeUserParameters=0/UnsafeUserParameters=1/g" /opt/zabbix/etc/zabbix_agentd.conf
#[root@master zabbix-3.0.1]# egrep -v "^#|^$" /opt/zabbix/etc/zabbix_server.conf
[root@master zabbix-3.0.1]# egrep -v "^#|^$" /opt/zabbix/etc/zabbix_agentd.conf
出現下面表明配置檔案已經修改完成
啟動Zabbix server和zabbix agent并設定開機自啟動
[root@master zabbix-3.0.1]# chkconfig zabbix_agentd on
[root@master zabbix-3.0.1]# chkconfig zabbix_server on
[root@master zabbix-3.0.1]# /etc/init.d/zabbix_agentd restart
[root@master zabbix-3.0.1]# /etc/init.d/zabbix_server restart
5、Zabbix前端安裝
在浏覽器輸入http://192.168.5.5/zabbix #
點選下一步
需要修改php參數,
sed -i "s/;always_populate_raw_post_data = -1/always_populate_raw_post_data = -1/g" /usr/local/php/etc/php.ini
然後重新開機php-fpm,如果還一直報錯,則需要修改zabbix前端源碼。
vim /home/wwwroot/default/zabbix/include/classes/setup/CFrontendSetup.php
添加$current = -1;在浏覽器中重新開機重新整理
重新重新整理浏覽器,看到已經沒有報錯:
點選下一步
端口:3306 密碼:zabbix
完成點選下一步:
填寫Name:zabbix-server,可以不填寫,點選下一步:
點選下一步
出錯的原因可能是建立檔案是權限不夠,這裡直接下載下傳下來,儲存到指定的位置即可:
直接建立這個配置檔案,把下面的配置資訊複制到建立的配置檔案中,儲存。
vim /home/wwwroot/default/zabbix/conf/zabbix.conf.php