广告
返回顶部
首页 > 资讯 > 服务器 >prometheus监控nginx的实现
  • 747
分享到

prometheus监控nginx的实现

2024-04-02 19:04:59 747人浏览 八月长安
摘要

目录简述1.下载Nginx-module-vts模块2.安装nginx3.安装nginx-vts-exporter4.修改prometheus-cfg.yaml文件5.在grafan

简述

监控Nginx主要用到以下三个模块:

  • nginx-module-vts:Nginx virtual host traffic statusmodule,Nginx的监控模块,能够提供jsON格式的数据产出。
  • nginx-vts-exporter:Simple serverthat scrapes Nginx vts stats and exports them via Http for Prometheus consumption。主要用于收集Nginx的监控数据,并给Prometheus提供监控接口,默认端口号9913。
  • Prometheus:监控Nginx-vts-exporter提供的Nginx数据,并存储在时序数据库中,可以使用ProMQL对时序数据进行查询和聚合。

1.下载nginx-module-vts模块

解压
unzip nginx-module-vts-master.zip
mv nginx-module-vts-master /usr/local/

2.安装nginx

tar zxvf nginx-1.15.7.tar.gz
cd nginx-1.15.7

./configure  --prefix=/usr/local/nginx --with-http_gzip_static_module --with-http_stub_status_module --with-http_ssl_module --with-pcre --with-file-aio --with-http_realip_module --add-module=/usr/local/nginx-module-vts-master

make && make install

修改nginx配置文件,新起一个vhost暴露给server端访问数据:

vim /usr/local/nginx/conf/nginx.conf

server下添加如下:http {
    vhost_traffic_status_zone;  --添加

    ...

    server {

        ...

        location /status {
            vhost_traffic_status_display;  --添加
            vhost_traffic_status_display_fORMat html;  --添加
        }
    }
}

Nginx-module-vts模块介绍:

这是一个Nginx模块,提供对虚拟主机状态信息的访问。它包含当前状态,例如servers, upstreams, caches。这类似于nginx plus的实时活动监视。内置的html和旧版本的演示页面也保持一致。这个模块主要就是来监控nginx虚拟主机状态的。

首先,指令vhost_traffic_status_zone是必需的,如果指令vhost_traffic_status_display被设置,可以通过下方式访问:

/status/format/json

请求/status/format/json将用一个包含当前活动数据的json文档进行响应,以便在实时仪表板和三方监视工具中使用。

/status/format/html

请求/status/format/html将会用一个内置的内置的html仪表板网页进行响应,该仪表盘的内部请求走/status/format/json

/status/format/jsonp

请求/status/format/jsonp将用一个jsonp回调函数进行响应,该函数包含用于实时仪表板和三方监视工具的当前活动数据。

/status/format/prometheus

请求/status/format/prometheus将用包含当前活动数据的prometheus文档来响应。

/status/control

请求/status/control将返回基于查询语句字符串重置或删除区域后的JSON文档。更多可以参考Control.

测试nginx配置文件是否正确:
/usr/local/nginx/sbin/nginx -t

如果正确没问题,启动nginx
启动nginx:
/usr/local/nginx/sbin/nginx

此时访问http://IP地址/status可以看到nginx的状态信息了。

在这里插入图片描述

3.安装nginx-vts-exporter

https://GitHub.com/hnlq715/nginx-vts-exporter/releases/download/v0.9.1/nginx-vts-exporter-0.9.1.linux-amd64.tar.gz
tar -zxvf nginx-vts-exporter-0.9.1.linux-amd64.tar.gz
 mv nginx-vts-exporter-0.9.1.linux-amd64  /usr/local/nginx-vts-exporter
chmod +x /usr/local/nginx-vts-exporter-0.5/bin/nginx-vts-exporter
cd /usr/local/nginx-vts-exporter/bin
通过nginx-vts-exporter二进制文件来执行nginx-vts-exporter程序
nohup ./nginx-vts-exporter  -nginx.scrape_uri http://10.10.xx.xx:80/status/format/json &

#注意:http://10.10.xx.xx/status/format/json这个地方的ip地址是nginx的IP地址
nginx-vts-exporter的监听端口是9913

也可以使用systemctl管理nginx-vts-exporter进程。

[root@localhost nginx-vts-exporter]# vim /usr/lib/systemd/system/nginx_vts_exporter.service 
[Unit]
Description=prometheus_nginx_vts
After=network.target

[Service]
Type=simple
ExecStart=/usr/local/nginx-vts-exporter/nginx-vts-exporter  -nginx.scrape_uri http://10.10.xx.xx:80/status/format/json
Restart=on-failure

[Install]
WantedBy=multi-user.target
[root@localhost nginx-vts-exporter]# systemctl daemon-reload
[root@localhost nginx-vts-exporter]# systemctl enable  nginx_vts_exporter
[root@localhost nginx-vts-exporter]# systemctl start nginx_vts_exporter
[root@localhost nginx-vts-exporter]# systemctl status nginx_vts_exporter
● nginx_vts_exporter.service - prometheus_nginx_vts
   Loaded: loaded (/usr/lib/systemd/system/nginx_vts_exporter.service; disabled; vendor preset: disabled)
   Active: active (running) since Fri xxxx-xx-xx xx:xx:xx EDT; 4 days aGo
 Main PID: 90274 (nginx-vts-expor)
   CGroup: /system.slice/nginx_vts_exporter.service
           └─90274 /usr/local/nginx-vts-exporter/nginx-vts-exporter -nginx.scrape_uri http://10.10.xx.xx:80/status/format/json

4.修改prometheus-cfg.yaml文件

添加如下job:

  - job_name: 'nginx'
      scrape_interval: 5s
      static_configs:
      - targets: ['192.168.124.16:9913']

kubectl apply -f prometheus-cfg.yaml

kubectl delete -f prometheus-deploy.yaml

kubectl apply -f prometheus-deploy.yaml

#注意: - targets: [‘10.10.xx.xx:9913’]这个ip地址是nginx-vts-exporter程序所在机器的ip地址

5.在grafana界面导入nginx json文件

在这里插入图片描述

 到此这篇关于prometheus监控nginx的实现的文章就介绍到这了,更多相关prometheus监控nginx内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: prometheus监控nginx的实现

本文链接: https://www.lsjlt.com/news/143190.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • prometheus监控nginx的实现
    目录简述1.下载nginx-module-vts模块2.安装nginx3.安装nginx-vts-exporter4.修改prometheus-cfg.yaml文件5.在grafan...
    99+
    2022-11-13
  • prometheus+grafana如何监控nginx
    这篇文章主要介绍prometheus+grafana如何监控nginx,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!在prometheus需要向ngxin中打入探针,通过探针获取ngxin信息,并通过接口输出。下文将...
    99+
    2023-06-21
  • 解析prometheus+grafana监控nginx的方法
    目录1.下载2.安装nginx与nginx-vts-exporter3.安装nginx-vts-exporter-0.9.1.linux-amd64.tar4.配置Prometheu...
    99+
    2022-11-12
  • Prometheus监控实战篇Nginx、Hbase操作详解
    目录一、Prometheus监控Nginx1、监控Nginx相关插件下载地址2、编译Nginx2.1 下载 nginx-release 并解压2.2 解压 Nginx-module-...
    99+
    2022-11-13
  • Prometheus监控Springboot程序的实现方法
    目录1. 添加依赖2. 修改配置文件3. 启用Prometheus监控4. 监控埋点4.1 新建拦截器4.2 注册拦截器5. 验证监控6. 指标类型6.1 Counter6.2 Ga...
    99+
    2022-11-11
  • Prometheus中怎么实现集群监控
    Prometheus中怎么实现集群监控,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。 1、Prometheus 对比 Zabbix和...
    99+
    2022-10-19
  • Prometheus监控运维实战十: 主机监控指标
    1、CPU指标 CPU负载 node_load1node_load5node_load15 以上三个指标为主机的CPU平均负载,分别对应一分钟、五分钟和十五分钟的时间间隔。CPU负载是指某段时间内占用...
    99+
    2023-09-12
    运维 prometheus 服务器
  • zabbix配置nginx监控的实现
    目录案例:zabbix 配置 nginx 监控1. 修改配置文件2. 编写 nginx 监控脚本3. 修改 zabbix 配置文件4. 服务端验证5. 添加模块6. 创建应用集7. ...
    99+
    2022-11-13
  • 【监控系统】Prometheus监控组件Mysql-Exporter配置实战
    Mysql-Exporter主要监控Mysql数据库的稳定性、吞吐量、连接情况、缓冲池使用情况、查询性能等各项指标,是我们压测时常常需要监控的一些指标。 目前,Exporter 支持高于5.6版本的 ...
    99+
    2023-09-02
    prometheus mysql 数据库
  • docker搭建基于prometheus的监控体系步骤实现
    目录1.启动prometheus容器服务2.启动成功后,公网访问该9090端口进入普罗米修斯主页3.部署mysqld-exporer监控mysql数据库(想监控什么就部署对应的exp...
    99+
    2022-11-13
  • Nginx中怎么实现状态监控
    这期内容当中小编将会给大家带来有关Nginx中怎么实现状态监控,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。NginxStatus 显示的内容意思如下:active co...
    99+
    2022-10-19
  • SpringBoot使用prometheus监控的示例代码
    目录1.关于Prometheus2.有关Grafana3.SpringBoot使用Prometheus3.1 依赖内容3.2 配置文件3.3 设置application4.Prome...
    99+
    2022-11-11
  • 开源监控系统Prometheus的前世今生
    Prometheus是SoundCloud公司开源的监控系统,同时也是继Kubernetes之后,第二个加入CNCF的项目。Prometheus是一个优秀的监控系统,沃趣围绕着Prometheus先后开发了多个组件,包括基础告警组件,服务发...
    99+
    2023-06-04
  • Prometheus和NodeExporter安装监控数据的方法
    这篇文章主要介绍了Prometheus和NodeExporter安装监控数据的方法的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Prometheus和NodeExporter安装监控数据的方法文章都会有所收获,...
    99+
    2023-07-02
  • zabbix自定义监控nginx状态实现过程
    目录zabbix自定义监控nginx状态1. 开启状态界面2. 写监控脚本3. 配置监控项4. 配置触发器5. 测试zabbix自定义监控nginx状态 ...
    99+
    2022-11-12
  • 怎么实现zabbix自定义监控nginx状态
    这篇文章主要介绍“怎么实现zabbix自定义监控nginx状态”,在日常操作中,相信很多人在怎么实现zabbix自定义监控nginx状态问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么实现zabbix自定义...
    99+
    2023-06-25
  • 超级实用,解密云原生监控技术,使用prometheus轻松搞定redis监控
    前言 大家好,我是沐风晓月,本文收录于《 prometheus监控系列》 ,截止目前prometheus专栏已经更新到第8篇文章。 本文中的是prometheus已经安装好,如果你还未安装,可以参考 prometheus安装及使用入门 若...
    99+
    2023-08-18
    云原生 运维 服务器 linux 原力计划
  • 如何实时监控Nginx服务器
    本篇内容主要讲解“如何实时监控Nginx服务器”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何实时监控Nginx服务器”吧!Linux运维工程师的首要职责就是保证业务7 x 24小时稳定的运行...
    99+
    2023-06-03
  • 怎么在SpringBoot中利用Prometheus和Grafana实现实现应用监控和报警功能
    这篇文章将为大家详细讲解有关怎么在SpringBoot中利用Prometheus和Grafana实现实现应用监控和报警功能,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。SpringBoot的...
    99+
    2023-06-06
  • prometheus监控节点程序的安装及卸载命令
    目录安装监控服务卸载监控程序本教程基于AlpineLinux,请注意将apk相关命令替换为对应系统的包命令,比如apt、yum等。 安装监控服务 apk add prometheus...
    99+
    2022-11-13
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作