Практически тот же вопрос, что и этот вопрос но не очень повезло с принятым ответом.
У меня есть три пространства имен:
Установлен оператор Prometheus со штурвалом в пространстве имен monitoring:
rules:
default: false
external:
- seriesQuery: '{__name__=~"^rabbitmq_queue_.*",namespace!=""}'
resources:
template: <<.Resource>>
overrides:
namespace:
resource: "namespace"
name:
matches: ""
as: ""
metricsQuery: rate(<<.Series>>{<<.LabelMatchers>>}[1m])
Метрики доступны через следующий необработанный запрос curl: kubectl get --raw "/apis/external.metrics.k8s.io/v1beta1/namespaces/rabbitmq/rabbitmq_queue_messages_ready?labelSelector=queue%3Dblabla" | jq
Однако при развертывании этого HPA:
apiVersion: autoscaling/v2beta2
kind: HorizontalPodAutoscaler
metadata:
name: deployment-autoscaler
namespace: deployment
spec:
scaleTargetRef:
apiVersion: apps/v1
kind: Deployment
name: deployment-1
minReplicas: 10
maxReplicas: 50
metrics:
- type: External
external:
metric:
name: rabbitmq_queue_messages_ready
target:
type: Value
value: 100
Он по-прежнему призывает /apis/external.metrics.k8s.io/v1beta1/namespaces/deployment/rabbitmq_queue_messages_ready
неправильное пространство имен, поэтому значения не возвращаются. Как заставить это работать?