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