如何使用 Prometheus Operator 抓取 Jenkins 指标
How to scrape Jenkins metrics using Prometheus Operator
我使用 Kube-prometheus 和 Prometheus-Operator 来监控我的 K8s 集群。我已经在我的集群上部署了 Jenkins,并想开始使用 ServiceMonitor 在这里获取指标。
我已经安装了 Prometheus 插件,该插件使用 /prometheus
或 /metrics/API_KEY/metrics
来公开指标,如果我创建一个新的静态作业,它可以正常工作。但是,如果我想使用ServiceMonitor,它不起作用。
apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor
metadata:
labels:
k8s-app: jenkins
name: jenkins
namespace: monitoring
spec:
endpoints:
- interval: 30s
port: http
path: /metrics/y1H6G16T-DhqpHdW9XwHWnP9FWAXMMfy4XnXVnyoIOEV3-gPJZKN284OFUcVkPxL/metrics
selector:
matchLabels:
jenkins: main
我不知道 ServiceMonitor,但我使用 Jenkins 服务上的注释毫无问题地监控我的 Jenkins 实例:
prometheus.io/scrape: "true"
prometheus.io/port: "8080"
prometheus.io/path: "/prometheus"
我正在使用 kube-prometheus-stack v12.8.0(以前称为 prometheus-operator helm chart)。
要使 prometheus-operator 检测外部服务监视器(如 Jenkins 提供的监视器),您必须配置两件事:
将其配置为扫描其他名称空间:
serviceMonitorNamespaceSelector
匹配标签:
普罗米修斯:请也扫描这个命名空间
注意:或者,您可以将其留给 {},以便扫描所有名称空间
将其配置为还 select 在这些其他名称空间中检测到的 serviceMonitors:
服务监控选择器:
匹配标签:
发布:普罗米修斯运营商
注意:尽管文档指出如果您将 serviceMonitorSelector 留给 {},它将 select 所有 serviceMonitors,但它似乎不起作用。
最后,您仍然需要将这些标签添加到 1) 命名空间和 2) 您希望 prometheus 采用的 serviceMonitors。
我使用 Kube-prometheus 和 Prometheus-Operator 来监控我的 K8s 集群。我已经在我的集群上部署了 Jenkins,并想开始使用 ServiceMonitor 在这里获取指标。
我已经安装了 Prometheus 插件,该插件使用 /prometheus
或 /metrics/API_KEY/metrics
来公开指标,如果我创建一个新的静态作业,它可以正常工作。但是,如果我想使用ServiceMonitor,它不起作用。
apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor
metadata:
labels:
k8s-app: jenkins
name: jenkins
namespace: monitoring
spec:
endpoints:
- interval: 30s
port: http
path: /metrics/y1H6G16T-DhqpHdW9XwHWnP9FWAXMMfy4XnXVnyoIOEV3-gPJZKN284OFUcVkPxL/metrics
selector:
matchLabels:
jenkins: main
我不知道 ServiceMonitor,但我使用 Jenkins 服务上的注释毫无问题地监控我的 Jenkins 实例:
prometheus.io/scrape: "true"
prometheus.io/port: "8080"
prometheus.io/path: "/prometheus"
我正在使用 kube-prometheus-stack v12.8.0(以前称为 prometheus-operator helm chart)。
要使 prometheus-operator 检测外部服务监视器(如 Jenkins 提供的监视器),您必须配置两件事:
将其配置为扫描其他名称空间:
serviceMonitorNamespaceSelector 匹配标签: 普罗米修斯:请也扫描这个命名空间
注意:或者,您可以将其留给 {},以便扫描所有名称空间
将其配置为还 select 在这些其他名称空间中检测到的 serviceMonitors:
服务监控选择器: 匹配标签: 发布:普罗米修斯运营商
注意:尽管文档指出如果您将 serviceMonitorSelector 留给 {},它将 select 所有 serviceMonitors,但它似乎不起作用。
最后,您仍然需要将这些标签添加到 1) 命名空间和 2) 您希望 prometheus 采用的 serviceMonitors。