kjfhgds 发表于 2016-7-19 10:11:11

Centos 6.7下图文讲解最新zabbix3.0.3源码安装过程

环境需求:
新的zabbix3.0.3要求:

[*]数据库mysql 5.0.3 or later

[*]Apache 1.3.12 or later

[*]PHP 5.4.0 or later

[*]gd 2.0 or later

[*]libXML 2.6.15 or later


[*]yum 源配置


[*]wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-6.repo

[*]rpm -Uvh http://mirror.webtatic.com/yum/el6/latest.rpm #有最新的php


[*]基础环境安装

yum install wget vim tree gcc gcc-c++ autoconf httpd mysql mysql-server httpd-manual mod_ssl mod_perl mod_auth_mysql mysql-connector-odbc mysql-devel libdbi-dbd-mysql net-snmp net-snmp-devel curl-devel libxml2-develphp55wphp55w-bcmath php55w-cli php55w-commonphp55w-devel php55w-fpm    php55w-gd php55w-imapphp55w-ldap php55w-mbstring php55w-mcrypt php55w-mysql   php55w-odbc   php55w-pdo   php55w-pearphp55w-pecl-igbinaryphp55w-xml php55w-xmlrpc php55w-opcache php55w-intl php55w-pecl-memcache libmcrypt-devel libmcrypt lrzsz

[*]防火墙设置

方法一:
关闭防火墙,并且selinux的状态必须是disabled。否则后面会有很多报错
方法二:


在 iptables 中放行 80,10050,10051 端口
# iptables -I INPUT -p tcp -m multiport --destination-port 80,10050:10051 -j ACCEPT
查看防火墙结果
# iptables -L -n
Chain INPUT (policy ACCEPT)
target   prot opt source               destination         
ACCEPT   tcp--0.0.0.0/0            0.0.0.0/0         multiport dports 80,10050:10051
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
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规则
# service iptables save
iptables: Saving firewall rules to /etc/sysconfig/iptables:


[*]配置php参数
这里如果不配置,在web安装的时候会提示,报错

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

[*]解决http的FQDN问题
vim /etc/httpd/conf/httpd.conf
把ServerName 这一行修改成ServerName 127.0.0.1:80

[*]下载zabbix-3.0.3.tar.gz源码包
http://www.zabbix.com/download.php

[*]上传源码包到/usr/local/src目录下
使用lrzsz或者其他上传工具

[*]添加用户和用户组
groupadd -g 888 zabbix
useradd -g zabbix -u 888 -s /sbin/nologin zabbix

[*]解压zabbix软件包,并安装
tar xf zabbix-3.0.3.tar.gz
cd zabbix-3.0.3
./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --with-mysql=/usr/bin/mysql_config --with-net-snmp --with-libcurl --with-libxml2 --enable-proxy
make && make install

[*]创建数据库和相关表

# pwd
/usr/local/src/zabbix-3.0.3
mysql -e "create database zabbix default charset utf8;"
mysql -e "grant all on zabbix.* to zabbix@localhost identified by 'zabbix';"
mysql -uzabbix -pzabbix zabbix<./database/mysql/schema.sql
mysql -uzabbix -pzabbix zabbix<./database/mysql/images.sql
mysql -uzabbix -pzabbix zabbix<./database/mysql/data.sql

[*]配置软连接和启动文件信息

mkdir /var/log/zabbix
chown zabbix.zabbix /var/log/zabbix
ln -s /usr/local/zabbix/etc/ /etc/zabbix
ln -s /usr/local/zabbix/bin/* /usr/bin/
ln -s /usr/local/zabbix/sbin/* /usr/sbin/
cp /usr/local/src/zabbix-3.0.3/misc/init.d/fedora/core/zabbix_* /etc/init.d
chmod 755 /etc/init.d/zabbix_*

[*]修改/etc/init.d 目录下的 zabbix_server 和 zabbix_agentd 启动文件

sed -i "s@BASEDIR=/usr/local@BASEDIR=/usr/local/zabbix@g" /etc/init.d/zabbix_server
sed -i "s@BASEDIR=/usr/local@BASEDIR=/usr/local/zabbix@g" /etc/init.d/zabbix_agentd

[*]修改/etc/zabbix/zabbix_server.conf

DBUser=zabbix
DBPassword=zabbix

[*]修改/etc/zabbix/zabbix_agentd.conf,
这里的 IP 地址写的是 zabbix_server 的 IP 地址,即10.0.0.222

sed -i "s@Server=127.0.0.1@Server=10.0.0.222@g" /etc/zabbix/zabbix_agentd.conf
#sed -i "s@ServerActive=127.0.0.1@ServerActive=$IP:10051@g" /etc/zabbix/zabbix_agentd.conf
sed -i "s@tmp/zabbix_agentd.log@var/log/zabbix/zabbix_agentd.log@g" /etc/zabbix/zabbix_agentd.conf

[*]复制 zabbix 站点的文件到/var/www/html 目录下
cp -r /usr/local/src/zabbix-3.0.3/frontends/php/ /var/www/html/zabbix/
chown -R apache.apache /var/www/html/zabbix/
chkconfig zabbix_server on
chkconfig zabbix_agentd on
# service zabbix_server start
Starting zabbix_server: [ OK ]
# service zabbix_agentd start
Starting zabbix_agentd: [ OK ]

[*]通过 web 站点配置 zabbix




打开浏览器显示的界面,点击下一步

这里会出现安装环境是否符合他的要求,上面我们调整php参数的时候就是把这里的要求调整到zabbix的要求

输入数据库zabbix的密码

zabbix服务器的配置详细信息,这里可以设置zabbix的服务器地址

最后的确认信息

提示安装成功

[*]其他故障问题


如果这没有中文字体,需要按照下面的方法进行设置:
通过#find / -name locales.inc.php查找到文件地址
将false改成true

[*]更改一下时区

#cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
2. 正常安装完zabbix后,登录后zabbix监控报错zabbix server is not running: the information displayed may not be current
selinux是否关闭。一定要关闭这个,开启selinux会引起一连串问题,甚至zabbix的discovery功能也不能正常使用
关闭SELinux的方法:
修改/etc/selinux/config文件中的SELINUX="" 为 disabled ,然后重启
3. 字体乱码

解决方法一:
zabbix 语言设置成中文后,有乱码解决如下
1.从 windows 下控制面板->字体->选择一种中文字库例如“楷体”
2.将字体上传至/var/www/html/zabbix/fonts 目录下
3.修改 zabbix 页面管理的中文字体设置
# vim /var/www/html/zabbix/include/defines.inc.php
#修改如下 2 行
define('ZBX_FONT_NAME', 'simkai');
define('ZBX_GRAPH_FONT_NAME', 'simkai');
解决方法二:
yum -y --nogpgcheck install wqy-microhei-fonts
\cp /usr/share/fonts/wqy-microhei/wqy-microhei.ttc /usr/share/fonts/dejavu/DejaVuSans.ttf


页: [1]
查看完整版本: Centos 6.7下图文讲解最新zabbix3.0.3源码安装过程