原文链接:http://www.iyunv.com/thread-282896-1-1.html

 

1.       环境

CentOS版本:CentOS release 6.5 (Final)

Apache版本:Apache/2.2.15

Mysql版本:Mysql-server 5.1.73

Php版本:PHP 5.3.3

 

 

2.       安装Apache/Mysql/PHP/snmp和其他的依赖包

通过yum安装

[root@zabbix-2 ~]#
yum –y install mysql mysql-server mysql-devel httpdtree gcc cc gcc-c++ autoconf php php-mysqlhttpd-manual mod_ssl mod_perl mod_auth_mysql php-gd php-xml php-mbstringphp-ldap php-pear php-xmlrpc php-bcmath mysql-connector-odbc mysql-devellibdbi-dbd-mysql net-snmp net-snmp-devel net-snmp-utils  net-snmp-libs curl-devel

启动mysqld/httpd/snmpd,并设置开机启动:

[root@zabbix-2 ~]# servicemysqld start
[root@zabbix-2 ~]#chkconfigmysqld on
[root@zabbix-2 ~]#service httpdstart
[root@zabbix-2 ~]#chkconfighttpd on
[root@zabbix-2 ~]#service snmpdstart
[root@zabbix-2 ~]#chkconfigsnmpd on


修改php参数:

[root@zabbix-2~]# sed -i "s@;date.timezone =@date.timezone =Asia/Shanghai@g" /etc/php.ini
[root@zabbix-2~]# sed -i "s@max_execution_time =30@max_execution_time = 300@g" /etc/php.ini
[root@zabbix-2~]# sed -i "s@post_max_size = 8M@post_max_size= 32M@g" /etc/php.ini
[root@zabbix-2~]# sed -i "s@max_input_time =60@max_input_time = 300@g" /etc/php.ini
[root@zabbix-2~]# sed -i "s@memory_limit = 128M@memory_limit= 128M@g" /etc/php.ini
[root@zabbix-2~]# sed -i "s@;mbstring.func_overload =0@ambstring.func_overload = 2@g" /etc/php.ini

修改httpd参数:

[root@zabbix-2~]#echo "ServerName localhost:80" >> /etc/httpd/conf/httpd.conf
[root@zabbix-2~]#service httpd restart

3. iptables放行端口80/3306/10050/10051

[root@zabbix-2~]# iptables -I INPUT -p tcp --dport 80 -j ACCEPT
[root@zabbix-2~]# iptables -I INPUT -p tcp --dport 3306 -j ACCEPT
[root@zabbix-2~]# iptables -I INPUT -p tcp --dport 10050 -jACCEPT 
[root@zabbix-2~]# iptables -I INPUT -p tcp --dport 10051 -jACCEPT

查看端口放行情况:

[root@zabbix-2~]# iptables -L -n
Chain INPUT(policy ACCEPT)
target     prot opt source               destination        
ACCEPT     all --  0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED
ACCEPT     icmp -- 0.0.0.0/0            0.0.0.0/0          
ACCEPT     all --  0.0.0.0/0            0.0.0.0/0          
ACCEPT     tcp --  0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:22
REJECT     all --  0.0.0.0/0            0.0.0.0/0           reject-with icmp-host-prohibited
ACCEPT     tcp --  0.0.0.0/0            0.0.0.0/0           tcp dpt:80
ACCEPT     tcp --  0.0.0.0/0            0.0.0.0/0           tcp dpt:3306
ACCEPT     tcp --  0.0.0.0/0            0.0.0.0/0           tcp dpt:10050
ACCEPT     tcp --  0.0.0.0/0            0.0.0.0/0           tcp dpt:10051
 
Chain FORWARD(policy ACCEPT)
target     prot opt source               destination        
REJECT     all --  0.0.0.0/0            0.0.0.0/0           reject-with icmp-host-prohibited
 
Chain OUTPUT(policy ACCEPT)
target     prot opt source               destination

保存iptables配置:

[root@zabbix-2~]# service iptables save

重启iptables

[root@zabbix-2~]# service iptables restart

4.       新建用户组和用户

[root@zabbix-2~]# groupadd -g 201 zabbix
[root@zabbix-2~]# useradd -g zabbix -u 201 -s /sbin/nologinzabbix

5.       后台编译安装zabbix

下载zabbix-2.4.8.tar.gz包:

[root@zabbix-2 ~]#wget https://sourceforge.net/projects/zabbix/files/ZABBIX%20Latest%20Stable/2.4.8/zabbix-2.4.8.tar.gz
[root@zabbix-2 ~]# tar -zxvfzabbix-2.4.8.tar.gz
[root@zabbix-2 ~]# cd zabbix-2.4.8

检查编译安装zabbix的环境:

[root@zabbix-2 zabbix-2.4.8]# ./configure--prefix=/usr/local/zabbix --enable-server --enable-proxy --enable-agent--with-mysql=/usr/bin/mysql_config --with-net-snmp --with-libcurl

如果有出现no的字样,说明确少相关的包,请通过yum安装。

编译安装zabbix:

[root@zabbix-2 zabbix-2.4.8]# make && make install

6.       配置mysql

进入mysql

[root@zabbix-2 zabbix-2.4.8]#mysql –uroot

新建数据库zabbix:

mysql> create databasezabbix default charset utf8;

zabbix数据库授权给zabbix用户:

mysql> grant all on zabbix.*to zabbix@localhost identified by 'zabbix';
mysql> use zabbix;

导入schema.sqlp_w_picpaths.sqldata.sql3sql文件到zabbix数据库中:

mysql> source/root/zabbix-2.4.8/database/mysql/schema.sql;
mysql> source /root/zabbix-2.4.8/database/mysql/p_w_picpaths.sql;
mysql> source/root/zabbix-2.4.8/database/mysql/data.sql;

查看导入的table是否存在zabbix数据库中:

mysql> show tables;
+-----------------------+
|Tables_in_zabbix      |
+-----------------------+
|acknowledges          |       |
|httpstep              |
|httpstepitem          ||
|usrgrp                |
|valuemaps             |
+-----------------------+
104 rowsin set (0.00 sec)
 
mysql>

7.       配置软连接和启动文件

[root@zabbix-2database]# mkdir /var/log/zabbix
[root@zabbix-2database]# chown zabbix.zabbix /var/log/zabbix
[root@zabbix-2database]# ln -s /usr/local/zabbix/etc/ /etc/zabbix
[root@zabbix-2database]# ln -s /usr/local/zabbix/bin/* /usr/bin/
[root@zabbix-2database]# ln -s /usr/local/zabbix/sbin/* /usr/sbin/

复制目录/root/zabbix-2.4.8/misc/init.d/fedora/core/下所有以zabbix_开头的文件到目录/etc/init.d下:

[root@zabbix-2database]# cp /root/zabbix-2.4.8/misc/init.d/fedora/core/zabbix_* /etc/init.d

修改/etc/init.d/下所有以zabbix_开头的文件的权限:

[root@zabbix-2database]# chmod 755 /etc/init.d/zabbix_*

修改/etc/init.d目录下的zabbix_serverzabbix_agentd启动文件:                                                    

[root@zabbix-2database]# sed -i"s@BASEDIR=/usr/local@BASEDIR=/usr/local/zabbix@g"/etc/init.d/zabbix_server
[root@zabbix-2database]# sed -i"s@BASEDIR=/usr/local@BASEDIR=/usr/local/zabbix@g"/etc/init.d/zabbix_agentd

修改/etc/zabbix/zabbix_server.conf

[root@zabbix-2database]# sed -i"s@DBUser=root@DBUser=zabbix@g" /etc/zabbix/zabbix_server.conf
[root@zabbix-2database]# sed -i"s@#DBPassword=@DBPassword=zabbix@g" /etc/zabbix/zabbix_server.conf
[root@zabbix-2database]# sed -i "s@#DBPassword=@DBPassword=zabbix@g" /etc/zabbix/zabbix_server.conf

修改/etc/zabbix/zabbix_agentd.conf,这里的IP地址写的是zabbix_serverIP地址,即10.0.0.10

[root@zabbix-2database]# sed -i "s@Server=127.0.0.1@Server=127.0.0.1,10.0.0.10@g"/etc/zabbix/zabbix_agentd.conf
[root@zabbix-2database]# sed -i"s@ServerActive=127.0.0.1@ServerActive=$IP:10051@g"/etc/zabbix/zabbix_agentd.conf
[root@zabbix-2database]# sed -i "s@tmp/zabbix_agentd.log@var/log/zabbix/zabbix_agentd.log@g"/etc/zabbix/zabbix_agentd.conf
[root@zabbix-2database]# sed -i"s@^# UnsafeUserParameters=0@UnsafeUserParameters=1\n@g"/etc/zabbix/zabbix_agentd.conf

复制zabbix站点的文件到/var/www/html目录下:

[root@zabbix-2database]# cp -r /root/zabbix-2.4.8/frontends/php//var/www/html/zabbix/
[root@zabbix-2database]# chown -R apache.apache/var/www/html/zabbix/

启动zabbix_server/zabbix_agentd,并设置开机启动:

[root@zabbix-2database]#service zabbix_server start
[root@zabbix-2database]#service zabbix_agentd start
[root@zabbix-2database]#chkconfig zabbix_server on
[root@zabbix-2database]#chkconfig zabbix_agentd on

8.       Web页面安装配置zabbix

 

在浏览器的url处输入 10.0.0.10/zabbix进行配置

wKioL1ld6hjgANwqAAKMZEHzgsg921.png-wh_50 

wKiom1ld6legCBPMAAJUfzFds2k465.png-wh_50

 

相关的配置如下:

Database type:MYSQL
Database host:localhost
Database port:3306
Database name:zabbix
User:zabbix
Password:zabbix

填写完毕点击下面的Test connection按钮,正常情况下会提示OK

wKioL1ld6oSAvUIXAAIzAx_emJU356.png-wh_50

wKiom1ld6qegkRC6AAILIRcHEjo935.png-wh_50

wKiom1ld6ufAKJRKAAIP5cC2VPU209.png

wKiom1ld6w-TSPoSAAHCdCXmh4s110.png-wh_50

输入用户名和密码登录:

默认用户名:admin   密码:zabbix

wKioL1ld6zPAw8U8AAJOaxw0f4o521.png-wh_50

通过账号登入后,出现错误Zabbix server is not running:the information displayed may not becurrent

wKiom1ld63eRvl6sAAI9RgqmAWs664.png-wh_50


处理此问题的方法:

关闭selinux

修改/etc/selinux/config文件中的SELINUX=””disabled,然后重启。如果不想重启系统,则可以使用命令setenforce 0

 

修改后刷新web页面后显示正常。此时可以添加需要被监控的网络设备了!

wKiom1ld65XxXfcVAADsIUlzdZE255.png-wh_50