准备工作

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. iOS 基础复习

    silverlight知识点:linqToSQL.视图.存储过程.索引.触发器 数据结构:数组.栈.队列.链表.属.图. 排序算法:插入.选择.交换(冒泡).归并 网络开发:HTTP短连接.socke ...

  2. 配置Pylint for Python3.5

    事件的缘由是因为在Ubuntu16.04 下面安装了Visual Studio Code, 再编辑的时候说需要Pylint来检查语法,我系统的默认的Python 版本是python2,而我现在正在学习 ...

  3. SSAS:OLE DB 错误: OLE DB 或 ODBC 错误 : Login failed for user 'NT Service\MSSQLServerOLAPService'

    问题描述 按照微软官方教程尝试使用SSAS做OLAP时,出现如下错误信息: Severity Code Description Project File Line Suppression State ...

  4. Failure is not fatal, but failure to change might be.

    Failure is not fatal, but failure to change might be. 失败不是致命的,但无法改变却可能是致命的.

  5. 用户无法进入SDSF,报NO GROUP ASSIGNMENT错误

    注:命令行小写部分表出需要根据自己的情况改变!! a)激活SDSF资源类 SETROPTS CLASSACT(SDSF) b)查看SDSF资源类的PROFILE RLIST SDSF * c)如果不存 ...

  6. rspec+rest-client测试第三方web service

    如果你手工测试Restful 服务将会是一件非常单调乏味的事情.当然,目前有一些浏览器插件可以通过可视化的界面帮助你手工测试,例如postman.rest console,但是每次系统版本更新,你都需 ...

  7. (转)linux文件读写的流程

    转自http://hi.baidu.com/_kouu/item/4e9db87580328244ef1e53d0 在<linux内核虚拟文件系统浅析>这篇文章中,我们看到文件是如何被打开 ...

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

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

  9. solr的建议搭建

    公司培训了solr,我打算自己练练手!就下载了solr-4.4.0.zip~呵呵 1.基本环境Tomcat 1.6 和JDK1.6 2.解压solr-4.4.0.zip , 把dist/solr-4. ...

  10. Mac常用基本命令/常用Git命令

    Git地址: https://github.com/mancongiOS/command-line基本命令 目录/文件的操作 mkdir "目录名" 在当前路径下创建一个文件夹 m ...