Prometheus-node_exporter

简介: Prometheus-node_exporter

6、节点硬件资源监控 node_exporter
https://prometheus.io/download/#node_exporter
wget https://github.com/prometheus/node_exporter/releases/download/v1.0.1/node_exporter-1.0.1.linux-amd64.tar.gz
1、配置安装 node_exporter 软件

# 解压文件
tar xf node_exporter-1.0.1.linux-amd64.tar.gz
cd node_exporter-1.0.1.linux-amd64/

# 编写 system 启动文件
vim /etc/systemd/system/prometheus-node.service 
[Unit]
Description=Prometheus Node
After=network.target prometheus.service

[Service]    
Type=simple
ExecStart=/srv/node_exporter-1.0.1.linux-amd64/node_exporter --web.listen-address=0.0.0.0:9100

[Install]
WantedBy=multi-user.target

# 脚本
#!/bin/bash
echo -e "\e[1;31m开始安装系统监控工具--------------------------- \e[0m"
if [ -d /opt/monitor ];then
        cd /opt/monitor
        wget http://x.x.x.x:8080/monitor/node_exporter-1.0.1.linux-amd64.tar.gz
else
        mkdir /opt/monitor  && cd /opt/monitor
        wget http://x.x.x.x:8080/monitor/node_exporter-1.0.1.linux-amd64.tar.gz
fi
tar xf node_exporter-1.0.1.linux-amd64.tar.gz
cd node_exporter-1.0.1.linux-amd64
tee >  /etc/systemd/system/node-export.service << EOF
[Unit]
Description=Prometheus Node
After=network.target prometheus.service

[Service]       
Type=simple
ExecStart=/opt/monitor/node_exporter-1.0.1.linux-amd64/node_exporter --web.listen-address=0.0.0.0:9100

[Install]
WantedBy=multi-user.target
EOF
systemctl daemon-reload
systemctl enable node-export.service
systemctl start node-export.service
systemctl status node-export.service
将 node_exporter 服务设为开机自启并启动
systemctl daemon-reload
systemctl enable prometheus-node.service
systemctl start prometheus-node.service
查看 node_exporter 服务 (默认端口为: 9100)

2、Prometheus 中集成node_exporter
修改 Prometheus 的配置文件 (prometheus.yml),添加 node 服务 (在 scrape_configs 属性下添加)

vim prometheus.yml
  - job_name: 'node'
    static_configs:
    - targets: ['x.x.x.x:9100']

# 重启 prometheus 服务
systemctl restart prometheus.service

3、如果是consul 如下配置

[root@bogon node_exporter-1.0.1.linux-amd64]# cat node.json 
{
  "ID": "node-instance-x.x.x.x",
  "Name": "node-instance-x.x.x.x",
  "Tags": [
    "es_instance"
  ],
  "Address": "x.x.x.x",
  "Port": 9100,
  "Meta": {
    "instance": "es-instance-x.x.x.x",
    "role": "test-it-es-cluster-prod"
  },
  "EnableTagOverride": false,
  "Check": {
    "HTTP": "http://x.x.x.x:9100/metrics",
    "Interval": "10s"
  },
  "Weights": {
    "Passing": 10,
    "Warning": 1
  }
}

###################### 参数讲解###############
### 参数说明
# id : 注册ID 在consul中为唯一标识
# name :Service名称
# address:自动注册绑定ip
# port:自动注册绑定端口
# tags:注册标签,可多个
# checks : 健康检查
#   http:   检查数据来源
#   interval: 检查时间间隔
# http://x.x.x.x:8500/v1/agent/service/register   consul注册接口

#################### 配置过滤#################
我们可以配置 relabel_configs 来实现标签过滤,只加载符合规则的服务。以上边为例,可以通过过滤 __meta_consul_tags 标签为 test 的服务,relabel_config 向 Consul 注册服务的时候,只加载匹配 regex 表达式的标签的服务到自己的配置文件。修改 prometheus.yml 配置如下:

  - job_name: 'consul-prometheus'
    consul_sd_configs:
    - server: 'x.x.x.x:8500'
      services: []  
    relabel_configs:
    - source_labels: [__meta_consul_tags]
      regex: .*test.*
      action: keep

这里的 relabel_configs 配置作用为丢弃源标签中 meta_consul_tags 不包含 test 标签的服务,meta_consul_tags 对应到 Consul 服务中的值为 "tags": ["test"],默认 consul 服务是不带该标签的,从而实现过滤。





curl -X PUT --data @node.json http://x.x.x.x:8500/v1/agent/service/register

#  模板 (8919)11461
https://grafana.com/grafana/dashboards/8919

curl --request PUT http://x.x.x.x:8500/v1/agent/service/deregister/node-instance-10.105.193.41
node-instance-x.x.x.x1 ID
3、grafana 配置
导入官方模板:
ID: 8919

相关文章
|
存储 Prometheus 监控
Centos7.X 搭建Prometheus+node_exporter+Grafana实时监控平台(下)
Centos7.X 搭建Prometheus+node_exporter+Grafana实时监控平台(下)
193 0
Centos7.X 搭建Prometheus+node_exporter+Grafana实时监控平台(下)
|
6月前
|
存储 Kubernetes 调度
什么是 Kubernetes cluster 的 Node affinity
什么是 Kubernetes cluster 的 Node affinity
54 1
|
8月前
|
Prometheus 监控 Cloud Native
性能测试--搭建node_exporter+prometheus
性能测试--搭建node_exporter+prometheus
|
9月前
|
Prometheus 监控 Cloud Native
【实战】CentOS7 Prometheus+Grafana面板搭建+监控node_exporter+监控mysqld_exporter
有3台主机(CentOS7): 192.168.188.100 服务端 192.168.188.101 客户端 192.168.188.102 客户端 100部署Prometheus(9090)+Grafana(3000) 101部署node_exporter(39100)模块,监控该服务器所用资源情况 102部署mysqld_exporter(39200)模块,监控该服务器上的数据库使用情况
588 0
|
9月前
|
Prometheus 监控 Cloud Native
【2023】Prometheus-Blackbox_exporter使用
【2023】Prometheus-Blackbox_exporter使用
199 0
|
存储 JSON Prometheus
|
Kubernetes Cloud Native 安全
Kubernetes CKS 2021【5】---Cluster Setup - Node Metadata
Kubernetes CKS 2021【5】---Cluster Setup - Node Metadata
Kubernetes CKS 2021【5】---Cluster Setup - Node Metadata
|
Prometheus 监控 Cloud Native
prometheus监控linux系统-node_exporter
prometheus监控linux系统-node_exporter
194 0
|
Prometheus 监控 Kubernetes
k8s集群监控(4)-部署node-exporter
部署node-export ,监控节点基础监控,比如内存,IO,磁盘,CPU等
k8s集群监控(4)-部署node-exporter
|
Prometheus 监控 Cloud Native
[基础服务] Grafana/Prometheus/node-exporter 的安装和部署
[基础服务] Grafana/Prometheus/node-exporter 的安装和部署
613 0
[基础服务] Grafana/Prometheus/node-exporter 的安装和部署