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/