【实验环境】
系统:Rhel6.3_x64 
平台:LAMP
IP 分配:
192.168.30.105         服务器

注意:LAMP 编译参数应包括如下:
./configure --prefix=/usr/local/php  \
--with-apxs2=/usr/local/apache/bin/apxs \
--with-config-file-path=/etc \
--with-freetype-dir --with-jpeg-dir \
--with-png-dir --enable-zip \
--with-zlib --enable-xml  \
--with-gd  --with-mhash  \
--with-libxml-dir=/usr  --enable-mbstring  \
--enable-fpm --with-fpm-user=fpmuser \
--with-fpm-group=fpmuser --disable-ipv6 \
--enable-sockets --with-openssl \
--with-bz2 --with-curl --enable-dba=shared \
--with-pcre-dir --with-gd --with-jpeg-dir --with-png-dir \
--with-zlib-dir --enable-mbstring \
--with-mysql=/usr/local/mysql/ \
--with-mysql-sock=/tmp/mysql.sock \
--with-mysqli=/usr/local/mysql/bin/mysql_config \
--enable-bcmath  --with-gettext 

查看php所安装的模块:
php -m  检查是否包括以下内容
bcmath ,mbstring ,sockets, gd ,gd PNG support ,gd JPEG support ,gd FreeType support ,libxml,
xmlwriter, xmlreader ,ctype , session ,gettext

如果没有包含进去的,应该重新编译Php,安装的时候有PHP环境检测

1、下载zabbix
http://www.zabbix.com/download.php
我下载的是zabbix-2.0.5 的版本

2、安装zabbix所需的组件
[root@server ~]# yum -y install curl curl-devel net-snmp net-snmp-devel perl-DBI php-gd php-xml php-bcmath gd gd-devel
注:gd-devel没有安装上去将无法在web端安装过去

[root@server zabbix]# tar zxvf zabbix-2.0.5.tar.gz
[root@server zabbix]# groupadd zabbix
[root@server zabbix]# useradd -g zabbix -m zabbix

3、创建数据库并导入数据
[root@server zabbix -2.0.5 ]# service mysql start 
[root@server zabbix -2.0.5 ]# mysqladmin -u root password 123123
[root@server zabbix -2.0.5 ]# mysql -uroot -p123123
mysql> create database zabbix;
Query OK, 1 row affected (0.02 sec)

mysql> grant all privileges on zabbix.* to zabbix@loaclhost identified by 'zabbix';
Query OK, 0 rows affected (0.00 sec)

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

[root@server zabbix-2.0.5]# mysql -uroot -p123123 zabbix < database/mysql/schema.sql
[root@server zabbix-2.0.5]# mysql -uroot -p123123 zabbix < database/mysql/p_w_picpaths.sql
[root@server zabbix-2.0.5]# mysql -uroot -p123123 zabbix < database/mysql/data.sql

注:在zabbix -1.x 的版本中,数据库文件放置的路径不同,是在解压目录下的
mysql -uroot -p123123 zabbix < create/data/data.sql
mysql -uroot -p123123 zabbix < create/schema/mysql.sql
mysql -uroot -p123123 zabbix < create/data/p_w_picpaths_mysql.sql

4、编译安装zabbix
[root@server zabbix-2.0.5 ]# ./configure  --prefix=/usr/local/zabbix --enable-server --enable-agent --enable-proxy --with-mysql=/usr/local/mysql/bin/mysql_config --with-net-snmp --with-libcurl

--enable-server 支持zabbix服务器
--enable-agent支持zabbix代理
--enable-proxy 支持zabbix代理服务器
--with-libcurl 使用curl包

[root@server zabbix-2.0.5 ]# make && make install

5、添加zabbix服务对应的端口(可以省略,但是官方建议有)
[root@server ~]# 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

6、创建zabbix 的web目录并将相关文件拷贝进去
[root@server ~]# mkdir /usr/local/zabbix/web
[root@server ~]# cd zabbix/zabbix-2.0.5
[root@server zabbix-2.0.5]# cp -r frontends/php/* /usr/local/zabbix/web/

注:在zabbix 1.x 的版本编译安装完之后配置文件是不在/usr/local/zabbix/etc/ 下的 ,需要另外拷贝
#  mkdir /etc/zabbix  
#  cp misc/conf/* /etc/zabbix 

修改zabbix连接的数据库的用户名和密码
[root@server zabbix-2.0.5]# vim /usl/local/zabbix/etc/zabbix_server.conf 
DBName=zabbix
DBUser=zabbix 
DBPassword=zabbix

7、为zabbix的启动、关闭和重启的脚本文件做链接,方便系统可以找得到
[root@server ~]# ln -s /usr/local/zabbix/bin/* /usr/bin/
[root@server ~]# ln -s /usr/local/zabbix/sbin/* /usr/sbin/

8、把mysql的lib库文件添加到系统动态库配置文件中,方便系统可以找到mysql的lib库。  
[root@server ~]# echo "/usr/local/mysql/lib/" >> /etc/ld.so.conf
[root@server ~]# ldconfig

9、将zabbix相关的启动脚本等文件拷贝的/etc/init.d/下,方便日后对zabbix的启动关闭操作
[root@server zabbix-2.0.5 ]# cp misc/init.d/fedora/core/zabbix_* /etc/init.d/

注意:如果当前系统是redhat的,在zabbix-1.x 的版本中,启动项有redhat的
[root@server zabbix-1.8.16]# cp misc/init.d/redhat/8.0/zabbix_server /etc/init.d/
[root@server zabbix-1.8.16]# chmod +x /etc/init.d/zabbix_server 
[root@server zabbix-1.8.16]# cp misc/init.d/redhat/8.0/zabbix_agentd /etc/init.d/
[root@server zabbix-1.8.16]# chmod +x /etc/init.d/zabbix_agentd 

修改zabbix server和agentd程序目录的位置:
[root@server zabbix-2.0.5]# vim /etc/init.d/zabbix_server
 BASEDIR=/usr/local/zabbix                      // 设置好zabbix 的安装目录

[root@server zabbix-2.0.5]# vim /etc/init.d/zabbix_agentd
 BASEDIR=/usr/local/zabbix                      // 设置好zabbix 的安装目录


注意:在zabbix-1.x 的版本配置如下:
[root@server zabbix-1.8.16]# vim /etc/init.d/zabbix_server 
progdir="/usr/local/zabbix/sbin/"
[root@server zabbix-1.8.16]# vim /etc/init.d/zabbix_agentd
progdir="/usr/local/zabbix/sbin/"

10、添加开机启动服务
[root@server zabbix-2.0.5]# chkconfig --add zabbix_server
[root@server zabbix-2.0.5]# chkconfig --add zabbix_agentd
[root@server zabbix-2.0.5]# chkconfig --level 345 zabbix_server on
[root@server zabbix-2.0.5]# chkconfig --level 345 zabbix_agentd on

11、在apache中添加虚拟目录
[root@server zabbix-2.0.5]# vim /usr/local/apache/conf/httpd.conf
# setting for zabbix
Alias /zabbix "/usr/local/zabbix/web/"
<Directory "/usr/local/zabbix/web/">
# SSLRequireSSL 
Options None
AllowOverride None
Order allow,deny 
Allow from all
</Directory>

12、对php配置文件做相应的调整,使其满足zabbix运行的最低环境要求
[root@server zabbix-2.0.5]# vim /etc/php.ini 
date.timezone = Asia/Shanghai
post_max_size = 16M
max_execution_time = 300
max_input_time = 300

重启php 和 apache 服务
[root@server zabbix-2.0.5]# netstat -nultp |grep php
tcp        0      0 127.0.0.1:9000              0.0.0.0:*                   LISTEN      17105/php-fpm       
[root@server zabbix-2.0.5]# kill 17105
[root@server zabbix-2.0.5]# /usr/local/php/sbin/php-fpm 
[root@server ~]# service httpd restart


[root@server zabbix-2.0.5]# /etc/init.d/zabbix_server start
Starting zabbix_server:                                       [  OK  ]

[root@server zabbix-2.0.5]# /etc/init.d/zabbix_agentd start
Starting zabbix_agentd:                                    [  OK  ]

用浏览器访问  http://IP/zabbix

如果看到页面能正常显示,但是却有类似上面的报错信息,那是因为php5.3 的问题,即使在php.ini 里面设置了data.timezone 也还是会报错,那么根据相关提示处理即可。看到最后提示include/page_header.php (这是重点)
[root@server create]# vim /usr/local/zabbix/web/include/page_header.php
添加:
date_default_timezone_set('Asia/Shanghai');

点击next 之后,可以看到php 的检查,根据提示,修改php.ini 使其满足要求即可(修改完记得重启)

[root@server create]# vim /usr/local/php/lib/php.ini





[root@server ~]# chown -R zabbix.zabbix /usr/local/zabbix/web/conf
[root@server ~]# chmod -R 777 /usr/local/zabbix/web/conf/


默认账号是admin
密码是zabbix