使用Exporter为Prometheus添加监控对象(持续更新ing)

本文涉及的产品
可观测监控 Prometheus 版,每月50GB免费额度
简介: 使用Exporter为Prometheus添加监控对象(持续更新ing)

1.Linux主机监控

1.1.Node_export服务下载及安装

  • 被监控主机信息
系统:CentOS Linux release 7.4.1708 (Core)
IP地址:192.168.1.4
Node exporter版本:node_exporter-1.0.1.linux-amd64.tar.gz
wget https://github.com/prometheus/node_exporter/releases/download/v1.0.1/node_exporter-1.0.1.linux-amd64.tar.gz
  • 解压到指定目录
tar xf node_exporter-1.0.1.linux-amd64.tar.gz -C /app/
[root@centos7 ~]# cd /app/
[root@docker02 app]# chown -R root:root node_exporter-1.0.1.linux-amd64/
  • 添加node_exporter为系统服务
[root@centos7 app]# vim /usr/lib/systemd/system/node_exporter.service
[root@centos7 app]# cat /usr/lib/systemd/system/node_exporter.service 
[Unit]
Description=node_exporter
Documentation=https:// prometheus.io/
After=network-online.target
[Service]
Type=simple
User=root
Group=root
ExecStart=/app/node_exporter-1.0.1.linux-amd64/node_exporter
Restart=on-failure
[Install]
WantedBy=multi-user.target
  • 启动服务
[root@centos7 system]# systemctl daemon-reload
[root@centos7 app]# systemctl start node_exporter.service 
[root@centos7 app]# systemctl enable node_exporter.service
[root@centos7 system]# systemctl status node_exporter.service 
● node_exporter.service - node_exporter
   Loaded: loaded (/usr/lib/systemd/system/node_exporter.service; disabled; vendor preset: disabled)
   Active: active (running) since 五 2021-01-22 17:04:49 CST; 9s ago
 Main PID: 1662 (node_exporter)
   CGroup: /system.slice/node_exporter.service
           └─1662 /app/node_exporter-1.0.1.linux-amd64/node_exporter
[root@centos7 ~]# ss -utpln
tcp   LISTEN     0      128             :::9100                        :::*                   users:(("node_exporter",pid=1662,fd=3))

1.2.把Node_export集成prometheus

  • 修改配置文件
[root@centos7 prometheus]# cd /app/prometheus
[root@centos7 prometheus]# vim prometheus.yml
scrape_configs:
- job_name: 'prometheus'
    static_configs:
    - targets: ['192.168.1.3:9090']
- job_name: 'node_exporter'
    static_configs:
    - targets: ['192.168.1.4:9100']
  • 重启prometheus服务
[root@centos7 system]# killall -9 2212
[root@centos7 system]# nohup ./prometheus &

登录192.168.1.3:9090,点击status——>targets可以看到新的监控节点

20210125143905781.png

1.3.在grafana中导入Node_export仪表盘

在grafana主页面左侧导航栏中点击“+”号,点击import,输入8919

20210125144747237.png

点击ID号后面的load,在最下方选择数据源后点击import即可。

(我的已经添加过了,就不做了)

最终效果图如下:

20210125145133529.png

2.Nginx服务监控

2.1.下载安装Nginx服务

安装部署文档链接:Nginx安装部署

链接文档版本有些老,不过步骤相同,此实验版本为Nginx-1.16.1

在编译Nginx过程中,加入以下模块:

--add-module=/path/to/nginx-module-vts

nginx-module-vts模块下载命令:

git clone git://github.com/vozlt/nginx-module-vts.git

2.2.修改配置文件

  • 在配置文件中添加以下内容:
http {
    vhost_traffic_status_zone;
    ...
    server {
        ...
        location /status {
            vhost_traffic_status_display;
            vhost_traffic_status_display_format html;
        }
    }
}

2.3.启动服务并测试

/app/nginx/sbin/nginx

看到以下信息说明配置正确

20210126152516134.png

2.4.下载nginx-vts-exporter并配置

  • 下载下载nginx-vts-exporter
wget https://github.com/hnlq715/nginx-vts-exporter/releases/download/v0.10.3/nginx-vts-exporter-0.10.3.linux-amd64.tar.gz
  • 解压并启动
[root@node-02 server]# tar xf nginx-vts-exporter-0.10.3.linux-amd64.tar.gz -C /app
[root@node-02 server]# cd /app/
[root@node-02 app]# ln -s nginx-vts-exporter-0.10.3.linux-amd64/ nginx-vts-exporter
[root@node-02 nginx-vts-exporter]# ./nginx-vts-exporter -nginx.scrape_uri http:// localhost/status/format/json

2.5.添加为系统服务

(默认监听端口为9913)

vim /usr/lib/systemd/system/nginx-vts-exporter.service
[Unit]
Description=Prometheus Nginx VTS Exporter
After=network.target
User=nginx
Group=nginx
[Service]
Type=simple
Restart=always
ExecStart=/app/nginx-vts-exporter/nginx-vts-exporter\
-nginx.scrape_uri http:// localhost/status/format/json
[Install]
WantedBy=multi-user.target
[root@node-02 system]# systemctl daemon-reload 
[root@node-02 system]# systemctl start nginx_vts_exporter.service 
[root@node-02 system]# systemctl enable nginx_vts_exporter.service 

2.6.与Prometheus集成

  • 在prometheus配置文件prometheus.yml中追加以下内容:
  - job_name: 'nginx_vts_exporter'
    scrape_interval: 10s
    static_configs:
    - targets: ['192.168.1.5:9913']
  • 重新启动prometheus服务
[root@centos7 prometheus]# killall -9 prometheus
[root@centos7 prometheus]# nohup ./prometheus &

登录http://192.168.1.3:9090/targets查看

20210126162226133.png

2.7.在grafana中导入仪表盘

  • json文件地址:
    (将文件内容复制到此处)
https://github.com/hnlq715/nginx-vts-exporter/blob/master/dashboard/nginx-vts-exporter.json

20210126164622789.png

点击load后选择import,可以看到以下结果

20210126164747656.png

相关实践学习
容器服务Serverless版ACK Serverless 快速入门:在线魔方应用部署和监控
通过本实验,您将了解到容器服务Serverless版ACK Serverless 的基本产品能力,即可以实现快速部署一个在线魔方应用,并借助阿里云容器服务成熟的产品生态,实现在线应用的企业级监控,提升应用稳定性。
目录
相关文章
|
2月前
|
Prometheus 监控 Cloud Native
【监控】prometheus传统环境监控告警常用配置
【监控】prometheus传统环境监控告警常用配置
【监控】prometheus传统环境监控告警常用配置
|
1月前
|
Prometheus 监控 Cloud Native
介绍如何使用Prometheus进行监控
介绍如何使用Prometheus进行监控
147 3
|
1月前
|
Prometheus 监控 Cloud Native
docker安装prometheus+Granfan并监控容器
【9月更文挑战第14天】本文介绍了在Docker中安装Prometheus与Grafana并监控容器的步骤,包括创建配置文件、运行Prometheus与Grafana容器,以及在Grafana中配置数据源和创建监控仪表盘,展示了如何通过Prometheus抓取数据并利用Grafana展示容器的CPU使用率等关键指标。
|
2月前
|
存储 Prometheus 监控
Grafana 与 Prometheus 集成:打造高效监控系统
【8月更文第29天】在现代软件开发和运维领域,监控系统已成为不可或缺的一部分。Prometheus 和 Grafana 作为两个非常流行且互补的开源工具,可以协同工作来构建强大的实时监控解决方案。Prometheus 负责收集和存储时间序列数据,而 Grafana 则提供直观的数据可视化功能。本文将详细介绍如何集成这两个工具,构建一个高效、灵活的监控系统。
279 1
|
2月前
|
Prometheus 监控 Cloud Native
使用Prometheus搞定微服务监控
使用Prometheus搞定微服务监控
使用Prometheus搞定微服务监控
|
2月前
|
Prometheus Kubernetes 监控
Kubernetes(K8S) 监控 Prometheus + Grafana
Kubernetes(K8S) 监控 Prometheus + Grafana
192 2
|
2月前
|
Prometheus 监控 Cloud Native
在 HBase 集群中,Prometheus 通常监控哪些类型的性能指标?
在 HBase 集群中,Prometheus 通常监控哪些类型的性能指标?
104 2
|
2月前
|
Prometheus 监控 Cloud Native
基于prometheus的微服务指标监控
基于prometheus的微服务指标监控
|
2月前
|
Prometheus 监控 Cloud Native
在 HBase 集群中,Prometheus 通常监控哪些类型的性能指标?
在 HBase 集群中,Prometheus 通常监控哪些类型的性能指标?
|
2月前
|
Prometheus 监控 Cloud Native
基于Prometheus搭建监控平台
基于Prometheus搭建监控平台