您可以在服务发现页签中查看可观测监控 Prometheus 版内置的服务发现,也可以通过添加ServiceMonitor、PodMonitor配置可观测监控 Prometheus 版的采集规则。本文介绍如何管理Kubernetes集群的服务发现。
前提条件
已创建容器服务类型的Prometheus实例,具体操作,请参见Prometheus实例 for 容器服务。
使用限制
适用于Prometheus for 容器服务类型的实例。
功能入口
- 登录Prometheus控制台。
- 在左侧导航栏单击监控列表,进入可观测监控 Prometheus 版的实例列表页面。
- 单击目标Prometheus实例名称。
管理默认服务发现
默认服务发现为可观测监控 Prometheus 版的服务发现功能,在接入可观测监控 Prometheus 版时自动开启。当前默认服务发现指标采集对象为Kubernetes集群下所有Namespace包含的Pod。当Pod包含以下注解时,默认服务发现会自动采集该Pod的指标信息并计费:
- prometheus.io/path: /metrics
- prometheus.io/port: "9104"
- prometheus.io/scrape: "true"

查看默认服务发现
- 在左侧导航栏单击服务发现,然后单击配置页签。
- 单击默认服务发现页签,即可看到该Prometheu监控提供的默认服务发现。
更多操作
在默认服务发现页签下,您还可以执行以下操作:
- 查看详情信息:单击操作列的详情,您可以查看默认服务发现的YAML配置详情信息。
- 关闭默认服务发现:关闭操作列的开关,即可关闭默认服务发现。
- 打开默认服务发现:打开操作列的开关,即可打开默认服务发现。重要 默认服务发现为可观测监控 Prometheus 版内置的服务发现功能,在接入可观测监控 Prometheus 版时会自动开启。开启后可能会采集到您相应的数据指标,进而产生相关费用,更多信息,请参见接入可观测监控 Prometheus 版后,为什么会产生额外的费用?。若不需要,您可以手动关闭默认的服务发现。
管理ServiceMonitor
您可以选择手动添加ServiceMonitor,并根据相关配置进行指标采集。
重要 ServiceMonitor的指标采集会产生计费。更多计费详情,请参见计费概述。
添加ServiceMonitor
ServiceMonitor的适用场景包括监控Kubernetes集群内的应用的业务数据,例如订单信息。
- 在左侧导航栏单击服务发现,然后单击配置页签。
- 单击ServiceMonitor页签,然后单击右上角的添加ServiceMonitor。
- 在弹出的对话框中输入配置,然后单击确定。示例配置:
apiVersion: monitoring.coreos.com/v1 kind: ServiceMonitor metadata: name: tomcat-demo # 填写一个唯一名称。 namespace: default # 填写目标命名空间。 spec: endpoints: - interval: 30s port: tomcat-monitor # 填写service.yaml中Prometheus Exporter对应的Port的Name字段的值。 path: /metrics # 填写Prometheus Exporter对应的Path的值。 namespaceSelector: # Nginx Demo的命名空间。 any: true selector: matchLabels: # 填写service.yaml的Label字段的值以定位目标service.yaml。 app: tomcat
配置完成后,在ServiceMonitor页签下会显示已添加的服务发现。
更多操作
在ServiceMonitor页签下,您可以执行以下操作:
- 编辑服务发现:单击操作列的编辑,您可以修改自定义的ServiceMonitor。
- 删除服务发现:单击操作列的删除,您可以删除自定义的ServiceMonitor。
- 关闭服务发现:关闭操作列的开关,即可关闭服务发现。您也可以单击右上角的全部关闭,一键关闭所有添加的ServiceMonitor。
- 打开服务发现:打开操作列的开关,即可打开服务发现。重要 ServiceMonitor开启后可能会采集到您相应的数据指标,进而产生相关费用,更多信息,请参见接入可观测监控 Prometheus 版后,为什么会产生额外的费用?。若不需要,您可以手动关闭。
管理PodMonitor
您可以选择手动添加PodMonitor,并根据相关配置进行指标采集。
重要 PodMonitor的指标采集会产生计费。更多计费详情,请参见计费概述。
添加PodMonitor
- 在左侧导航栏单击服务发现,然后单击配置页签。
- 单击PodMonitor页签,然后单击右上角的添加PodMonitor。
- 在弹出的对话框中输入配置,然后单击确定。示例配置:
apiVersion: monitoring.coreos.com/v1 kind: PodMonitor metadata: # 填写一个唯一名称 name: podmonitor-demo # 填写目标命名空间 namespace: default #https://github.com/prometheus-operator/prometheus-operator/blob/master/Documentation/api.md#podmonitorspec spec: selector: matchLabels: # 填写pod.yaml的Label字段的值以定位目标pod app: nginx2-exporter namespaceSelector: # https://github.com/prometheus-operator/prometheus-operator/blob/master/Documentation/api.md#namespaceselector any: true podMetricsEndpoints: - interval: 30s # 填写pod.yaml中Prometheus Exporter对应的Port的Name字段的值 port: tomcat-monitor # 填写Prometheus Exporter对应的Path的值 path: /metrics
配置完成后,在PodMonitor页签下会显示已添加的服务发现。
更多操作
在PodMonitor页签下,您可以执行以下操作:
- 编辑服务发现:单击操作列的编辑,您可以修改自定义的PodMonitor。
- 删除服务发现:单击操作列的删除,您可以删除自定义的PodMonitor。
- 关闭服务发现:关闭操作列的开关,即可关闭服务发现。您也可以单击右上角的全部关闭,一键关闭所有添加的PodMonitor。
- 打开服务发现:打开操作列的开关,即可打开服务发现。重要
- PodMonitor打开后,可能会采集到您相应的数据指标,进而产生相关费用,更多信息,请参见接入可观测监控 Prometheus 版后,为什么会产生额外的费用?。若不需要,您可以手动关闭。
- PodMonitor打开后,若您并未采集到期望的指标数据,那么您需要排查可能原因,如何排查的具体操作,请参见为什么配置的ServiceMonitor或PodMonitor未生效?。
管理自定义服务发现
您还可以自定义服务发现,并根据相关配置进行指标采集。
重要 自定义服务发现的指标采集会产生计费。更多计费详情,请参见计费概述。
添加自定义服务发现
- 在左侧导航栏单击服务发现,然后单击配置页签。
- 单击自定义服务发现页签,然后单击右上角的添加。
- 在弹出的对话框中输入配置,然后单击保存。示例配置:
#just support scrape_configs configure,Configuring Multiple Jobs,yaml uses the list format.other configure can by setting prometheus.yaml - job_name: prometheus metrics_path: /metric static_configs: - targets: - 127.0.0.1:9090 - job_name: grafana_exporter scrape_interval: 30s scrape_timeout: 30s metrics_path: /metric static_configs: - targets: - 127.0.0.1:3000
配置完成后,在自定义服务发现页签下会显示已添加的服务发现。
更多操作
在自定义服务发现页签下,您可以执行以下操作:
- 编辑服务发现:单击操作列的编辑,您可以修改自定义的服务发现。
- 删除服务发现:单击操作列的删除,您可以删除自定义的服务发现。删除后,将停止采集指标数据,并不再产生计费。