Prometheus 自动服务发现
Prometheus-Operator
集群已经配置了服务自动发现,详见更新自动发现配置。
更新 clickhouse 服务
# 查看 clickhouse 指标服务
kubectl get service clickhouse-operator-metrics -n middle |grep clickhouse
clickhouse-operator-metrics ClusterIP 172.20.11.30 <none> 8888/TCP 38d
添加自动服务发现标志:
# kubectl edit svc clickhouse-operator-metrics -o yaml -n middle
apiVersion: v1
kind: Service
metadata:
annotations:
meta.helm.sh/release-name: ck-operater
meta.helm.sh/release-namespace: middle
prometheus.io/port: "8888"
prometheus.io/scrape: "true"
主要是添加两个:
prometheus.io/port: "8888"
prometheus.io/scrape: "true"
保存退出后,service文件会重新apple。
查看clickhouse监控指标收集情况:
# 本地端口转换
kubectl -n middle port-forward service/clickhouse-operator-metrics 8888
# 获取clickhouse监控指标
curl 127.0.0.1:8888/metrics
查看 prometheus targets
对接Prometheus告警
自定义报警rules,具体文件详见prometheus-alert-rules-clickhouse.yaml
部署 clickhouse 报警规则:
kubectl apply -f prometheus-alert-rules-clickhouse.yaml
对接 Grafana
对接grafana
时注意json文件的变量,应根据实际情况进行更改: