1. 下載源碼包
wget http://sourceforge.net/projects/zabbix/files/
2. 解壓
tar -zxvf zabbix-2.2.3.tar.gz
3. 進入解壓後的目錄
cd zabbix-2.2.3
4. 安裝必要軟體
yum install -y gcc make cmake mysql-server mysql-devel php php-gd php-devel php-mysql php-bcmath php-ctype php-xml php-xmlreader php-xlmwriter php-session php-net-socket php-mbstring php-gettext httpd net-snmp curl curl-devel net-snmp net-snmp-utils net-snmp-devel perl-DBI libxml2 libxml2-devel fping
5. 編譯
./configure --enable-server --enable-agent --enable-proxy --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl --with-libxml2 --with-openssl --prefix=/opt/zabbix
6.安裝
make && make install
7. 進入到包含mysql匯入指令碼的目錄
cd ./database/mysql
8.串連mysql
mysql -uroot -p
輸入密碼
9. 添加使用者和資料庫
> create database zabbix default charset utf8;
>UPDATE mysql.user SET password=PASSWORD(‘XXX’) WHERE User=’root’;
> flush privileges;
>exit
10. 匯入資料庫
mysql -uroot -p zabbix < schema.sql
mysql -uroot -p zabbix < images.sql
mysql -uroot -p zabbix < data.sql
11 . 切換到解壓後的目錄
cd ../..
12. 修改apache配置,添加虛擬機器主機
<VirtualHost *:80>
ServerName zabbix.xxxx.net
DocumentRoot /var/www/zabbix
DirectoryIndex index.php index.html index.htm
<Directory "/">
AllowOverride All
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
13.建立目錄虛擬機器主機目錄
mkdir /var/www/zabbix
14.將必要的php檔案複製到虛擬機器主機下
cp -r ./frontends/php/* /var/www/zabbix
15. 重啟apache
service httpd restart
16. 切換到zabbix的配置目錄下
cd /opt/zabbix/etc
17. 修改zabbix_server.conf配置(我的配置如下)
LogFile=/var/log/zabbix_server.log
LogFileSize=2
DBHost=localhost
DBName=zabbix
DBUser=root
DBPassword=XXX
DBSocket=/home/data/mysql/mysql.sock
StartPollers = 50
StartIPMIPollers=3
StartPollersUnreachable=10
StartTrappers=50
StartPingers=40
StartDiscoverers=10
StartHTTPPollers=20
StartTimers=20
StartVMwareCollectors=5
VMwareFrequency=45
VMwareCacheSize=256M
StartSNMPTrapper=1
HousekeepingFrequency=6
MaxHousekeeperDelete=10000
SenderFrequency=5
CacheSize=1G
CacheUpdateFrequency=60
StartDBSyncers=50
HistoryCacheSize=1G
TrendCacheSize=1G
HistoryTextCacheSize=1G
ValueCacheSize=512M
Timeout=30
UnavailableDelay=30
LogSlowQueries=3000
StartProxyPollers=10
AllowRoot=1 #讓 zabbix 進程以root使用者運行,可避免一些許可權不足的問題
18. Vi /etc/services
加入:
zabbix-agent 10050/tcp # Zabbix Agent
zabbix-agent 10050/udp # Zabbix Agent
zabbix-trapper 10051/tcp # Zabbix Trapper
zabbix-trapper 10051/udp # Zabbix Trapper
19.添加service 啟動指令碼
vi /etc/init.d/zabbix_agentd
新增內容如下:
#!/bin/sh
#chkconfig: 345 95 95
#description:Zabbix agent
# Zabbix
# Copyright (C) 2001-2013 Zabbix SIA
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
# Start/Stop the Zabbix agent daemon.
# Place a startup script in /sbin/init.d, and link to it from /sbin/rc[023].d
SERVICE="Zabbix agent"
DAEMON=/opt/zabbix/sbin/zabbix_agentd
PIDFILE=/tmp/zabbix_agentd.pid
BASEDIR=/opt/zabbix
ZABBIX_AGENTD=$BASEDIR/sbin/zabbix_agentd
case $1 in
'start')
if [ -x ${DAEMON} ]
then
$DAEMON
# Error checking here would be good...
echo "${SERVICE} started."
else
echo "Can't find file ${DAEMON}."
echo "${SERVICE} NOT started."
fi
;;
'stop')
if [ -s ${PIDFILE} ]
then
if kill `cat ${PIDFILE}` >/dev/null 2>&1
then
echo "${SERVICE} terminated."
rm -f ${PIDFILE}
fi
fi
;;
'restart')
$0 stop
sleep 10
$0 start
;;
*)
echo "Usage: $0 start|stop|restart"
;;
esac
vi /etc/init.d/zabbix_server
添加如下內容:
#!/bin/sh
#
#chkconfig:345 95 95
#description:Zabbix Server
# Zabbix
# Copyright (C) 2001-2013 Zabbix SIA
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
# Start/Stop the Zabbix server daemon.
# Place a startup script in /sbin/init.d, and link to it from /sbin/rc[023].d
SERVICE="Zabbix server"
DAEMON=/opt/zabbix/sbin/zabbix_server (需改成自己的安裝路徑)
PIDFILE=/tmp/zabbix_server.pid
BASEDIR=/opt/zabbix/ (需改成自己的安裝路徑)
ZABBIX_SERVER=$BASEDIR/sbin/zabbix_server
case $1 in
'start')
if [ -x ${DAEMON} ]
then
$DAEMON
# Error checking here would be good...
echo "${SERVICE} started."
else
echo "Can't find file ${DAEMON}."
echo "${SERVICE} NOT started."
fi
;;
'stop')
if [ -s ${PIDFILE} ]
then
if kill `cat ${PIDFILE}` >/dev/null 2>&1
then
echo "${SERVICE} terminated."
rm -f ${PIDFILE}
fi
fi
;;
'restart')
$0 stop
sleep 10
$0 start
;;
*)
echo "Usage: $0 start|stop|restart"
;;
esac
20. 賦予執行許可權
chmod a+x /etc/init.d/zabbix_agentd
chmod a+x /etc/init.d/zabbix_server
21. 添加開機啟動
chkconfig zabbix_server on
chkconfig zabbix_agentd on
22. 修改/etc/php.ini配置
將 ;date.timezone = 改成 date.timezone = "Asia/Shanghai"
將 max_execution_time = 30 改成 max_execution_time = 300
將 max_input_time = 60 改成 max_input_time = 300
23. 重啟apache
service httpd restart
24. 修改zabbix.conf.php
cp /var/www/zabbix/conf/zabbix.conf.php.example /var/www/zabbix/conf/zabbix.conf.php
vi /var/www/zabbix/conf/zabbix.conf.php 配置如下:
25.關閉防火牆
service iptables stop
setenforce 0
chkconfig ipstables off
vi /etc/selinux/config 將其中的SELINUX=enabled改成 SELINUX=disabled
26.解決中文亂碼
通過ftp軟體將C:\Windows\Fonts\simkai.ttf上傳到zabbix伺服器上的/var/www/zabbix/fonts目錄下。
vi /var/www/zabbix/include/defines.inc.php
將39行的 define('ZBX_GRAPH_FONT_NAME', 'DejaVuSans');
改成 define('ZBX_GRAPH_FONT_NAME', 'simkai');
將86行的define('ZBX_FONT_NAME', 'DejaVuSans');
改成 define('ZBX_FONT_NAME', 'simkai');
27.至此zabbix的安裝已基本完成
在瀏覽器中輸入 網域名稱或IP進行訪問
預設的zabbix系統使用者為admin 密碼為zabbix