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 反向代理之 proxy_pass的实现
Mar 31 Servers
利用Nginx代理如何解决前端跨域问题详析
Apr 02 Servers
Nginx+Tomcat负载均衡集群的实现示例
Oct 24 Servers
Nginx源码编译安装过程记录
Nov 17 Servers
教你快速构建一个基于nginx的web集群项目
Nov 27 Servers
Kubernetes中Deployment的升级与回滚
Apr 01 Servers
Linux下使用C语言代码搭建一个简单的HTTP服务器
Apr 13 Servers
docker compose 部署 golang 的 Athens 私有代理问题
Apr 28 Servers
如何让你的Nginx支持分布式追踪详解
Jul 07 Servers
本地搭建minio文件服务器(使用bat脚本启动)的方法
Jul 15 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
业余方法DIY电子管FM收音机
2021/03/02 无线电
php ckeditor上传图片文件名乱码解决方法
2013/11/15 PHP
CodeIgniter针对lighttpd服务器URL重写的方法
2015/06/10 PHP
10款实用的PHP开源工具
2015/10/23 PHP
Symfony2获取web目录绝对路径、相对路径、网址的方法
2016/11/14 PHP
php libevent 功能与使用方法详解
2020/03/04 PHP
jQuery Validation插件remote验证方式的Bug解决
2010/07/01 Javascript
Script的加载方法小结
2011/01/12 Javascript
zeroclipboard 单个复制按钮和多个复制按钮的实现方法
2014/06/14 Javascript
深入理解JavaScript系列(40):设计模式之组合模式详解
2015/03/04 Javascript
jQuery选择器源码解读(四):tokenize方法的Expr.preFilter
2015/03/31 Javascript
js事件监听器用法实例详解
2015/06/01 Javascript
使用plupload自定义参数实现多文件上传
2016/07/19 Javascript
Bootstrap表单使用方法详解
2017/02/17 Javascript
完美解决spring websocket自动断开连接再创建引发的问题
2017/03/02 Javascript
基于Vue、Vuex、Vue-router实现的购物商城(原生切换动画)效果
2018/01/09 Javascript
Vue精简版风格概述
2018/01/30 Javascript
React+Webpack快速上手指南(小结)
2018/08/15 Javascript
JS+HTML5 Canvas实现简单的写字板功能示例
2018/08/30 Javascript
JavaScript+HTML5 canvas实现放大镜效果完整示例
2019/05/15 Javascript
[01:20:38]完美世界DOTA2联赛 GXR vs IO 第一场 11.07
2020/11/09 DOTA
python的paramiko模块实现远程控制和传输示例
2017/10/13 Python
PyQt5实现暗黑风格的计时器
2019/07/29 Python
使用python matploblib库绘制准确率,损失率折线图
2020/06/16 Python
英国知名的护肤彩妆与时尚配饰大型综合零售电商:Unineed
2016/11/21 全球购物
应届生会计求职信
2013/11/11 职场文书
致长跑运动员广播稿
2014/01/31 职场文书
两只小狮子教学反思
2014/02/05 职场文书
公司放假通知怎么写
2015/04/15 职场文书
党员转正申请报告
2015/05/15 职场文书
政审证明范文
2015/06/19 职场文书
2016教师年度考核评语大全
2015/12/01 职场文书
2016优秀青年志愿者事迹材料
2016/02/25 职场文书
Go语言切片前或中间插入项与内置copy()函数详解
2021/04/27 Golang
python保存大型 .mat 数据文件报错超出 IO 限制的操作
2021/05/10 Python
python基础入门之字典和集合
2021/06/13 Python