經測試,一樣的系統安裝不一樣的zabbix版本,遇到的錯誤徹底不同,以前安裝2.4.5版本基本很順利,可是安裝3.0.2遇到了好多新的問題,特此記錄php
系統:centos6.7 zabbix版本:3.0.2html
yum -y groupinstall "Development Tools"java
(注意:zabbix3.0要求php版本要在5.4以上),可是咱們的centos6系統自帶的php版本比較低mysql
因此咱們添加新的yum源nginx
添加epel 源web
rpm -Uvh http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpmsql
添加remi 源數據庫
# rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpmvim
安裝PHPcentos
yum --enablerepo=remi,remi-php55 install php-fpm php-common php-devel php-mysqlnd php-mbstring php-mcrypt php-gd php-xml php-bcmath
查看PHP 版本
# php -v
PHP 5.5.9 (cli) (built: Feb 11 2014 08:25:33)
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2014 Zend Technologies
啓動php-fpm
# service php-fpm start
cd /usr/local/src/
wget http://nginx.org/download/nginx-1.6.2.tar.gz
tar zxvf nginx-1.6.2.tar.gz
cd nginx-1.6.2
./configure --prefix=/usr/local/nginx --with-pcre
若是這一步報錯提示./configure: error: theHTTP rewrite module requires the PCRE library.
則能夠安裝yum -y install pcre-devel 解決問題
更改配置文件nginx.conf 把這部分的註釋去掉並更改
location ~ \.php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /usr/local/nginx/html$fastcgi_script_name;
include fastcgi_params;
}
啓動nginx 服務 /usr/local/nginx/sbin/nginx-s reload
yum -y install mysqlmysql-server curl curl-devel net-snmp net-snmp-devel perl-DBI
而後啓動mysql服務
三 同步服務端的時間,保持全部服務器時間一致避免出現時間不一樣致使的不可用的監控數據
ntpdate asia.pool.ntp.rog
groupadd -g 201 zabbix
useradd -g zabbix -u201 -m zabbix
mysql>create database zabbixcharacter set utf8; 建立數據庫zabbix
mysql>
grant all privileges on zabbix.*to zabbix@localhost identified by 'zabbix';
(這步寫的用戶名和密碼必須和zabbix_server.conf配置文件裏的用戶名和密碼相同)
flush privileges;
tar zxvf zabbix-3.0.3.tar.gz
cd zabbix-3.0.3
將zabbix初始數據導入數據庫
mysql -uzabbix -pzabbixzabbix <database/mysql/schema.sql
mysql -uzabbix-pzabbix zabbix <database/mysql/p_w_picpaths.sql
mysql -uzabbix-pzabbix zabbix <database/mysql/data.sql
./configure
--prefix=/usr/local/zabbix
--enable-server--enable-agent --with-mysql --enable-ipv6--with-net-snmp --with-libcurl --with-ssh2 --enable-java ##(監控tomcat須要寫java這個)
會出現不少錯誤
error:Invalid Net-SNMP directory - unable to find net-snmp-config
yum install net-snmp-devel
configure: error: Jabber librarynot found
#yum install iksemel-devel -y 便可,
configure: error: LIBXML2library not found
#yum install libxml2-devel -y
configure: error: unixODBClibrary not found
#yum install unixODBC-devel -y
configure: error: InvalidOPENIPMI directory - unable to findipmiif.h
#yum install OpenIPMI-devel
configure: error: Curl librarynot found
# yum install curl-devel -y
configure: error: SSH2 library not found
yum install -y libssh2-devel
而後 make && make install
cpmisc/init.d/fedora/core/zabbix_server /etc/init.d/
cpmisc/init.d/fedora/core/zabbix_agentd /etc/init.d/
chmod +x/etc/init.d/zabbix_*
啓動 zabbix服務
/etc/init.d/zabbix_serverstart
/etc/init.d/zabbix_agentdstart
你會發現啓動的時候沒法啓動
解決辦法:
[root@localhost ~]# vim/etc/init.d/zabbix_server
BASEDIR=/usr/local/zabbix
[root@localhost ~]# vim /etc/init.d/zabbix_agentd
BASEDIR=/usr/local/zabbix
其中/usr/local/zabbix是你zabbix安裝的目錄
修改 vim /usr/local/zabbix/etc/zabbix_server.conf
30:LogFile=/tmp/zabbix_server.log
77:DBName=zabbix
93:DBUser=zabbix
101:DBPassword=zabbix
108:DBSocket=/var/lib/mysql/mysql.sock (要跟數據庫配置文件保持一致)
vi /etc/php.ini
date.timezone = Asia/Shanghai
max_execution_time = 300
max_input_time = 300
post_max_size = 32M
memory_limit = 128M
cd zabbi-3.0.3
cp -r frontends/php /usr/local/nginx/html/zabbix
我只把報錯的地方貼了出來。
第二步報錯:
解決辦法
vim /目錄/zabbix/include/classes/setup/CFrontendSetup.php,找到下面代碼、關於always-populate-raw-post-data;
添加 $current =-1;
以下所示:
public functioncheckPhpAlwaysPopulateRawPostData() { $current =ini_get(‘always_populate_raw_post_data‘); $current = -1; return array( ‘name‘ => _(‘PHPalways_populate_raw_post_data‘), ‘current‘ =>($current != -1) ? _(‘on‘) : _(‘off‘), ‘required‘ =>_(‘off‘), ‘result‘ =>($current != -1) ? self::CHECK_FATAL : self::CHECK_OK, ‘error‘ => _(‘PHPalways_populate_raw_post_data must be set to -1.‘) ); }
而後 再回到頁面刷新,正常:
最後一直到安裝完畢沒有再報錯
安裝完畢後,默認是不支持中文的,須要更改一個配置文件vim/usr/local/nginx/html/zabbix/include/locales.inc.php
'zh_CN' => ['name' => _('Chinese(zh_CN)'), 'display' => true], ##把false改爲true便可,而後更改語言你就看到中文了
1 php須要升級,2.4版本不須要.
2搭建網站環境,我2.4以前用的是lamp,安裝的時候沒有任何問題,可是3.0用的lamp安裝的時候不能解析php文件,故換成了lnmp。
3 zabbix2.4版本安裝完成以後默認的就支持中文,可是3.0不支持,須要你改配置文件
1安裝編譯環境
Yum install gcc*
2 增長zabbix用戶,不然沒法啓動zabbix服務
groupadd -g 201 zabbix
useradd -g zabbix -u201 -m zabbix
3 編譯安裝zabbix
tar -zxvfzabbix-3.0.3.tar.gz
cd zabbix-3.0.3
./configure --prefix=/usr/local/zabbix/ --enable-agent
make
make install
4 更改配置文件
cat /usr/local/zabbix/etc/zabbix_agentd.conf|grep-n ^[^#] 編輯下面四行
21:LogFile=/tmp/zabbix_agentd.log
81:Server=127.0.0.1,192.168.234.134 ##zabbix_server的ip
122:ServerActive=192.168.234.134:10051
133:Hostname=Zabbix server
5 啓動zabbix服務
Cp misc/init.d/fedora/core/zabbix_agentd/etc/init.d/
vim /etc/init.d/zabbix_agentd
BASEDIR=/usr/local/zabbix ## BASEDIR=實際安裝路徑
最後啓動服務/etc/init.d/zabbix_agentd start
6 測試客戶端是否與服務端正常通訊
在zabbix_server端測試
zabbix_get -s 客戶端ip -p10050 -k"system.hostname"