分布式应用: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 个请求被立马处理…

分类预测 | Python实现LR逻辑回归多输入分类预测

分类预测 | Python实现LR逻辑回归多输入分类预测 目录 分类预测 | Python实现LR逻辑回归多输入分类预测基本介绍模型描述源码设计学习小结参考资料基本介绍 逻辑回归是一种广义线性的分类模型且其模型结构可以视为单层的神经网络,由一层输入层、一层仅带有一个sigmoid激活函数…

设计模式十二:享元模式(Flyweight Pattern)

当我们需要创建大量相似对象时,享元模式可以帮助我们节省内存空间和提高性能。该模式通过共享相同的数据来减少对象的数量。 在享元模式中,有两种类型的对象:享元(Flyweight)和非享元(Unshared Flyweight&a…

Postman下载教程

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

maven打包上传到私有仓库的步骤

maven打包上传到私有仓库的步骤 一、pom.xml引入二、Maven的settings.xml三、pom.xml中添加源码插件四、执行发布命令 先准备私库地址: http://localhost:8081/nexus3/repository/maven-releases http://localhost:8081/nexus3/repository/maven-snapshots 假如现需…

如何在Vue表单处理中实现表单字段的文件下载

Vue.js 是一种流行的JavaScript框架,用于构建用户界面。在Vue应用中,我们经常需要处理表单操作,其中一个常见需求是实现文件下载。以下介绍如何在Vue表单处理中实现表单字段的文件下载,大家共同交流。 一、使用HTML的a标签实现文…

Java单例模式详解(五种实现方式)

1、什么是单例模式? Java单例模式是一种设计模式,用于确保一个类只有一个实例,并提供全局访问点以获取该实例。它通常用于需要共享资源或控制某些共享状态的情况下。 例如: 一个日志记录器(Logger)。在一个…

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

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

JavaScript+Asp.Net MVC5同时下载多个文件

前端同时启动多个下载任务(但是没有做压缩包下载) 前端JavaScript脚本: var idList [1,2,3];//要下载的列表 $.each(idList, function (index, item) {downloadURL("/File/GetPdf?id" item); });var count 0; var downloadUR…

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;上次我们已经数字会用…

【uniapp使用web-view点击返回报错后返回不了】

问题及解决 问题解决 问题 使用web-view跳转到别人的网站之后点击返回报错&#xff0c;返回不了 解决 使用以下方法 <template><view></view> </template> <script> var wv;//计划创建的webview export default {onLoad() {// #ifdef APP-PL…

(杭电多校)2023“钉耙编程”中国大学生算法设计超级联赛(7)

1002 Random Nim Game 只有3种情况,要么必赢,要么必输,要么从宏观角度考虑,随机的话,赢的概率就是1/2(就像抛硬币一样,随着抛的次数越来越多,正反面的概率将越来越接近1) 当只要有一堆石头数量不是1,那么就是必赢或必输,赢的概率就是1/2 当每堆石头数量都为1时,当堆数为奇数…

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

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

学习pytorch 2 导入查看dataset

学习pytorch 2 2. dataset实战代码数据集 2. dataset实战 B站小土堆视频 代码 from torch.utils.data import Dataset from PIL import Image #import cv2 import osclass MyData(Dataset):def __init__(self, root_dir, label_dir):self.root_dir root_dirself.label_dir …

【Unity实战100例】人物状态栏UI数据刷新—MVC观察者模式

目录 一.创建Model层数据模型 二.创建View层关联UI组件 三.创建Controller层使得V和M数据关联 源码:htt

[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;其实这些函数在数据运营同学手上是几乎每天都在使用的。 技术交…