Назад | Перейти на главную страницу

Kubernetes: HPA на основе метрик Prometheus Adapter в другом пространстве имен

Практически тот же вопрос, что и этот вопрос но не очень повезло с принятым ответом.

У меня есть три пространства имен:

Установлен оператор 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 неправильное пространство имен, поэтому значения не возвращаются. Как заставить это работать?