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 相关文章推荐
fastdfs+nginx集群搭建的实现
Mar 31 Servers
Nginx配置Https安全认证的实现
May 26 Servers
Linux中Nginx的防盗链和优化的实现代码
Jun 20 Servers
zabbix自定义监控nginx状态实现过程
Nov 01 Servers
NGINX 权限控制文件预览和下载的实现原理
Jan 18 Servers
解决xampp安装后Apache无法启动
Mar 21 Servers
使用Docker容器部署rocketmq单机的全过程
Apr 03 Servers
Nginx 安装SSL证书完成HTTPS部署
Apr 28 Servers
详解如何使用Nginx解决跨域问题
May 06 Servers
详解ZABBIX监控ESXI主机的问题
Jun 21 Servers
Docker与K8s关系介绍不会Docker也可以使用K8s
Jun 25 Servers
git stash(储藏)的用法总结
Jun 25 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初始化对象和析构函数的简单实例
2014/03/11 PHP
PHP基于imap获取邮件实例
2014/11/11 PHP
php读取文件内容的方法汇总
2015/01/24 PHP
JavaScript中字面量与函数的基本使用知识
2015/10/20 Javascript
java中String类型变量的赋值问题介绍
2016/03/23 Javascript
AngularJS ng-change 指令的详解及简单实例
2016/07/30 Javascript
jquery 多个radio的click事件实例
2016/12/03 Javascript
基于jQuery实现顶部导航栏功能
2016/12/27 Javascript
AngularJS Controller作用域
2017/01/09 Javascript
Web前端框架Angular4.0.0 正式版发布
2017/03/28 Javascript
JavaScript实现选中文字提示新浪微博分享效果
2017/06/15 Javascript
详解JS中的柯里化(currying)
2017/08/17 Javascript
Vue filter介绍及详细使用
2018/04/04 Javascript
JavaScript遍历数组的三种方法map、forEach与filter实例详解
2019/02/27 Javascript
JavaScript实现五子棋游戏的方法详解
2019/07/08 Javascript
[01:19:35]DOTA2上海特级锦标赛主赛事日 - 3 败者组第三轮#2Fnatic VS OG第二局
2016/03/05 DOTA
[01:58]2018DOTA2亚洲邀请赛趣味视频——交流
2018/04/03 DOTA
[43:58]DOTA2-DPC中国联赛定级赛 LBZS vs SAG BO3第一场 1月8日
2021/03/11 DOTA
Python实现中一次读取多个值的方法
2018/04/22 Python
python调用Matplotlib绘制分布点并且添加标签
2018/05/31 Python
python使用turtle库绘制时钟
2020/03/25 Python
Django框架模板注入操作示例【变量传递到模板】
2018/12/19 Python
对Python _取log的几种方式小结
2019/07/25 Python
pytorch方法测试——激活函数(ReLU)详解
2020/01/15 Python
详解h5页面在不同ios设备上的问题总结
2019/03/01 HTML / CSS
铭宣海淘转运:美国、日本、英国转运等全球转运公司
2019/09/10 全球购物
Genny意大利官网:意大利高级时装品牌
2020/04/15 全球购物
女娲补天教学反思
2014/02/05 职场文书
司机职责范本
2014/03/08 职场文书
成立公司计划书
2014/05/07 职场文书
党员检讨书
2014/10/13 职场文书
一般基层干部群众路线教育实践活动个人对照检查材料
2014/11/04 职场文书
2016党员学习心得体会范文
2016/01/23 职场文书
小程序wx.getUserProfile接口的具体使用
2021/06/02 Javascript
详解Go语言Slice作为函数参数的使用
2021/07/02 Golang
uni-app 微信小程序授权登录的实现步骤
2022/02/18 Javascript