[iyunv@localhost ~]# yum install -y php-gd php-bcmath php-xml php-mysql php-net-socket php-mbstring
========================================================================================================================================== Package Arch Version Repository Size==========================================================================================================================================Installing: php-bcmath i386 5.1.6-27.el5_5.3 updates 35 k
Transaction Summary==========================================================================================================================================Install 1 Package(s)Upgrade 0 Package(s)
Total download size: 35 k
[iyunv@localhost ~]# wget http://prdownloads.sourceforge.net/zabbix/zabbix-1.8.4.tar.gz?download[iyunv@localhost ~]# tar zxf zabbix-1.8.4.tar.gz[iyunv@localhost ~]# cd zabbix-1.8.4
[iyunv@localhost zabbix-1.8.4]# groupadd zabbix[iyunv@localhost zabbix-1.8.4]# useradd zabbix -g zabbix
[iyunv@localhost zabbix-1.8.4]# mysql -uroot -p----nagiosmysql> create database zabbix character set utf8;mysql> grant all on zabbix.* to zabbix@localhost identified by 'zabbix';
[iyunv@localhost zabbix-1.8.4]# mysql -uroot -p zabbix < create/schema/mysql.sql[iyunv@localhost zabbix-1.8.4]# mysql -uroot -p zabbix < create/data/data.sql[iyunv@localhost zabbix-1.8.4]# mysql -uroot -p zabbix < create/data/images_mysql.sql
[iyunv@localhost zabbix-1.8.4]# yum install curl curl-devel
========================================================================================================================================== Package Arch Version Repository Size==========================================================================================================================================Installing: curl-devel i386 7.15.5-9.el5 base 308 kInstalling for dependencies: libidn-devel i386 0.6.5-1.1 base 239 k
Transaction Summary==========================================================================================================================================Install 2 Package(s)Upgrade 0 Package(s)
Total download size: 547 k
[iyunv@localhost zabbix-1.8.4]# ./configure -enable-server -enable-proxy -enable-agent -with-mysql=/usr/bin/mysql_config -with-net-snmp -with-libcurl
Configuration:
Detected OS: linux-gnu Install path: /usr/local Compilation arch: linux
Compiler: gcc Compiler flags: -g -O2 -I/usr/include/mysql -g -pipe -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -fasynchronous-unwind-tables -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -fno-strict-aliasing -fwrapv -I/usr/include/rpm -I/usr/local/include -I/usr/include/gdbm -I/usr/lib/perl5/5.8.8/i386-linux-thread-multi/CORE -I. -I/usr/include/net-snmp
Enable server: yes Server details: With database: MySQL WEB Monitoring via: cURL Native Jabber: no SNMP: net-snmp IPMI: no SSH: no Linker flags: -rdynamic -L/usr/lib/mysql -L/usr/lib -L/usr/kerberos/lib -lcurl -ldl -lgssapi_krb5 -lkrb5 -lk5crypto -lcom_err -lidn -lssl -lcrypto -lz -L/usr/lib -lnetsnmp -lcrypto -lm -L/usr/lib/lib -lwrap -lcrypto -L/usr/lib -lnetsnmp -lcrypto -lm -L/usr/lib/lib -lwrap -lcrypto Libraries: -lm -lresolv -lmysqlclient -lcurl -lnetsnmp
Enable proxy: yes Proxy details: With database: MySQL SNMP: net-snmp IPMI: no SSH: no Linker flags: -rdynamic -L/usr/lib/mysql -L/usr/lib -L/usr/kerberos/lib -lcurl -ldl -lgssapi_krb5 -lkrb5 -lk5crypto -lcom_err -lidn -lssl -lcrypto -lz -L/usr/lib -lnetsnmp -lcrypto -lm -L/usr/lib/lib -lwrap -lcrypto -L/usr/lib -lnetsnmp -lcrypto -lm -L/usr/lib/lib -lwrap -lcrypto Libraries: -lm -lresolv -lmysqlclient -lcurl -lnetsnmp
Enable agent: yes Agent details: Linker flags: -rdynamic Libraries: -lm -lresolv
LDAP support: no IPv6 support: no
[iyunv@localhost zabbix-1.8.4]# make install
---服务端口定义[iyunv@localhost zabbix-1.8.4]# vi /etc/serviceszabbix-agent 10050/tcp Zabbix Agent zabbix-agent 10050/udp Zabbix Agentzabbix-trapper 10051/tcp Zabbix Trapperzabbix-trapper 10051/udp Zabbix Trapper---复制配置文件[iyunv@localhost zabbix-1.8.4]# mkdir /etc/zabbix[iyunv@localhost zabbix-1.8.4]# cp misc/conf/zabbix_server.conf /etc/zabbix/[iyunv@localhost zabbix-1.8.4]# cp misc/conf/zabbix_proxy.conf /etc/zabbix/[iyunv@localhost zabbix-1.8.4]# cp misc/conf/zabbix_agent.conf /etc/zabbix/[iyunv@localhost zabbix-1.8.4]# cp misc/conf/zabbix_agentd.conf /etc/zabbix/---修改 zabbix server 配置文件[iyunv@localhost zabbix-1.8.4]# vi /etc/zabbix/zabbix_server.confDBUser=zabbixDBPassword=zabbix---安装启动脚本[iyunv@localhost zabbix-1.8.4]# cp misc/init.d/redhat/zabbix_server_ctl /etc/init.d/zabbix_server[iyunv@localhost zabbix-1.8.4]# cp misc/init.d/redhat/zabbix_agentd_ctl /etc/init.d/zabbix_agentd---添加可执行权限[iyunv@localhost zabbix-1.8.4]# chmod +x /etc/init.d/zabbix_server[iyunv@localhost zabbix-1.8.4]# chmod +x /etc/init.d/zabbix_agentd
[iyunv@localhost zabbix-1.8.4]# more /etc/init.d/zabbix_*::::::::::::::/etc/init.d/zabbix_agentd::::::::::::::#!/bin/sh# chkconfig: - 95 95# description: Zabbix Agent## zabbix_agentd_ctl ## control script to stop/start/restart zabbix_agentd# author: charlie collins# date: 01.21.2002## revised 09.21.2003# (setup for Red Hat 7.3 with Zabbix 1.0 beta)# (should work for other Red Hat and Sys V style init machines as well)## (modeled after apache style control scripts)# (this script can be placed in init.d and respective runlevel for startup usage)# ## The exit codes returned are:# 0 - operation completed successfully# 1 - # 2 - usage error# 3 - zabbix_agentd could not be started# 4 - zabbix_agentd could not be stopped# 5 - zabbix_agentd could not be started during a restart# 6 - zabbix_agentd could not be restarted during a restart###
# **************# config options# **************## (set config options to match your system settings)
# base zabbix dir# BASEDIR=/opt/zabbixBASEDIR=/usr/local/sbin# pid file (as of 1.0 beta 10)PIDFILE=/var/tmp/zabbix_agentd.pid# binary file# ZABBIX_AGENTD=$BASEDIR/sbin/zabbix_agentdZABBIX_SUCKERD=$BASEDIR/zabbix_server
# **************# logic section (below here) does NOT normally need any modification# **************
# establish argsERROR=0ARGV="$@"if [ "x$ARGV" = "x" ] ; then ARGS="help"fi
# perform action based on argsfor ARG in $@ $ARGSdo # check if PIDFILE exists and ensure is not zero size and react accordingly if [ -f $PIDFILE ] && [ -s $PIDFILE ] ; then PID=`cat $PIDFILE` if [ "x$PID" != "x" ] && kill -0 $PID 2>/dev/null ; then STATUS="zabbix_agentd (pid $PID) running" RUNNING=1 else STATUS="zabbix_agentd (pid $PID?) not running" RUNNING=0 fi else STATUS="zabbix_agentd (no pid file) not running" RUNNING=0 fi
# parse arg and react accordingly case $ARG in start) if [ $RUNNING -eq 1 ]; then echo "$0 $ARG: zabbix_agentd (pid $PID) already running" continue fi if $ZABBIX_AGENTD ; then echo "$0 $ARG: zabbix_agentd started" else echo "$0 $ARG: zabbix_agentd could not be started" ERROR=3 fi ;; stop) if [ $RUNNING -eq 0 ]; then echo "stop called - in running eq 0" echo "$0 $ARG: $STATUS" continue fi if kill $PID ; then echo "$0 $ARG: zabbix_agentd process(es) stopped" else echo "$0 $ARG: zabbix_agentd process(es) could not be stopped" ERROR=4 fi ;; restart) if [ $RUNNING -eq 0 ]; then echo "$0 $ARG: zabbix_agentd not running, trying to start" if $ZABBIX_AGENTD ; then echo "$0 $ARG: zabbix_agentd started" else echo "$0 $ARG: zabbix_agentd could not be started" ERROR=5 fi else if kill $PID ; then if $ZABBIX_AGENTD ; then echo "$0 $ARG: zabbix_agentd restarted" else echo "$0 $ARG: zabbix_agentd could not be started" ERROR=3 fi else echo "$0 $ARG: zabbix_agentd could not be restarted" ERROR=6 fi fi ;; *)
echo "usage: $0 (start|stop|restart|help)" cat <<EOF
start - start zabbix_agentdstop - stop zabbix_agentdrestart - restart zabbix_agentd if running by sending a SIGHUP or start if not runninghelp - this screen
EOF
ERROR=2 ;;
esac
done
exit $ERROR
::::::::::::::/etc/init.d/zabbix_server::::::::::::::#!/bin/sh# chkconfig: - 95 95# description: Zabbix Server## zabbix_server_ctl ## control script to stop/start/restart zabbix_server# author: charlie collins# date: 01.21.2002## revised 09.21.2003# (setup for Red Hat 7.3 with Zabbix 1.0 beta)# (should work for other Red Hat and Sys V style init machines as well)## (modeled after apache style control scripts)# (this script can be placed in init.d and respective runlevel for startup usage)# ## The exit codes returned are:# 0 - operation completed successfully# 1 - # 2 - usage error# 3 - zabbix_server could not be started# 4 - zabbix_server could not be stopped# 5 - zabbix_server could not be started during a restart# 6 - zabbix_server could not be restarted during a restart###
# **************# config options# **************## (set config options to match your system settings)
# base zabbix dir# BASEDIR=/opt/zabbixBASEDIR=/usr/local/sbin# PID filePIDFILE=/var/tmp/zabbix_server.pid# binary file# ZABBIX_SUCKERD=$BASEDIR/sbin/zabbix_serverZABBIX_SUCKERD=$BASEDIR/zabbix_server
# **************# logic section (below here) does NOT normally need any modification# **************
# establish argsERROR=0ARGV="$@"if [ "x$ARGV" = "x" ] ; then ARGS="help"fi
# perform action based on argsfor ARG in $@ $ARGSdo # check if PIDFILE exists and ensure is not zero size and react accordingly if [ -f $PIDFILE ] && [ -s $PIDFILE ] ; then PID=`cat $PIDFILE` if [ "x$PID" != "x" ] && kill -0 $PID 2>/dev/null ; then STATUS="zabbix_server (pid $PID) running" RUNNING=1 else STATUS="zabbix_server (pid $PID?) not running" RUNNING=0 fi else STATUS="zabbix_server (no pid file) not running" RUNNING=0 fi
# parse arg and react accordingly case $ARG in start) if [ $RUNNING -eq 1 ]; then echo "$0 $ARG: zabbix_server (pid $PID) already running" continue fi if $ZABBIX_SUCKERD ; then echo "$0 $ARG: zabbix_server started" else echo "$0 $ARG: zabbix_server could not be started" ERROR=3 fi ;; stop) if [ $RUNNING -eq 0 ]; then echo "stop called - in running eq 0" echo "$0 $ARG: $STATUS" continue fi if kill $PID ; then echo "$0 $ARG: zabbix_server process(es) stopped" else echo "$0 $ARG: zabbix_server process(es) could not be stopped" ERROR=4 fi ;; restart) if [ $RUNNING -eq 0 ]; then echo "$0 $ARG: zabbix_server not running, trying to start" if $ZABBIX_SUCKERD ; then echo "$0 $ARG: zabbix_server started" else echo "$0 $ARG: zabbix_server could not be started" ERROR=5 fi else if kill $PID ; then if $ZABBIX_SUCKERD ; then echo "$0 $ARG: zabbix_server restarted" else echo "$0 $ARG: zabbix_server could not be started" ERROR=3 fi else echo "$0 $ARG: zabbix_server could not be restarted" ERROR=6 fi fi ;; *)
echo "usage: $0 (start|stop|restart|help)" cat <<EOF
start - start zabbix_serverstop - stop zabbix_serverrestart - restart zabbix_server if running by sending a SIGHUP or start if not runninghelp - this screen
EOF
ERROR=2 ;;
esac
done
exit $ERROR
[iyunv@localhost init.d]# chkconfig --add zabbix_server[iyunv@localhost init.d]# chkconfig --add zabbix_agentd[iyunv@localhost init.d]# chkconfig --level 345 zabbix_server on[iyunv@localhost init.d]# chkconfig --level 345 zabbix_agentd on
---启动 Zabbix[iyunv@localhost zabbix-1.8.4]# /etc/init.d/zabbix_server start[iyunv@localhost zabbix-1.8.4]# /etc/init.d/zabbix_agentd start---复制 Web Interface 到 web 目录[iyunv@localhost zabbix-1.8.4]# mkdir -p /var/www/html/zabbix[iyunv@localhost zabbix-1.8.4]# cp -r frontends/php/* /var/www/html/zabbix
[iyunv@localhost zabbix-1.8.4]# service httpd restart
[iyunv@localhost flash]# cd /etc[iyunv@localhost etc]# vi php.ini date.timezone = Asia/Chongqingpost_max_size = 16Mmax_execution_time = 300max_input_time = 300
[iyunv@localhost zabbix-1.8.4]# service httpd restart
Current valueRequiredRecommended PHP version5.1.65.05.3.0OkPHP memory limit128M128M256MOkPHP post max size16M16M32MOkPHP upload max filesize2M2M16MOkPHP max execution time300300600OkPHP max input time300300600OkPHP timezoneAsia/Chongqing OkPHP databases supportMySQL OkPHP BC mathyes OkPHP MB stringyes OkPHP Socketsyes OkPHP Sessionyes OkPHP GD2.0.282.02.0.34OkGD PNG Supportyes Oklibxml module2.6.262.6.152.7.6Okctype moduleyes Ok
Database type:MySQLDatabase server:localhostDatabase port:0Database name:zabbixDatabase user:zabbixDatabase password:******
Zabbix server:localhostZabbix server port:10051Zabbix server name:zabbix