要在 Kubernetes 集群外部使用 Exporter 并通过 Prometheus 监控它,您可以按照以下步骤进行配置:
1. 部署 Exporter
首先,确保您已经在 Kubernetes 集群外部的主机上部署了 Exporter(如 Node Exporter、Blackbox Exporter 等)。以下是以 Node Exporter 为例的安装步骤:
# 下载并解压 Node Exporter
wget https://github.com/prometheus/node_exporter/releases/latest/download/node_exporter-<version>.linux-amd64.tar.gz
tar -xvf node_exporter-<version>.linux-amd64.tar.gz
cd node_exporter-<version>.linux-amd64
# 启动 Node Exporter
./node_exporter &
此时,Node Exporter 默认会在 9100
端口上运行。
2. 配置 Prometheus 监控
在 Kubernetes 中,您需要配置 Prometheus 来拉取外部 Exporter 的指标。您可以通过修改 Prometheus 的 ConfigMap 或直接在 Prometheus 的配置文件中添加相应的 job。
a. 添加 Job 配置
假设您的 Exporter IP 地址为 192.168.1.100
,则在 Prometheus 的配置文件中添加以下内容:
scrape_configs:
- job_name: 'external-node-exporter'
static_configs:
- targets: ['192.168.1.100:9100']
b. 更新 Prometheus 配置
如果 Prometheus 是通过 Helm 安装的,可以更新 ConfigMap :
kubectl edit configmap prometheus-server -n <namespace>
将上述 job 配置添加到 prometheus.yml
的 scrape_configs
部分中,然后保存。
3. 重新加载 Prometheus 配置
Prometheus 会定期自动检查配置,但您也可以手动触发重新加载。在 Prometheus 的 UI 中,访问 http://<prometheus-server>:9090/-/reload
,或者重启 Prometheus Pod:
kubectl delete pod <prometheus-pod-name> -n <namespace>
4. 验证监控
- 访问 Prometheus 的 UI,查看 Targets 页面(
http://<prometheus-server>:9090/targets
),确保external-node-exporter
的状态为 UP。 - 可以在 Prometheus 的 Graph 页面中查询指标,如
node_cpu_seconds_total
等,验证数据是否正常收集。
5. 设置告警(可选)
如果需要设置告警,可以在 Prometheus 中配置告警规则。创建一个 PrometheusRule
对象,类似于前面的示例。
总结
通过以上步骤,您可以成功地将 Kubernetes 集群外部的 Exporter 集成到 Prometheus 中进行监控。确保网络连接正常,并根据需要调整防火墙和安全组设置,以允许 Prometheus 访问外部 Exporter 的端口。这样,您就可以监控集群外部的资源并获得相关指标。
标签:node,Node,Exporter,配置,Prometheus,exporter,k8s From: https://www.cnblogs.com/love-DanDan/p/18404514