我尝试使用 prometheus 适配器在 kubernetes 中获取指标。这是我的指标
rabbitmq_queue_messages{cluster="my-rabbitmq", container="rabbitmq-exporter", durable="false", endpoint="metrics", instance="10.244.0.23:9419", job="default/rabbitmq-exporter", namespace="default", pod="rabbitmq-exporter-deployment-5684699d6c-9rwgg", queue="my_queue", self="1", vhost="/"}
这是我的普罗米修斯适配器的配置(它已保存在配置映射中)
"rules":
- "seriesQuery": "rabbitmq_queue_messages"
"resources":
"overrides":
"kubernetes_namespace":
"resource": "namespace"
"kubernetes_pod_name":
"resource": "pod"
"name":
"matches": "rabbitmq_queue_messages"
"as": "rabbitmq_queue_messages"
"metricsQuery": "rabbitmq_queue_messages"
它不起作用我也尝试了这个没有metricsQuery和名称的配置,但它不起作用,我在这里错过了什么吗?
事实证明,我需要一个集群角色来允许我生成自定义指标。我创建了这个集群角色
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
labels:
app.kubernetes.io/component: metrics-adapter
app.kubernetes.io/name: prometheus-adapter
app.kubernetes.io/part-of: kube-prometheus
app.kubernetes.io/version: 0.11.2
name: prometheus-adapter
rules:
- apiGroups:
- ""
resources:
- nodes
- namespaces
- pods
- services
verbs:
- get
- list
- watch
- apiGroups:
- custom.metrics.k8s.io
resources:
- '*'
verbs:
- '*'