nginx的zabbix 5.0安装部署的方法步骤


Posted in Servers onJuly 16, 2021

zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。
zabbix能监视各种网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。
zabbix由2部分构成,zabbix server与可选组件zabbix agent。
zabbix server可以通过SNMP,zabbix agent,ping,端口监视等方法提供对远程服务器/网络状态的监视,数据收集等功能,它可以运行在Linux,Solaris,HP-UX,AIX,Free BSD,Open BSD,OS X等平台上。

实验环境

之前大家可能经常会基于apache去部署zabbix,但是这样会偶尔遇到一些问题,比如说:公司系统的框架是nginx的,然后搭建的zabbix却是基于apache的,这样就会出现不兼容的情况,那么今天小编就带大家操作一下基于nginx的zabbix5.0的部署。
下面跟大家交代一下小编的实验环境框架:

操作系统:Centos7
web应用:nginx
php:7.2
数据库:mariadb

安装部署

服务端配置源

rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm

nginx的zabbix 5.0安装部署的方法步骤

yum repolist    #查看zabbix 源文件
yum list zabbix*   #查看当前源存在哪些zabbix应用包

#直接安装zabbix服务端跟客户端
yum -y install zabbix-server-mysql zabbix-agent

nginx的zabbix 5.0安装部署的方法步骤

#安装web前端服务的一个依赖包
yum -y install centos-release-scl   #安装scl的依赖包,主要用于调取源

nginx的zabbix 5.0安装部署的方法步骤

这里安装完成之后,我们需要对之前下载的yum源文件进行修改,因为在5.0版本的zabbix的源中,web前端的源是被默认禁用的,我们需要启用

cd /etc/yum.repo.d/

vim zabbix.repo
#找到[zabbix-frontend](前端)
enabled=0    #将这里的关闭修改为1,即为开启

nginx的zabbix 5.0安装部署的方法步骤

#修改完成之后在次使用 yum list zabbix 就会发现源文件中多了web相关的源
#安装web前端服务

yum -y install zabbix-web-mysql-scl zabbix-nginx-conf-scl

nginx的zabbix 5.0安装部署的方法步骤

到这里zabbix服务端的应用就全部部署完成了,下面就开始部署数据库了。

安装配置数据库(这里使用的是mariadb,感兴趣的同学可以使用编译或者别的方法安装mysql试试)

yum -y install mariadb-server

nginx的zabbix 5.0安装部署的方法步骤

数据库安装完成之后,可以先启动数据库看看

systemctl start mariadb.service

#执行完毕之后可以使用以下命令进行查看数据库是否正常启动

netstat -ltunp | grep 3306

nginx的zabbix 5.0安装部署的方法步骤

mariadb安装完成之后,默认是没有登录密码的,我们可以直接使用mysql进行数据库的登录

登录之后,可以先进行一个业务库的创建(这里需要注意,数据库在创建的时候要注意字符集的设定,否则在后续的web端进行部署的时候会出现问题)

[root@localhost ~] mysql

Mariadb [(none)] >
Mariadb [(none)] >create database zabbix character set utf8 collate utf8_bin;  #创建数据库时指定字符集为utf8
Mariadb [(none)] >
Mariadb [(none)] >show databases;   #查看数据库是否创建成功

#这里看到zabbix数据库已经成功创建之后就可以退出数据库了

nginx的zabbix 5.0安装部署的方法步骤

然后我们查看下zabbix在安装时都安装了些什么

rpm -ql zabbix-server-mysql

nginx的zabbix 5.0安装部署的方法步骤

这里能看到我们在安装的时候,zabbix 有提供一个用于初始化的gz的压缩包
我们把这个压缩包里的sql语句都导出来,方便后续的使用

[root@localhost ~] zcat /usr/share/doc/zabbix-server-mysql-5.0.13/create.sql.gz > zabbix.sql
[root@localhost ~] ls   #就能查看到我们导出的sql 文件
[root@localhost ~] mysql < zabbix.sql
ERROR 1046 (3D000) at line 1: No database selected   #这里可以看到出现了一个报错,没有数据库可以用来查看

nginx的zabbix 5.0安装部署的方法步骤

#那我们这里稍微修改下zabbix.sql 的文件

[root@localhost ~] vim zabbix.sql
#在文件的最上端添加
use zabbix;

[root@localhost ~] mysql < zabbix.sql #然后再次进行数据的导入

nginx的zabbix 5.0安装部署的方法步骤

导入完成之后,我们再次进入数据库进行查看下之前导入的数据表

[root@localhost ~] mysql

Mariadb [(none)] > use zabbix
Mariadb [(none)] > show tables;   

#因为zabbix需要进行数据库的链接,所以这里我们需要进行一步用户的授权操作

Mariadb [(none)] > grant  all on zabbix.* to zabbix@localhost identified by 'zabbix';

#到这里数据库也算是部署完成并且配置完成了

nginx的zabbix 5.0安装部署的方法步骤

nginx的zabbix 5.0安装部署的方法步骤

zabbix服务端的配置

[root@localhost ~] vim /etc/zabbix/zabbix_server.conf    #zabbix服务端的配置文件

#进来之后我们查找一下DBName,会有一个DBName=zabbix的参数配置,这里默认就是zabbix
#DBName=zabbix   #这里因为我们创建的数据库的名字就是zabbix 所以不需要修改,但是如果有同学在创建数据库时,数据库名不是zabbix的,这里就需要进行修改了

DBUser=zabbix    #连接数据库的用户

#DBPassword=
#原来的配置文件默认是没有密码的,这里需要修改一下
DBPassword=zabbix

#DBSocket=    #socket 跟默认是一致的,这里不需要修改

nginx的zabbix 5.0安装部署的方法步骤

web端php的配置

[root@localhost ~] cd /etc/opt/rh/
[root@localhost rh] ls 
rh-nginx116		rh-php72
[root@localhost rh] cd rh-php72        #这里先修改php的配置文件
[root@localhost rh-php72] ls 
opt	pear  pear.conf  php.d   php-fpm.conf  php-fpm.d   php.ini  pki  pm skel  sysconfig  X11  xdg  xinetd.d
[root@localhost rh-php72]  vim php-fpm.d/zabbix.conf

6 listen.acl_users=apache,nginx        #监听的认证用户,这里默认是apache的,需要我们添加一个nginx

24 ;php_value[date.timezone] = Europe/Riga     #这里默认的时区是欧洲的时区,需要修改
24 php_value[date.timezone] = Asia/Shanghai

#这里php就这两处需要进行修改的

nginx的zabbix 5.0安装部署的方法步骤

nginx的zabbix 5.0安装部署的方法步骤

web端的nginx的配置修改

[root@localhost rh-php72] cd ..
[root@localhost rh] cd rh-nginx116
[root@localhost rh-nginx116]  ls
nginx  opt  pki  pm  skel   sysconfig  X11  xdg  xinetd.d
[root@localhost rh-nginx116] cd nginx
[root@localhost nginx] cd conf.d
[root@localhost conf.d] ls
zabbix.conf

[root@localhost conf.d] vim zabbix.conf
server {
#		listen			 80;
#		server_name		 example.com;
这里只需要针对性的修改上面这两条就可以了,修改为
		listen			 80;
		server_name		 localhost;   #这里可以修改为业务对应的域名
...
...
}

nginx的zabbix 5.0安装部署的方法步骤

nginx的zabbix 5.0安装部署的方法步骤

这里因为在配置文件中,我们配置的监听端口是80并且监听的域名是本地的,所以在主配置文件中,我们需要将这两条进行注释。

[root@localhost conf.d]  cd ..
[root@localhost nginx] vim nginx.conf
server  {
#		listen				80  default_server
#		listen				[::]:80  default_server
}

#这里将server 中所有的配置全部都注释掉,以保证两个配置文件不会发生冲突

nginx的zabbix 5.0安装部署的方法步骤

nginx的zabbix 5.0安装部署的方法步骤

到这里 我们的zabbix-server,php,nginx,mysql 这些就都已经部署配置完成了

然后接下来我们检查一下我们本地的一些基本的安全策略

[root@localhost nginx] systemctl status firewalld
[root@localhost nginx] systemctl disable firewalld
[root@localhost nginx] getenforce
Enforcing      #表示开启状态,需要关闭
[root@localhost nginx] setenforce 0
[root@localhost nginx] vim /etc/selinux/config
SELINUX = disable  #将这里修改为关闭

nginx的zabbix 5.0安装部署的方法步骤

现在就部署的差不多了,我们来把相应的服务启动一下,看一下效果

[root@localhost nginx] systemctl start zabbix-server.service    
[root@localhost nginx] systemctl start rh-php72-php-fpm.service 
[root@localhost nginx] systemctl start rh-nginx116-nginx.service
[root@localhost nginx] netstat -lutnp
这其中 9000 是php的端口
3306是mysql的端口
80是nginx端口
10051是zabbix-server的端口

#检查以上的端口是否都存在,如端口存在则说明对应的应用已经启动完成了

nginx的zabbix 5.0安装部署的方法步骤

都启动完成之后,我们可以通过浏览器访问来进行查看

只要在浏览器中输入我们服务器对应的IP地址进行访问就可以了

nginx的zabbix 5.0安装部署的方法步骤

nginx的zabbix 5.0安装部署的方法步骤

这里主要检查小编标注的的那部分是不是都是ok的,如果存在不是ok状态的,就需要针对单项进行修复。

nginx的zabbix 5.0安装部署的方法步骤

这里就是数据库的实例名,用户,密码,安装我们安装数据库时的情况填写就可以了

nginx的zabbix 5.0安装部署的方法步骤

这边是zabbix的用户名

nginx的zabbix 5.0安装部署的方法步骤

这里就是zabbix在web页面上需要配置的全部的参数内容了

nginx的zabbix 5.0安装部署的方法步骤

这里就可以看到,恭喜你,您已经成功的安装好了zabbix服务

nginx的zabbix 5.0安装部署的方法步骤

zabbix默认的用户名是Admin密码是zabbix

nginx的zabbix 5.0安装部署的方法步骤

在zabbix5.0中是有配置可以修改为中文字符显示的。

nginx的zabbix 5.0安装部署的方法步骤

nginx的zabbix 5.0安装部署的方法步骤

这里我们就可以看到页面已经转换成中文。

至此zabbix5.0基于nginx的部署就完成了,更多相关nginx zabbix 5.0安装部署内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Servers 相关文章推荐
Nginx 502 Bad Gateway错误原因及解决方案
Mar 31 Servers
nginx配置文件使用环境变量的操作方法
Jun 02 Servers
详解nginx location指令
Jan 18 Servers
Nginx 反向代理解决跨域问题多种情况分析
Jan 18 Servers
Minikube搭建Kubernetes集群
Mar 31 Servers
鲲鹏 CentOS 7 安装Python3.7
May 11 Servers
Nginx利用Logrotate实现日志分割
May 20 Servers
Nginx静态压缩和代码压缩提高访问速度详解
May 30 Servers
shell进度条追踪指令执行时间的场景分析
Jun 16 Servers
Nginx开源可视化配置工具NginxConfig使用教程
Jun 21 Servers
Docker容器harbor私有仓库部署和管理
Aug 05 Servers
ubuntu开机后ROS程序自启动问题
Dec 24 Servers
nginx请求限制配置方法
使用goaccess分析nginx日志的详细方法
Jul 09 #Servers
nginx作grpc的反向代理踩坑总结
使用 Apache Superset 可视化 ClickHouse 数据的两种方法
使用nginx配置访问wgcloud的方法
Jun 26 #Servers
Nginx反向代理配置的全过程记录
制作能在nginx和IIS中使用的ssl证书
You might like
Email+URL的判断和自动转换函数
2006/10/09 PHP
php防止sql注入代码实例
2013/12/18 PHP
PHP实现更改hosts文件的方法示例
2017/08/08 PHP
DOM相关内容速查手册
2007/02/07 Javascript
javascript数组的扩展实现代码集合
2008/06/01 Javascript
js 可拖动列表实现代码
2011/12/13 Javascript
js简单实现用户注册信息的校验代码
2013/11/15 Javascript
jquery实现checkbox全选全不选的简单实例
2013/12/31 Javascript
jQuery新窗口打开外链接
2016/07/21 Javascript
浅谈JavaScript的函数及作用域
2016/12/30 Javascript
3种vue组件的书写形式
2017/11/29 Javascript
js原生方法被覆盖,从新赋值原生的方法
2018/01/02 Javascript
vue.js图片转Base64上传图片并预览的实现方法
2018/08/02 Javascript
简述pm2常用命令集合及配置文件说明
2019/05/30 Javascript
linux 下以二进制的方式安装 nodejs
2020/02/12 NodeJs
微信小程序 button样式设置为图片的方法
2020/06/19 Javascript
JavaScript实现拖动对话框效果的实现代码
2020/10/12 Javascript
PHP 502bad gateway原因及解决方案
2020/11/13 Javascript
[49:40]2018DOTA2亚洲邀请赛小组赛 A组加赛 TNC vs Newbee
2018/04/03 DOTA
Python最基本的输入输出详解
2015/04/25 Python
Python自动扫雷实现方法
2015/07/25 Python
Python 爬虫学习笔记之单线程爬虫
2016/09/21 Python
python编程实现随机生成多个椭圆实例代码
2018/01/03 Python
对Python中内置异常层次结构详解
2018/10/18 Python
Python制作动态字符图的实例
2019/01/27 Python
Python3.5基础之NumPy模块的使用图文与实例详解
2019/04/24 Python
python安装virtualenv虚拟环境步骤图文详解
2019/09/18 Python
Python图像处理库PIL的ImageDraw模块介绍详解
2020/02/26 Python
pytorch掉坑记录:model.eval的作用说明
2020/06/23 Python
澳洲的服装老品牌:SABA
2018/02/06 全球购物
static关键字的用法
2013/10/07 面试题
《飞向蓝天的恐龙》教学反思
2014/04/09 职场文书
青年志愿者服务活动总结
2015/05/06 职场文书
2016年大学生党员公开承诺书
2016/03/24 职场文书
JavaScript canvas实现流星特效
2021/05/20 Javascript
Java并发编程必备之Future机制
2021/06/30 Java/Android