Прежде всего, чтобы избежать вопросов xy: я хотел бы получить HPA на основе метрик loadbalancer, исходящих от определенного входа.
У меня HPA, основанный на внешней метрике request_count
, поступающей от стекового драйвера.Я хочу сопоставить метку следующим образом, чтобы получать только запросы, поступающие на конкретный вход.
...HPAmanifest...
- type: External
external:
metricName: loadbalancing.googleapis.com|https|request_count
metricSelector:
matchLabels:
resource.labels.target_proxy_name: k8s-tps-appname-appname-ingress--64658eaf6b9dce83
targetAverageValue: 50
Проблема в том, что, делая это, я пренебрегаю HTTP-трафиком (который происходит иэто не в наших силах предотвратить), а это означает, что мое приложение не будет масштабироваться, если имеется огромное количество HTTP-запросов.
Если я не ошибаюсь, выражение чего-то похожего делает метрики HPA catch, содержащие ОБА меткиЭто означает, что метрика не будет соответствовать вообще.(обратите внимание, единственное различие между ними - это «s» после «tp», которое отличает трафик, поступающий от http / s)
...HPAmanifest...
- type: External
external:
metricName: loadbalancing.googleapis.com|https|request_count
metricSelector:
matchLabels:
resource.labels.target_proxy_name: k8s-tps-appname-appname-ingress--64658eaf6b9dce83
resource.labels.target_proxy_name: k8s-tp-appname-appname-ingress--64658eaf6b9dce83
targetAverageValue: 50
Можно ли использовать совпадение «или», илиregex в качестве альтернативы) для того, чтобы достичь HPA на основе показателей нагрузки балансировки из конкретного входа?
Примечание: я не фильтрую по метке url-map
, потому что в веб-интерфейсе стекового драйвера я вижу, что графики по какой-то причине не совпадают (пока что я лучше покажу)
Спасибо