天天看點

lnmp環境下源碼安裝zabbix-3.0.1

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.

lnmp環境下源碼安裝zabbix-3.0.1

出現上圖界面表示已經configure完成,然後編譯

[root@master zabbix-3.0.1]# make && make install

#編譯需要等待一會

lnmp環境下源碼安裝zabbix-3.0.1

出現上圖表示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

出現下面表明配置檔案已經修改完成

lnmp環境下源碼安裝zabbix-3.0.1

啟動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

lnmp環境下源碼安裝zabbix-3.0.1

5、Zabbix前端安裝

在浏覽器輸入http://192.168.5.5/zabbix #

lnmp環境下源碼安裝zabbix-3.0.1

點選下一步

lnmp環境下源碼安裝zabbix-3.0.1

需要修改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;在浏覽器中重新開機重新整理

lnmp環境下源碼安裝zabbix-3.0.1

重新重新整理浏覽器,看到已經沒有報錯:

lnmp環境下源碼安裝zabbix-3.0.1

點選下一步

lnmp環境下源碼安裝zabbix-3.0.1

端口:3306 密碼:zabbix

完成點選下一步:

lnmp環境下源碼安裝zabbix-3.0.1

填寫Name:zabbix-server,可以不填寫,點選下一步:

lnmp環境下源碼安裝zabbix-3.0.1

點選下一步

lnmp環境下源碼安裝zabbix-3.0.1

出錯的原因可能是建立檔案是權限不夠,這裡直接下載下傳下來,儲存到指定的位置即可:

直接建立這個配置檔案,把下面的配置資訊複制到建立的配置檔案中,儲存。

vim /home/wwwroot/default/zabbix/conf/zabbix.conf.php