在系列文章(1)中,实现了用云原生监控采集TKE集群中节点上守护进程的监控指标。接下来,进一步描述下如何用云原生监控来采集TKE集群外组件的监控指标,比如Kong。
前提:网络互通
采集方案
1 云原生监控支持的监控配置入口有三个:ServiceMonitors、PodMonitors、RawJobs,其中ServiceMonitors是已k8s集群中的service对象作为目标target的。
2 k8s集群中的service对象,可以单独创建endpoints来关联。参考:https://kubernetes.io/docs/concepts/services-networking/service/#services-without-selectors
方案部署
1 创建service,并手动关联endpoints对象。endpoints对象用于填写集群外具体的采集地址。
参考样例如下:
代码语言:javascript复制apiVersion: v1
kind: Service
metadata:
name: kong-monitor
label:
app: kong-monitor
spec:
ports:
- protocol: TCP
port: 80
name: http
targetPort: 8001
---
apiVersion: v1
kind: Endpoints
metadata:
name: kong-monitor
subsets:
- addresses:
- ip: 192.0.2.42
ports:
- port: 8001
name: http
2 在云原生监控控制台上创建ServiceMonitors对象:
当完成上诉步骤之后,就可以配置grafana面板了。