nginx-prometheus-exporter 官方仓库和文档

使用阿里云Prometheus监控Nginx(新版)

腾讯云Nginx Exporter 接入

  1. 网上关于 nginx 监控几乎全都需要增加 nginx-module-vts 模块,但是,一般情况下都是直接 apt /yum 安装的 nginx ,重新源码编译 nginx 不太现实!

  2. 初级阶段用不了那么复杂,如果希望高级一些,不如直接使用 openResty,然后,通过 LUA 支持模块进行 exporter

  3. 通过查看阿里云和腾讯云文档,都只是通过 ngx_http_stub_status_module 模块功能来输出 nginx_status

  4. 我这里 apt install nginx 后, 版本是 1.18.0 ,检查发现他已经包含了 ngx_http_stub_status_module

  5. 在一个早期安装的 nginx 服务器上,版本是 nginx/1.10.3 (Ubuntu),检查发现也已经包含了 ngx_http_stub_status_module

  6. 版本再早的话,去升级 nginx 吧!

  7. 检查是否已经包含了 ngx_http_stub_status_module

    $ nginx -V 2>&1 | grep -o with-http_stub_status_module

     with-http_stub_status_module
    

    有返回就好!没有返回,去升级 nginx !

学习环境

Prometheus 服务主机
Ubuntu 20.04 Server 192.168.1.203

被监控端服务器
Ubuntu 20.04 Server 192.168.1.205

改造需要监控的网站

  1. 我这里学习环境很简单,新安装的 nginx 只有一个 default 网站,所以就修改着 default

    $ cd /etc/nginx/sites-available
    $ sudo vim default
    增加一个 location /nginx_status 就可以了

     # wzh 20211214location /nginx_status {stub_status on;# allow 127.0.0.1;  #only allow requests from localhost# deny all;   #deny all other hosts}
    

    为了测试方便,注释掉了其中的 allow 和 deny

    重启服务生效
    sudo service nginx reload

  2. 测试一下
    $ curl http://127.0.0.1/nginx_status
    $ curl http://192.168.1.205/nginx_status

     Active connections: 1 server accepts handled requests2 2 2 Reading: 0 Writing: 1 Waiting: 0
    

下载安装 nginx-prometheus-exporter

  1. 上这里查看一下最新版本号,当前是 0.9,0
    https://github.com/nginxinc/nginx-prometheus-exporter/tags

  2. 我这里直接使用了 Docker 方式来部署 nginx-prometheus-exporter

    $ docker run -p 9113:9113 nginx/nginx-prometheus-exporter:0.9.0 -nginx.scrape-uri http://192.168.1.205/nginx_status

     2021/12/15 02:02:45 Starting NGINX Prometheus Exporter version=0.9.0 commit=5f88afbd906baae02edfbab4f5715e06d88538a0 date=2021-03-22T20:16:09Z2021/12/15 02:02:45 Listening on :91132021/12/15 02:02:45 NGINX Prometheus Exporter has successfully started
    

    这就已经启动了 nginx-prometheus-exporter , 输出端口是 9113

  3. 测试一下
    $ curl 192.168.1.205:9113
    $ curl 192.168.1.205:9113/metrics

加入到 Prometheus 监控 jobs

回到 Prometheus 服务主机

  1. 配置 prometheus.yml 文件
    之前 使用的 Docker 方式安装Prometheus,配置文件放在 /opt/prometheus/

    $ vim /opt/prometheus/prometheus.yml

     global:scrape_interval:     60sevaluation_interval: 60sscrape_configs:- job_name: prometheusstatic_configs:# - targets: ['localhost:9090']- targets: ['192.168.1.203:9090']labels:instance: prometheus- job_name: linux-203static_configs:- targets: ['192.168.1.203:9100']labels:instance: linux-203- job_name: mysql-203static_configs:- targets: ['192.168.1.203:9104']labels:instance: mysql-203- job_name: mysql-205static_configs:- targets: ['192.168.1.205:9104']labels:instance: mysql-205- job_name: linux-205static_configs:- targets: ['192.168.1.205:9100']labels:instance: local-205- job_name: nginx-205static_configs:- targets: ['192.168.1.205:9113']labels:instance: nginx-205
    
  2. 重启 Docker prometheus
    docker restart prometheus

  3. 查看 Prometheus 的 targets
    http://192.168.1.203:9090/targets

配置 grafana 仪表盘

  1. 先去找到一个 nginx 的 dashboard

    https://grafana.com/grafana/dashboards/

    找了好几个不好用,显示 N/A ,也许是我不会用!最后找到一个可用的, ID 是 12708

  2. 这是 12708 的 dashboard

Prometheus 监控 nginx相关推荐

  1. promehteus 监控超时_05 . Prometheus监控Nginx

    List CentOS7.3 prometheus-2.2.1.linux-amd64.tar.gz nginx-module-vts 节点名 IP 软件版本 硬件 网络 说明 Prometheus ...

  2. 运维实操——kubernetes(十九)k8s中部署Prometheus、监控nginx、HPA自动伸缩

    k8s中部署Prometheus.监控nginx.HPA自动伸缩 1.什么是Prometheus? 2.k8s中部署Prometheus监控 3.prometheus监控nginx 4.基于prome ...

  3. nginx upstream配置_Prometheus快速监控Nginx

    需求:Prometheus 监控Nginx主要用到以下三个模块: nginx-module-vts:Nginx virtual host traffic status module,Nginx的监控模 ...

  4. Prometheus监控使用

    梳理总结一下生产中使用到的prometheus相关知识.包括但不限于传统服务(主机.Nginx.Tomcat.Haproxy等).云原生(Kubernetes)周边生态的监控等等. 部署使用中最直观的 ...

  5. 从零搭建Prometheus监控报警系统

    从零开始搭建Prometheus自动监控报警系统 从零搭建Prometheus监控报警系统 什么是Prometheus? Prometheus是由SoundCloud开发的开源监控报警系统和时序列数据 ...

  6. 服务器运维监控指标,运维体系~指标监控~Prometheus监控告警与日志

    一 Prometheus 入门 1.1 入门介绍 运维体系~指标监控 先来一张图,说明一下Prometheus监控相关的软件和知识点. 1: 首先要安装:Prometheus, 负责收集各种监控指标, ...

  7. 容器环境自建数据库、中间件一键接入阿里云 Prometheus 监控

    阿里云Prometheus服务4月9日发布重大升级,支持容器环境下一键接入MySQL.Redis.MangoDB.ElasticSearch等数据库和Kafka.ZooKeeper等中间件的监控,并提 ...

  8. 云计算监控—Prometheus监控系统(文末赠书)

    陈金窗 刘政委 张其栋 郑少斌 读完需要 20 分钟 速读仅需 7 分钟 本文摘自于<Prometheus 监控技术与实战>一书,从云计算时代的业务特点出发,探讨了云计算监控的目标和挑战, ...

  9. prometheus监控-1

    1.prometheus安装 1.1 prometheus安装 tar -xzvf sotf/prometheus-2.35.0.linux-amd64.tar.gz -C ./app/ 1.2 pr ...

  10. Prometheus监控以及告警配置

    Prometheus监控 Prometheus简介 Prometheus是一套开源的系统监控报警框架.Prometheus作为新一代的云原生监控系统,相比传统监控监控系统(Nagios或者Zabbix ...

最新文章

  1. UTXO Commitment有望彻底解决大区块存储问题
  2. bal插口_EBS R12各模块接口表大全
  3. 基于tcpdump的Android智能移动终端数据包捕获完整解决方案
  4. 一次bug死磕经历之Hbase堆内存小导致regionserver频繁挂掉
  5. Linux find查找文件夹(目录)所在位置
  6. 常见排序算法详解 (收藏!)
  7. JQuery让input从disabled变成enabled
  8. 用if写一个备份mysql的脚本
  9. 麦考林周三股价下跌7.39%报收于6.1美元
  10. 遗传算法python简单示例
  11. js 表单打开新窗口
  12. VGG19 基本网络结构图
  13. JavaWeb登陆界面
  14. 全国大学生信息安全竞赛writeup--暗号(reverse300)
  15. 浏览器兼容测试工具-IETest
  16. php判断一个数是不是素数,php用函数判断一个数是否素数
  17. python上机编程报告_Python程序设计实验报告六:函数
  18. nestjs入门(controller,service,module)
  19. 与三五同好共赴技术盛宴,不亦说乎?
  20. 计算安全和无条件安全

热门文章

  1. AngularJS学习之旅—AngularJS 事件(十四)
  2. Linux下vi命令小结
  3. Mysql忘记密码,支持中文,tab补全
  4. 【leetcode】617. Merge Two Binary Trees
  5. 嵌入式视频采集编程思路(Video 4 Linux)-转
  6. C/C++中使用可变参数
  7. 原生js--类、原型、构造函数
  8. sklearn中的损失函数
  9. 用户登陆过程 及时更新信息方法
  10. RecycleView