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作grpc的反向代理踩坑总结
Jul 07 Servers
Apache POI的基本使用详解
Nov 07 Servers
关于Nginx中虚拟主机的一些冷门知识小结
Mar 03 Servers
nginx共享内存的机制详解
Mar 21 Servers
Nginx动静分离配置实现与说明
Apr 07 Servers
Linux下使用C语言代码搭建一个简单的HTTP服务器
Apr 13 Servers
Mac电脑OS系统下安装Nginx的详细教程
Apr 14 Servers
Apache Hudi 加速传统的批处理模式
Apr 24 Servers
利用nginx搭建RTMP视频点播、直播、HLS服务器
May 25 Servers
ssh服务器拒绝了密码 请再试一次已解决(亲测有效)
Aug 14 Servers
Apache SkyWalking 监控 MySQL Server 实战解析
Sep 23 Servers
nginx请求限制配置方法
使用goaccess分析nginx日志的详细方法
Jul 09 #Servers
nginx作grpc的反向代理踩坑总结
使用 Apache Superset 可视化 ClickHouse 数据的两种方法
使用nginx配置访问wgcloud的方法
Jun 26 #Servers
Nginx反向代理配置的全过程记录
制作能在nginx和IIS中使用的ssl证书
You might like
利用PHP制作简单的内容采集器的原理分析
2008/10/01 PHP
Redis使用Eval多个键值自增的操作实例
2016/11/04 PHP
如何让PHP编码更加好看利于阅读
2019/05/12 PHP
原生javascript图片自动或手动切换示例附演示源码
2013/09/04 Javascript
getAsDataURL在Firefox7.0下无法预览本地图片的解决方法
2013/11/15 Javascript
js判断数据类型如判断是否为数组是否为字符串等等
2014/01/15 Javascript
flash遮住div问题的正确解决方法
2014/02/27 Javascript
提交按钮的name='submit'引起的js失效问题及原因
2015/02/25 Javascript
JS实现动态给图片添加边框的方法
2015/04/01 Javascript
jQuery实现html表格动态添加新行的方法
2015/05/28 Javascript
jQuery实现鼠标经过事件的延时处理效果
2020/08/20 Javascript
实例讲解避免javascript冲突的方法
2016/01/03 Javascript
JavaScript:Date类型全面解析
2016/05/19 Javascript
js实现倒计时及时间对象
2016/11/15 Javascript
js实现带简单弹性运动的导航条
2017/02/22 Javascript
Web开发中客户端的跳转与服务器端的跳转的区别
2017/03/05 Javascript
ES6新数据结构Set与WeakSet用法分析
2017/03/31 Javascript
iOS + node.js使用Socket.IO框架进行实时通信示例
2017/04/14 Javascript
JavaScript使用ZeroClipboard操作剪切板
2017/05/10 Javascript
基于Vue实现页面切换左右滑动效果
2020/06/29 Javascript
JS使用队列对数组排列,基数排序算法示例
2019/03/02 Javascript
用map函数来完成Python并行任务的简单示例
2015/04/02 Python
完美解决python遍历删除字典里值为空的元素报错问题
2016/09/11 Python
python实现证件照换底功能
2019/08/20 Python
pycharm 设置项目的根目录教程
2020/02/12 Python
模具毕业生推荐信
2014/02/15 职场文书
售房协议书
2014/08/19 职场文书
委托书怎样写
2014/08/30 职场文书
领导四风问题整改措施思想汇报
2014/10/13 职场文书
幼儿园大班教师个人总结
2015/02/05 职场文书
2015年度校学生会工作总结报告
2015/05/23 职场文书
运动会主持词大全
2015/07/02 职场文书
患者身份识别制度
2015/08/06 职场文书
2016年小学生教师节广播稿
2015/12/18 职场文书
css3实现的加载动画效果
2021/04/07 HTML / CSS
详解Vue3使用axios的配置教程
2022/04/29 Vue.js