现在有个问题,想通过 kubesphere 中的 promtheus 监控 Blackbox Exporter ,看原生的 prometheus-operator 安装后是会自带一个 Blackbox Exporter Pod 但是 kubesphere 中安装的 promtheus 没有,我如果手动创建一个 Blackbox Exporter Pod ,这个如何集成到 kubesphere 中 promtheus 呢。
有没有大佬有过类似经历或者有什么想法,还请不吝赐教,小弟再次感激不尽
1
Cola98 221 天前
应该是修改过的,你可以看下 kubesphere 中 promtheus operator 有没有 Service Monitor 或者 Pod Monitor ;如果有的话,那你 exporter pod 都 running 起来了,只需要一个 Pod Monitor 应该就可以监控到
|
2
kevin123456 OP @Cola98 有 Service Monitor 的,exporter pod 起来后会被监控起来,但是我用的是 Blackbox Exporter ,对其他业务进行监控,监控的地址是需要集成到 promtheus.yaml 里面的,这个集成要怎么搞呢
|
3
lugoyoung 221 天前
手动创建黑盒监控的话,建议看下 prometheus-operator 这个仓库的 blackbox 的 yaml 文件, 安装完成后进行如下两个步骤添加黑盒监控:
1.确保 prometheus 配置文件支持额外的配置项 kubectl edit prometheus/k8s -n monitoring 添加 ``` spec: ..... additionalScrapeConfigs: name: additional-config key: prometheus-additional.yaml ..... ``` 2.编写 prometheus-additional.yaml 例如 ``` - job_name: "web-status" #查看网页状态 metrics_path: /probe params: module: [http_2xx] static_configs: - targets: - https://google.com labels: group: web-status relabel_configs: - source_labels: [__address__] target_label: __param_target - source_labels: [__param_target] target_label: instance - target_label: __address__ replacement: blackbox-exporter.monitoring:19115 ``` |
4
Cola98 221 天前
@kevin123456 这就不清楚了
|
5
hljjhb 221 天前
prometheus-operator 有专门的 CRD 支持,`.spec.prober.url`指向你部署的 blackbox-exporter 实例即可
``` kind: Probe apiVersion: monitoring.coreos.com/v1 metadata: name: example-com-website namespace: monitoring spec: interval: 60s module: http_2xx prober: url: blackbox-exporter.monitoring.svc.cluster.local:19115 targets: staticConfig: static: - http://example.com - https://example.com ``` 具体 API 参见 https://prometheus-operator.dev/docs/operator/api/#monitoring.coreos.com/v1.Probe |
6
kevin123456 OP @hljjhb kubesphere 中的 prometheus-operator 是阉割版的,没有 blackbox-exporter 实例
|
7
hljjhb 218 天前
@kevin123456 #6 prometheus-operator 本身就不带 blackbox-exporter ,自行部署即可
`Probe` CRD 用来管理 blackbox-exporter 监控的对象 |