Prometheus+grafana环境搭建Nginx(docker+二进制两种方式安装)(六)

由于所有组件写一篇幅过长,所以每个组件分一篇方便查看,前五篇链接如下

Prometheus+grafana环境搭建方法及流程两种方式(docker和源码包)(一)-CSDN博客

Prometheus+grafana环境搭建rabbitmq(docker+二进制两种方式安装)(二)-CSDN博客

Prometheus+grafana环境搭建mysql(docker+二进制两种方式安装)(三)-CSDN博客

Prometheus+grafana环境搭建redis(docker+二进制两种方式安装)(四)-CSDN博客

Prometheus+grafana环境搭建MongoDB(docker+二进制两种方式安装)(五)-CSDN博客

1.监控nginx

1.1 官方地址

GitHub - nginxinc/nginx-prometheus-exporter: NGINX Prometheus Exporter for NGINX and NGINX Plus

1.1.1 nginx配置检查

nginx-prometheus-exporter采集需要验证nginx 是否集成http_stub_status_module模块

linux环境安装的nginx服务: nginx -V 2>&1 | grep -o with-http_stub_status_module

docker环境安装的nginx服务: docker exec -it nginx nginx -V 2>&1 | grep -o with-http_stub_status_module

ps:一般docker版本安装的都比较全,linux安装的有时候需要自己再安装http_stub_status_module模块

有下面红色标识即为安装

1.1.2 配置nginx

在nginx 配置文件下的server 模块增加

复制代码
  location /stub_status {
    stub_status;
    access_log off;
  }

配置完效果

重启nginx或者重新加载配置

docker exec -it b5df nginx -s reload

验证 访问http://192.168.3.111:80/stub_status

1.2 源码包方式安装

exporter下载地址:https://github.com/nginxinc/nginx-prometheus-exporter/releases/download/v1.1.0/nginx-prometheus-exporter_1.1.0_linux_amd64.tar.gz

下载后,上传到自己常用的目录下,tar命令解压

1.2.1 命令行方式运行
复制代码
./nginx-prometheus-exporter --nginx.scrape-uri=http://192.168.90.151:80/stub_status

其他参数

1.2.1 注册为系统服务

vim /etc/systemd/system/nginx_exporter.service

复制代码
[Unit]
Description=nginx_exporter
Documentation=https://prometheus.io/

[Service]
User=prometheus
Group=prometheus
ExecStart=/opt/nginx_exporter/nginx-prometheus-exporter \ 
       --nginx.scrape-uri="http://192.168.90.151:20080/stub_status" 

Restart=on-failure
[Install]
WantedBy=multi-user.target

服务开机启动 并查看状态

systemctl enable nginx_exporter.service --now

systemctl status nginx_exporter.service

1.3 docker方式安装
1.3.1docker命令运行
复制代码
docker run -d -p 9113:9113 \ --restart=always \ --name=nginx-exporter \
nginx/nginx-prometheus-exporter:1.1.0 --nginx.scrape-uri=http://192.168.3.111:20080/stub_status

注意镜像和后面的指令不要换行

1.3.2 docker-compose方式运行

vim docker-compose.yaml

复制代码
version: '3.1' 
services:
  nginx-exporter:
    image: nginx/nginx-prometheus-exporter:1.1.0
    container_name: nginx-exporter
    restart: always
    ports:
      - '9113:9113'
    command: ["--nginx.scrape-uri=http://192.168.3.111:20080/stub_status"]
1.4 配置Prometheus监控

vim xxx/prometheus/prometheus.yml

追加以下内容

复制代码
  - job_name: 'nginx-exporter'
    scrape_interval: 15s
    static_configs:
    - targets: ['192.168.3.112:9113']
      labels:
        instance: 111-nginx服务器 

重载配置 curl -X POST http://localhost:9090/-/reload

验证结果

查看新增nginx相关指标

1.5 配置grafana监控

导入模板参见Prometheus+grafana环境搭建方法及流程两种方式(docker和源码包)(一)-CSDN博客

找到喜欢的模板id,14900

Dashboards | Grafana Labs

查看效果访问 http://192.168.3.112:3000/

相关推荐
程序员不迷路2 小时前
Nginx学习
运维·nginx
童先生15 小时前
Nginx + Vue/React 前端 + API:防止路径混淆漏洞与跨域问题实战分享
前端·vue.js·nginx
2501_920047031 天前
nginx-自制证书实现
运维·windows·nginx·https
SRETalk2 天前
Grafana侧重可视化,那多数据源告警呢?
grafana·nightingale·开源监控·夜莺监控
鹧鸪yy2 天前
认识Node.js及其与 Nginx 前端项目区别
前端·nginx·node.js
__lll_2 天前
Nginx proxy_pass 404/502 根源:漏写末尾斜杠 / 的修复指南
nginx
Clownseven3 天前
Docker+Nginx+Node.js实战教程:从零搭建高可用的前后端分离项目
nginx·docker·node.js
xiao-xiang3 天前
redis-集成prometheus监控(k8s)
数据库·redis·kubernetes·k8s·grafana·prometheus
陈陈CHENCHEN4 天前
【Kubernetes】在 K8s 上部署 Prometheus
kubernetes·prometheus