【云原生 | Kubernetes 系列】---Prometheus Blackbox_exporter监控
Kubernetes监控 系列 --- 原生 Prometheus Exporter
2023-09-14 09:15:20 时间
Prometheus Blackbox_exporter监控
blackbox_exporter是Prometheus官方提供的一个exporter,可以通过Http,Https,Dns,Tcp和ICMP对被监控节点进行数据采集.
在Prometheus中配置监控项,将监控项指向blackbox.blackbox根据监控项再去监控目标
1. 安装blackbox_exporter
# mkdir /apps
# cd /apps
# wget https://github.com/prometheus/blackbox_exporter/releases/download/v0.22.0/blackbox_exporter-0.22.0.linux-amd64.tar.gz
# tar xf blackbox_exporter-0.22.0.linux-amd64.tar.gz
# ln -sf /apps/blackbox_exporter-0.22.0.linux-amd64/blackbox_exporter /usr/bin/
2. 配置Service文件
/etc/systemd/system/blackbox_exporter.service
[Unit]
Description=Prometheus blackbox_exporter
After=network.target
[Service]
ExecStart=/usr/bin/blackbox_exporter --config.file=/apps/blackbox_exporter-0.22.0.linux-amd64/blackbox.yml --web.listen-address=:9115
[Install]
WantedBy=multi-user.target
启动服务后在9115启动监听
# systemctl enable --now blackbox_exporter
Created symlink /etc/systemd/system/multi-user.target.wants/blackbox_exporter.service → /etc/systemd/system/blackbox_exporter.service.
# ss -ntl|grep 9115
LISTEN 0 4096 *:9115 *:*
此时prometheus还没有配置,所以target里是空的
3. 配置Prometheus
3.1 监控url
主要用来监控一些页面状态和SSL证书有效期.
- job_name: 'http_status'
metrics_path: /probe
params:
module: [http_2xx]
static_configs:
- targets: ['https://www.baidu.com', 'http://192.168.31.201:9090']
labels:
instance: http_status
group: web
relabel_configs:
- source_labels: [__address__]
target_label: __param_target
- source_labels: [__param_target]
target_label: url
- target_label: __address__
replacement: 192.168.31.122:9115
重启Prometheus服务后,访问blackbox:9115
同时在prometheus里也看到了相关的监控项数据
3.2 监控ICMP
主要用来监控一些网关,vip等ip地址
- job_name: 'ping_status'
metrics_path: /probe
params:
module: [icmp]
static_configs:
- targets: ['192.168.31.101',"192.168.31.114"]
labels:
instance: 'ping_status'
group: 'icmp'
relabel_configs:
- source_labels: [__address__]
target_label: __param_target
- source_labels: [__param_target]
target_label: ip
- target_label: __address__
replacement: 192.168.31.122:9115
重启prometheus,获得了ping_status的监控项
3.3 监控端口
主要用来监视无法直接通过http返回2xx监控的那些服务端口
- job_name: 'port_status'
metrics_path: /probe
params:
module: [tcp_connect]
static_configs:
- targets: ['192.168.31.101:6443', '192.168.31.201:3000','192.168.31.121:22','192.168.31.126:3306']
labels:
instance: 'port_status'
group: 'port'
relabel_configs:
- source_labels: [__address__]
target_label: __param_target
- source_labels: [__param_target]
target_label: ip
- target_label: __address__
replacement: 192.168.31.122:9115
重启prometheus后
4. Grafana 导入
9965
相关文章
- 通过Kubernetes监控探索应用架构,发现预期外的流量
- Prometheus详解(八)——Prometheus监控Kubernetes集群节点
- Kubernetes 健康检查之 Readiness 就绪检查
- kubernetes 服务发现 Node_Exporter 监控 Kubernetes 集群节点
- Prometheus 如何在 Kubernetes 中监控黄金信号
- 【云原生 | Kubernetes 系列】--Gitops持续交付 Argo Rollouts Analysis
- 【云原生 | Kubernetes 系列】--Envoy指标监控
- Kubernetes pod里一个特殊的容器:pause-amd64
- 【云原生 | Kubernetes 系列】---Prometheus Blackbox_exporter监控
- 【云原生 | Kubernetes 系列】----使用Prometheus监控K8s集群
- kubernetes 证书合集
- kubernetes 架构
- Kubernetes web界面kubernetes-dashboard安装【h】
- 【云原生 • Kubernetes】kubernetes 核心技术 - RC、Replica Set 和 Deployment
- Kubernetes(k8s)部署Promehteus(kube-prometheus&kube-prometheus-stack)监控
- Kubernetes(k8s)Ingress原理
- Kubernetes 深入理解kubernetes(一)
- 【云原生 | Kubernetes 系列】---Prometheus 监控Java服务
- Kubeadm自定义安装kubernetes
- s23.基于 Kubernetes v1.25 (kubeadm) 和 Containerd部署高可用集群
- Kubernetes_CNCF&云原生
- Kubernetes部署_使用kubernetes部署Mysql主从结构(Kubernetes工作实践类)
- 【K8S系列】第八讲:Kubernetes 之kubectl 常用命令汇总
- Prometheus+Grafana全方位监控Kubernetes集群资源利用率