分布式应用:Zabbix监控Nginx

目录

一、理论

1.Zabbix监控Nginx

二、实验

1.Zabbix监控Nginx部署

三、问题

1.重启zabbix客户端失败

2.zabbix服务端测试客户端nginx状态失败

 3.nginx启动失败

 4.权限不够


一、理论

1.Zabbix监控Nginx

(1)环境

zabbix服务端:192.168.204.214

zabbix客户端:192.168.204.215

(2)客户端安装nginx(yum方式)

#安装epel扩展源,然后安装nginx并启动
yum install epel-release -yyum install nginx -ysystemctl start nginxsystemctl start nginx#修改nginx主页内容,nginx01修改为nginx01 test,nginx02修改nginx02 testecho nginx01 test >/usr/share/nginx/html/index.html

(3)编辑nginx子配置文件

#直接在nginx子配置文件夹中创建一个新的子配置文件,因为是yum安装无须在主配置文件中指定子配置文件
vim /etc/nginx/conf.d/upstream.conf文件内容:upstream nginxtest{server 192.168.204.215:8080;}#反向代理模块,将2个tomcat的ip和端口号写入其中,反代模块名称为nginxtest#server模块中的第一个location模块,指定了根为html,支持主页文件类型三个,注意分号结尾location  ~ .*\.(gif|jpg|jpeg|png|bmp|swf|css)$ {root /usr/share/nginx/html;     }#server模块中第二个location模块,配置不区分大小写的任意开头只要以.()括号内的任意一个内容结尾则为静态资源访问/usr/share/nginx/html下的页面location ~ .*\.jsp$ {proxy_pass http://nginxtest;proxy_set_header HOST $host;    proxy_set_header X-Real-IP $remote_addr;            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;}#server模块中第三个location模块,配置不区分大小写的任意开头只要.jsp结尾就由nginx反向代理模块nginxtest进行处理

在server{}中添加以下内容

ocation /nginx_status
{
stub_status on;
access_log off;
allow 127.0.0.1;
deny all;
}

(3)重载nginx配置

nginx -s reload

(4)测试

curl http://127.0.0.1/nginx_status
Active connections: 1 
server accepts handled requests1 1 1 
Reading: 0 Writing: 1 Waiting: 0 

nginx状态信息已显示

(5) 添加监控脚本

vim /usr/local/sbin/ngx_status.sh

添加权限

chmod 777 /usr/local/sbin/ngx_status.sh

(6)编辑zabbix_agent配置文件

 vim zabbix_agent2.conf 在Option:UserParameter处添加:UserParameter=nginx.status[*],/usr/local/sbin/ngx_status.sh $1

(7)选择模板

第一种方法:选择官方模板

配置-主机-模板-Template App NGINX

第二种方法:导入模板

在zabbix前端页面点击配置→模板→导入

导入刚才创建的xml文件即可 导入成功后在主机列表页面选择被监控的机器(客户端)链接该模板即可开始监控nginx

二、实验

1.Zabbix监控Nginx部署

(1)安装、编辑nginx子配置文件夹创建文件

依赖包

安装

 

 

直接在nginx子配置文件夹中创建一个新的子配置文件,因为是yum安装无须在主配置文件中指定子配置文件

在server{}中添加以下内容

 (2)脚本

授权(应授权777)

(3)客户端测试nginx状态

(3)修改配置文件

(4)服务器端测试

 (5)导入模板

选择官方模板

导入自定义模板

 (3)访问网页

 观察变化

三、问题

1.重启zabbix客户端失败

(1)报错

 (2)原因分析

命令错误

(3)解决方法

用正确命令

[root@zbx-agent01 zabbix]# systemctl restart zabbix-agent2
[root@zbx-agent01 zabbix]# netstat -natp | grep zabbix
tcp6       0      0 :::10050                :::*                    LISTEN      4715/zabbix_agent2 

2.zabbix服务端测试客户端nginx状态失败

(1)报错

 (2)原因分析

zabbix server监听全网地址,agent监听内网地址

把zabbix_agentd.conf中 的server把zabbix_server的公网和内网地址都加行。然后agent就可以正常获取到值了;

修改客户端配置文件监听的主服务器地址,并取消反向代理

vim /etc/zabbix/zabbix_agent2.conf

 zabbix服务器网页重新配置

 

 3.nginx启动失败

(1)报错

 (2)原因分析

检查

 

location模块放错位置

 (3)解决方法

locaton块放在server块中

 4.权限不够

(1)报错

 (2)原因分析

未有效授权

(3)解决方法

增加权限

[root@zbx-agent01 tmp]# chmod 777 /usr/local/sbin/ngx_status.sh

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/34685.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Tomcat线程池原理

1. 一个 SpringBoot 项目能同时处理多少请求?tomcat容器, 200 次。 2. 怎么来的? 而点击这些线程,查看其堆栈消息,可以看到 Tomcat、threads、ThreadPoolExecutor 等关键字 基于“短时间内有 200 个请求被立马处理…

Postman下载教程

目录 下载 安装 注意事项 看到很多小伙伴在问 Postman 下载的相关问题,花时间整理了下,下面教新入门的小伙伴如何去下载 Postman。 开始前我们可以先了解下:Postman 简介 下载 第一步:进入 Postman 官网 首先,我…

二级考python和c语言哪个好,计算机二级python和c

大家好,小编来为大家解答以下问题,二级python和二级c语言哪个更吃香一些,二级python和二级c语言哪个更吃香一点,今天让我们一起来看看吧! 计算机二级貌似只是在校园里的自嗨,出来工作后并没有觉得这个证书有…

LeetCode 21.合并两个有序链表

文章目录 💡题目分析💡解题思路🚩思路1: 归并排序思想(不使用带哨兵卫的头节点)🔔接口源码: 💡解题思路🚩思路2: 归并排序思想(使用带哨兵卫的头节点&#xf…

Ubuntu安装JDK与IntelliJ IDEA

目录 前言 Ubuntu 安装 JDK 1、更新软件包列表 2、安装OpenJDK 3、验证安装 Ubuntu安装IntelliJ IDEA 1、下载 IntelliJ IDEA 2、解压缩 IntelliJ IDEA 安装包 3、移动 IntelliJ IDEA 到安装目录 4、启动 IntelliJ IDEA 前言 APT(Advanced Package Tool&…

web-xss-dvwa

目录 xss(reflected) low medium high xss(store) low medium high xss(dom) low medium high xss(reflected) low 没有什么过滤,直接用最普通的标签就可以了 http://127.0.0.1/DVWA-master/vulnerabili…

C++ STL vector 模拟实现

✅<1>主页&#xff1a;我的代码爱吃辣 &#x1f4c3;<2>知识讲解&#xff1a;C之STL &#x1f525;<3>创作者&#xff1a;我的代码爱吃辣 ☂️<4>开发环境&#xff1a;Visual Studio 2022 &#x1f4ac;<5>前言&#xff1a;上次我们已经数字会用…

unity新输入系统的简单使用(New InputSystem)

1、在包管理器 unity注册表中下载安装InputSystem 2、给玩家添加组件PlayerInput&#xff0c;点击CreatAction,创建一个InputAct InputAct,这是玩家的输入文件&#xff0c;在里面可以设置玩家输入 3、使用 例如玩家控制角色移动 在InputAct中&#xff0c;默认已经设置好了移…

[python]RuntimeError: Can‘t decrement id ref count (unable to close file...

使用spectralspatial模型进行EEG分类时&#xff0c;出现以下错误 RuntimeError: Cant decrement id ref count (unable to close file, errno 5, error message Input/output error) Segmentation fault (core dumped) 猜测是因为存储的model太大了导致的&#xff0c;找到了…

hive 中最常用日期处理函数

hive 常用日期处理函数 在工作中&#xff0c;日期函数是提取数据计算数据必须要用到的环节。哪怕是提取某个时间段下的明细数据也得用到日期函数。今天和大家分享一下常用的日期函数。为什么说常用呢&#xff1f;其实这些函数在数据运营同学手上是几乎每天都在使用的。 技术交…

FreeRTOS(计数信号量)

资料来源于硬件家园&#xff1a;资料汇总 - FreeRTOS实时操作系统课程(多任务管理) 目录 一、计数信号量的定义与应用 1、计数信号量的定义 2、计数信号量的应用 二、计数信号量的运作机制 1、任务间计数信号量的实现 三、计数信号量常用的API函数 1、计数信号量典型流程…

双指针算法

文章目录 双指针算法leetcode题目 双指针算法 双指针算法可以实现对于时间复杂度降一维度&#xff0c;使得O(n2)的算法时间复杂度变为O(n) 指针类型 对撞指针快慢指针 对撞指针 一般是用于顺序结构中的&#xff0c;也可以称为左右指针&#xff0c;从两端向中间移动&#xff0c…

【工作中问题解决实践 十一】Kafka消费者消费堆积且频繁rebalance

最近有点不走运&#xff0c;老是遇到基础服务的问题&#xff0c;还是记着点儿解决方法&#xff0c;以后再遇到快速解决吧&#xff0c;今天遇到这个问题倒不算紧急&#xff0c;但也能通过这个问题熟悉一下Kafka的配置。 问题背景 正在开会的时候突然收到一连串的报警&#xff…

上篇文章viewerjs(npm包补丁)的错误更正。(npm补丁本地没问题,流水线打包要没效果,要么报错)

1、上篇文档的包补丁在本地使用没有问题&#xff0c;并且同事拉代码后也会自动同步npm_modules&#xff0c;也没有问题 2、问题出现在打包上&#xff0c;我这边的项目是用teambition上的飞流设置的流水线来进行打包的&#xff0c;里面用到了两个指令 yarn install npm run bu…

IDEA关闭项目,但是后台程序没有关闭进程(解决方案)

最近遇到一个很奇怪的问题&#xff0c;idea关闭项目后&#xff0c;系统进程没有杀死进程&#xff0c;再次执行的时候会提示端口占用&#xff0c;并提示Process exited with an error: 1 (Exit value: 1) 错误原因&#xff1a;应用程序关闭后&#xff0c;进程不能同步关闭 解决方…

使用ffmpeg将m4a及wav等文件转换为MP3格式

要使用ffmpeg将m4a及wav等文件转换为MP3格式&#xff0c;您可以按照以下步骤进行操作&#xff1a; 安装 ffmpeg 确保您已经安装了ffmpeg软件。如果没有安装&#xff0c;请访问ffmpeg的官方网站https://ffmpeg.org/ 并按照说明进行安装。 Win10 / Win11 可以通过 winget 命令…

角角の Qt学习笔记(一)

目录 一、解决在创建新项目时遇到的几个问题 二、信号和槽&#xff08;非自定义&#xff09; 三、调用 UI 中的元素&#xff08;比如按钮&#xff09; 一、解决在创建新项目时遇到的几个问题 在新建项目时&#xff0c;我选择的构建系统为CMake。然后勾选了Generate form&…

fabric.js里toDataURL后,画布内容展示不全?

复现场景&#xff1a; 用fabric生成画布后&#xff0c;转成图片&#xff0c;然后直接在浏览器里打开&#xff0c;画布展示内容缺失 画布原图&#xff1a; toDataURL后链接在浏览器打开&#xff1a; 原因解析&#xff1a; base64链接太长&#xff0c;输入浏览器链接被截断&…

MySQL 数据库文件的导入导出

目录 数据库的导出 导出整个数据库 导出数据库中的数据表 导出数据库结构 导出数据库中表的表结构 导出多个数据库 导出所有数据库 数据库的导入 数据库的导出 mysqldump -h IP地址 -P 端口 -u 用户名 -p 数据库名 > 导出的文件名 用管理员权限打开cmd进入MySQL的bi…

python+tkinter实现图书管理系统(首发)

文章目录 前文运行环境功能图数据操作图书数据管理用户数据管理借书记录管理 功能界面管理员界面首页图书管理用户管理借书记录更改密码 普通用户界面 其他功能数字时间显示加载画面显示输入框提示词界面居中显示借书时间和还书时间记录公告栏数据操作 结尾 前文 本文将用tkin…