文档

管理Kubernetes集群服务发现

更新时间:

使用可观测监控 Prometheus 版的默认服务发现、ServiceMonitor、PodMonitor和自定义服务发现,可以优化您对Kubernetes集群的监控范围,并确保您采集到所需的指标数据,以帮助您监控和分析不同的服务和Pod。

重要

使用服务发现采集指标可能会产生计费。更多计费详情,请参见产品计费(新版)产品计费(旧版)

前提条件

已创建容器服务类型的Prometheus实例,具体操作,请参见Prometheus实例 for 容器服务

使用限制

适用于容器服务类型的Prometheus实例。

功能入口

  1. 登录Prometheus控制台

  2. 在左侧导航栏单击实例列表,进入可观测监控 Prometheus 版的实例列表页面。

  3. 单击目标Prometheus实例名称。

管理默认服务发现

自动开启

默认服务发现在接入可观测监控 Prometheus 版时自动开启。当前默认服务发现指标采集对象为Kubernetes集群下所有Namespace包含的Pod。当Pod包含以下注解时,默认服务发现会自动采集该Pod的指标信息并计费。

  • prometheus.io/path: /metrics

  • prometheus.io/port: "9104"

  • prometheus.io/scrape: "true"

wdf

查看默认服务发现

  1. 在左侧导航栏单击服务发现,然后单击配置页签。

  2. 单击默认服务发现页签,即可看到该Prometheus监控提供的默认服务发现。

更多操作

默认服务发现页签下,您还可以执行以下操作:

  • 查看详情信息:单击操作列的详情,您可以查看默认服务发现的YAML配置详情信息。

  • 关闭默认服务发现:关闭操作列的开关,即可关闭默认服务发现。关闭后,将停止采集指标数据,并不再产生计费。

  • 打开默认服务发现:打开操作列的开关,即可打开默认服务发现。

管理ServiceMonitor

您可以选择手动添加ServiceMonitor配置文件来定义要监控的服务以及采集的指标。

添加ServiceMonitor

ServiceMonitor的适用场景包括监控Kubernetes集群内的应用的业务数据,例如订单信息。

  1. 在左侧导航栏单击服务发现,然后单击配置页签。

  2. 单击ServiceMonitor页签,然后单击右上角的添加ServiceMonitor

  3. 在弹出的对话框中输入配置,然后单击确定

    示例配置:

    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的同步

    image.png

更多操作

ServiceMonitor页签下,您可以执行以下操作:

  • 编辑服务发现:单击操作列的编辑,您可以修改自定义的ServiceMonitor。

  • 删除服务发现:单击操作列的删除,您可以删除自定义的ServiceMonitor。删除后,将停止采集指标数据,并不再产生计费。

  • 关闭服务发现:关闭操作列的开关,即可关闭服务发现。您也可以单击右上角的全部关闭,一键关闭所有添加的ServiceMonitor。关闭后,将停止采集指标数据,并不再产生计费。

  • 打开服务发现:打开操作列的开关,即可打开服务发现。

    重要

    ServiceMonitor开启后,若您并未采集到期望的指标数据,那么您需要排查可能原因,如何排查的具体操作,请参见为什么配置的ServiceMonitor或PodMonitor未生效?

管理PodMonitor

您可以选择手动添加PodMonitor配置文件来定义要监控的Pod以及采集的指标。

添加PodMonitor

  1. 在左侧导航栏单击服务发现,然后单击配置页签。

  2. 单击PodMonitor页签,然后单击右上角的添加PodMonitor

  3. 在弹出的对话框中输入配置,然后单击确定

    示例配置:

    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的同步image.png

更多操作

PodMonitor页签下,您可以执行以下操作:

  • 编辑服务发现:单击操作列的编辑,您可以修改自定义的PodMonitor。

  • 删除服务发现:单击操作列的删除,您可以删除自定义的PodMonitor。删除后,将停止采集指标数据,并不再产生计费。

  • 关闭服务发现:关闭操作列的开关,即可关闭服务发现。您也可以单击右上角的全部关闭,一键关闭所有添加的PodMonitor。关闭后,将停止采集指标数据,并不再产生计费。

  • 打开服务发现:打开操作列的开关,即可打开服务发现。

    重要

    PodMonitor开启后,若您并未采集到期望的指标数据,那么您需要排查可能原因,如何排查的具体操作,请参见为什么配置的ServiceMonitor或PodMonitor未生效?

管理自定义服务发现

您还可以根据自己的需求自定义要监控的服务和采集的指标。

添加自定义服务发现

  1. 在左侧导航栏单击服务发现,然后单击配置页签。

  2. 单击自定义服务发现页签,然后单击右上角的添加

  3. 在弹出的对话框中输入配置,然后单击保存

    示例配置:

    #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

    配置完成后,在自定义服务发现页签下会显示已添加的服务发现。dh

更多操作

自定义服务发现页签下,您可以执行以下操作:

  • 编辑服务发现:单击操作列的编辑,您可以修改自定义的服务发现。

  • 删除服务发现:单击操作列的删除,您可以删除自定义的服务发现。删除后,将停止采集指标数据,并不再产生计费。

相关文档

  • 本页导读 (1)
文档反馈