准备工作

1、lnmp或lamp环境,本机环境:CentOS 7.2 64位,nginx1.10.2 php5.6.26 mysql5.7.15

2、软件Zabbix

wget http://nchc.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/3.2.1/zabbix-3.2.1.tar.gz

安装部署:

一、创建、导入zabbix数据库

cd /usr/loca/src #进入软件包下载目录

wget http://nchc.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/3.2.1/zabbix-3.2.1.tar.gz

tar zxvf zabbix-3.2.1.tar.gz #解压

cd zabbix-3.2.1/database/mysql/ #进入mysql数据库创建脚本目录

ll  #列出文件,可以看到有schema.sql、images.sql、data.sql这三个文件

mysql  -h localhost  -uroot -p #输入密码,进入MySQL控制台

create database zabbix character set utf8; #创建数据库zabbix,并且数据库编码使用utf8

create user zabbix identified by '123456'; #新建账户zabbix,密码123456

grant all on zabbix.* to 'zabbix'@'localhost' identified by '123456' with grant option; #新建账户zabbix,密码123456

flush privileges; #刷新系统授权表

use zabbix;  #进入数据库

source /usr/local/src/zabbix-3.2.1/database/mysql/schema.sql #导入脚本文件到zabbix数据库

source /usr/local/src/zabbix-3.2.1/database/mysql/images.sql #导入脚本文件到zabbix数据库

source /usr/local/src/zabbix-3.2.1/database/mysql/data.sql #导入脚本文件到zabbix数据库

注意:请按照以上顺序进行导入,否则会出错。

exit;  #退出

二、安装zabbix

1、添加用户

groupadd zabbix #创建用户组zabbix

useradd zabbix -g zabbix -s /bin/false #创建用户zabbix,并且把用户zabbix加入到用户组zabbix中

2、安装依赖包

#CentOS使用yum命令安装

yum install net-snmp-devel curl curl-devel mysql-devel

备注:以上软件包如果在安装Web环境LAMP或者LNMP时已经安装过,此步骤可忽略

3、安装zabbix

ln -s /usr/local/lib/libiconv.so.2 /usr/lib/libiconv.so.2  #添加软连接

/sbin/ldconfig #使配置立即生效

cd /usr/local/src/zabbix-3.2.1 #进入安装目录

./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --with-net-snmp --with-libcurl --enable-proxy --with-mysql  #配置

报错:configure: error: Invalid Net-SNMP directory - unable to find net-snmp-config

解决:yum install net-snmp-devel

说明:若使用--with-mysql=/usr/bin/mysql_config

find / -name mysql_config 查找位置,如果没有mysql_config,需要安装yum install mysql-devel

make #编译

make install #安装

ln -s /usr/local/zabbix/sbin/* /usr/local/sbin/ #添加系统软连接

ln -s /usr/local/zabbix/bin/* /usr/local/bin/ #添加系统软连接

4、添加zabbix服务对应的端口

vi /etc/services #编辑,在最后添加以下代码

#zabbix

zabbix-agent   10050/tcp  # Zabbix Agent

zabbix-agent   10050/udp  # Zabbix Agent

zabbix-trapper  10051/tcp  # Zabbix Trapper

zabbix-trapper  10051/udp  # Zabbix Trapper

:x #保存退出

5、修改zabbix配置文件

cd /usr/local/zabbix/etc

vi /usr/local/zabbix/etc/zabbix_server.conf

LogFile=/tmp/zabbix_server.log #日志保存位置

PidFile=/tmp/zabbix_server.pid #进程PID

DBName=zabbix #数据库名称

DBUser=zabbix #数据库用户名

DBPassword=123456 #数据库密码

ListenIP=127.0.0.1 #数据库ip地址(写localhost登陆后会有错误信息)

AlertScriptsPath=/usr/local/zabbix/share/zabbix/alertscripts #zabbix运行脚本存放目录

:x #保存退出

vi /usr/local/zabbix/etc/zabbix_agentd.conf

PidFile=/tmp/zabbix_agentd.pid

LogFile=/tmp/zabbix_agentd.log

EnableRemoteCommands=1 #允许执行远程命令

Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/

UnsafeUserParameters=1 #启用自定义key

:x #保存退出

6、添加开机启动脚本

cp  /usr/local/src/zabbix-3.2.1/misc/init.d/fedora/core/zabbix_server  /etc/rc.d/init.d/zabbix_server    #服务端

cp  /usr/local/src/zabbix-3.2.1/misc/init.d/fedora/core/zabbix_agentd  /etc/rc.d/init.d/zabbix_agentd  #客户端

chmod +x /etc/rc.d/init.d/zabbix_server   #添加脚本执行权限

chmod +x /etc/rc.d/init.d/zabbix_agentd  #添加脚本执行权限

chkconfig zabbix_server on #添加开机启动

chkconfig zabbix_agentd on #添加开机启动

7、修改zabbix开机启动脚本中的zabbix安装目录

vi /etc/rc.d/init.d/zabbix_server #编辑服务端配置文件

BASEDIR=/usr/local/zabbix/ #zabbix安装目录

:x #保存退出

vi /etc/rc.d/init.d/zabbix_agentd #编辑客户端配置文件

BASEDIR=/usr/local/zabbix/ #zabbix安装目录

:x #保存退出

三、配置web站点

cd /usr/local/src/zabbix-3.2.1

cp -r /usr/local/src/zabbix-3.2.1/frontends/php /usr/local/nginx/html/zabbix

chown -R www:www  /usr/local/nginx/html/zabbix

chmod -R 755 /usr/local/nginx/html/zabbix

备注:/usr/local/nginx/htmlNginx默认站点目录 wwwNginx运行账户

service zabbix_server start #启动zabbix服务端 (systemctl start zabbix_server.service)

启动警告:

Starting zabbix_server (via systemctl):  Warning: zabbix_server.service changed on disk. Run 'systemctl daemon-reload' to reload units.      [  确定  ]

解决:systemctl daemon-reload

service zabbix_agentd start #启动zabbix客户端 (systemctl start zabbix_agentd.service)

四、修改php配置文件参数

1、vi /etc/php.ini #编辑修改

post_max_size =16M

max_execution_time =300

max_input_time =300

:x #保存退出

2、vi /usr/local/php/etc/php-fpm.conf #编辑修改

request_terminate_timeout = 300

:x #保存退出

service php-fpm reload #重启php-fpm

五、安装web

在浏览器中打开:ip/zabbix

错误1:

页面报错403

原因分析:查看nginx错误日志,是因为modsecurity阻拦next step了,详细查看modsecurity日志(/var/log/modsec_audit.log)确实是这样

解决:修改站点的配置文件,暂停modsecurity,重启nginx

错误2:

PHP option "always_populate_raw_post_data" must be set to "-1"

解决:vi /usr/local/nginx/html/zabbix/include/classes/setup/CFrontendSetup.php

添加 : $current = -1;

结果如下:

public function checkPhpAlwaysPopulateRawPostData() {

$current = ini_get('always_populate_raw_post_data');

$current = -1;

return [

'name' => _('PHP always_populate_raw_post_data'),

'current' => ($current != -1) ? _('on') : _('off'),

'required' => _('off'),

'result' => ($current != -1) ? self::CHECK_FATAL : self::CHECK_OK,

'error' => _('PHP always_populate_raw_post_data must be set to -1.')

];

}

检查系统环境设置,必须全部都为ok,才能继续

数据库:

mysql,localhost,3306,zabbix,zabbix,123456

Zabbix server detail 页面保持默认

finish后登陆

账号:admin

密码:zabbix

有报错:

zabbix监控报错zabbix server is not running: the information displayed may not be current

解决方法:

查看zabbix_server日志:/tmp/zabbix_server.log有这样一句话:

listener failed: incorrect IPv4 address [localhost]

修改配置文件:vi /usr/local/zabbix/etc/zabbix_server.conf

ListenIP=127.0.0.1

保存,重启即可

修改web界面为中文

vi /usr/local/nginx/html/zabbix/include/locales.inc.php #编辑修改

'zh_CN' => array('name' => _('Chinese (zh_CN)'), 'display' => false), 修改为

'zh_CN' => array('name' => _('Chinese (zh_CN)'), 'display' => true),

:x #保存退出

2、替换监控图像上系统默认的字体 #默认字体不支持中文,如果不替换,图像上会显示乱码

在Windows系统中的C:\Windows\Fonts目录中复制出一个中文字体文件,例如msyh.ttf

把字体文件msyh.ttf上传到zabbix站点根目录下fonts文件夹中

例如:/usr/local/nginx/html/zabbix/fonts

备份默认的字体文件:DejaVusSans.ttf-bak

修改msyh.ttf名称为DejaVusSans.ttf

页面右上角有个人头一样的图标,点击设置

最后,修改配置信息,把默认语言修改为中文,update即可

至此,Zabbix3.2.1安装图解教程完成。

再切换中文时的页面下方报错:

scandir() has been disabled for security reasons [profile.php:199 → CView->render() → include() → getSounds() → scandir() in include/sounds.inc.php:24]

原因分析:php.ini中禁用scandir()这个函数了

解决:修改/usr/local/php/etc/php.ini ,去掉scandir保存并重起php-fpm即可。

CentOS7.2设置zabbix的更多相关文章

  1. CentOS7下搭建zabbix监控(四)——Zabbix报警设置

    CentOS7下搭建zabbix监控(一)——Zabbix监控端配置 CentOS7下搭建zabbix监控(二)——Zabbix被监控端配置 CentOS7下搭建zabbix监控(三)——Zabbix ...

  2. centos7.2 部署zabbix 3.2.7

    centos7.2 部署zabbix 3.2.7[zabbix@zabbixServer ~]$ cat /etc/redhat-release CentOS Linux release 7.2.15 ...

  3. Centos7下安装zabbix 3.0.19

    参考网站: https://www.cnblogs.com/xiewenming/p/7732144.html https://www.cnblogs.com/clsn/p/7885990.html  ...

  4. CentOS7下搭建zabbix监控(三)——Zabbix监控服务配置

    CentOS7下搭建zabbix监控(一)——Zabbix监控端配置 CentOS7下搭建zabbix监控(二)——Zabbix被监控端配置 (1).配置Zabbix监控Apache服务 主机名:yo ...

  5. CentOS7下搭建zabbix监控(二)——Zabbix被监控端配置

    Zabbix监控端配置请查看:CentOS7下搭建zabbix监控(一)——Zabbix监控端配置 (1).在CentOS7(被监控端)上部署Zabbix Agent 主机名:youxi2 IP地址: ...

  6. CentOS7中设置Tomcat8开机自启动

    CentOS7中设置Tomcat8开机自启动 本文介绍了在centos7中配置tomcat的开机自启动的一些操作步骤,仅供参考. 环境是CentOS 7 ,jdk版本是1.8.0_191,tomcat ...

  7. CentOS7 虚拟机设置文件共享 VMWareTools安装遇到的坑

    设置文件共享的前提条件是已经安装好VMware Tools. 现在从安装VMware Tools开始讲起: 第一步:安装VMware Tools (如果安装的centos是最小安装,需要提前安装组件g ...

  8. CentOS7修改设置静态IP和DNS

    当前位置: 主页 > CentOS入门 > 系统配置 > CentOS7修改设置静态IP和DNS 时间:2016-02-22 00:55来源:blog.csdn.net 作者:get ...

  9. centos7 mariadb 设置root密码

    centos7 mariadb 设置root密码   修改root密码1.以root身份在终端登陆,必须2.输入 mysqladmin -u root -p password root后面的 root ...

随机推荐

  1. JVM内存溢出及合理配置

    Tomcat本身不能直接在计算机上运行,需要依赖于硬件基础之上的操作系统和一个Java虚拟机.Tomcat的内存溢出本质就是JVM内存溢出,所以在本文开始时,应该先对Java JVM有关内存方面的知识 ...

  2. 使用linux mint 安装无线网卡驱动

    新买了个笔记本Thinkpad E440,用了两天发现无线网非常不稳定,有时候能搜到wifi却连不上,有时候连上了却连不上互联网,于是决定重新安装个网卡驱动. 首先看看自己显卡的型号: lspci : ...

  3. WindowsStore页面导航

    第一个页面:前台 <Grid Background="{StaticResource ApplicationPageBackgroundThemeBrush}"> &l ...

  4. 如何将 Cortana 与 Windows Phone 8.1 应用集成 ( Voice command - Natural language recognition )

    随着 Windows Phone 8.1 GDR1 + Cortana 中文版的发布,相信有很多用户或开发者都在调戏 Windows Phone 的语音私人助理 Cortana 吧,在世界杯的时候我亲 ...

  5. php报错: PHP Warning: PHP Startup: memcache: Unable to initialize module

    在mac上通过brew 安装php的memcache扩展(brew install php56-memcache)后运行 ~  php -mPHP Warning:  PHP Startup: mem ...

  6. Oracle数据库入门——如何根据物化视图日志快速刷新物化视图

    Oracle物化视图的快速刷新机制是通过物化视图日志完成的.Oracle如何通过一个物化视图日志就可以支持多个物化视图的快速刷新呢,本文简单的描述一下刷新的原理. 首先,看一下物化视图的结构:SQL& ...

  7. IOS8Preview-xCode_6

    IOS8Preview-xCode_6 what's new What's new in xCode 6 Xcode 6 introduces a radically new way to desig ...

  8. MyBatis知多少(12)私有数据库

    如果你从事软件开发工作有了一段时间的话,那么肯定听过关于“自己动手还是花钱购买” 的争论.该争论是说,针对一个业务问题,我们是应该自己动手构建自己的解决方案呢,还是应 该花钱购买一个声称已经解决了此问 ...

  9. css3 keyframes在yuicompressor下压缩问题

    @keyframes proBackAction { 0% { opacity:; } 100% { opacity: .8; } } @keyframes proBackAction { 0{ op ...

  10. 【深入浅出.Net IL】1.一个For循环引发的IL

    .Net底层剖析目录章节 1.[深入浅出.Net IL]1.一个For循环引发的IL 2.[.Net底层剖析]2.stfld指令-给对象的字段赋值 3.[.Net底层剖析]3.用IL来理解属性 1.准 ...