Контроллер HAProxy Ingress относительно смешанной поддержки HTTP2 и HTTP 1.1 в бэкэнде с TLS во фронтенде
у нас есть некоторые службы, поддерживающие только HTTP 1.1, и некоторые службы GRPC, поддерживающие HTTP2. Мы всегда используем HTTPS во внешнем интерфейсе и завершаем его на контроллере входа (ssl-pass through - false); поскольку мы не хотим накладных расходов на настройку в каждом развертывании / поде. При тестировании я вижу, что когда HTTTPS находится во внешнем интерфейсе, HaProxy по умолчанию выбирает H2 / HTTP2 и отправляет его в серверную часть; независимо от того, может ли это поддерживать серверная часть. Есть ли какие-либо аннотации или настройки на уровне Ingress, чтобы указать HAProxy завершить работу H2 / HTTPS 2 во внешнем интерфейсе и перенаправить на backedn как HTTP1.1 для тех серверов, которые не поддерживают HTTP2, и как H2 (текущее поведение) для тех серверов, которые поддерживают HTTP2 . Вот диаграмма, иллюстрирующая настройку теста haproxy test setup.