Фон
У меня есть модуль / приложение Kubernetes в кластере, которое прекрасно работает при доступе к нему через входной контроллер nginx-ingress
(требуется указать c Host
HTTP-заголовок), но это невозможно доступ к ним осуществляется другими кластерными модулями / приложениями (т. е. для тестирования) из-за того, что модули используют разные имена хостов (например, service-name.namespace.svc.cluster.local
), а не полное доменное имя мастера K8S (в локальной сети).
Plan So Far
Я думаю, что единственный способ (легко) решить эту проблему - настроить экземпляр кластера forward-proxy nginx
в кластере. В идеале служба является либо вспомогательной машиной для модуля, которому необходимо переписать заголовки, либо это должен быть общий прокси-сервер в кластере, к которому могут обращаться несколько служб.
Вопрос
- Как мне настроить внутрикластерную
nginx
службу прямого прокси? - Должна ли это быть коляска или общая служба, к которой может обращаться любой модуль?
Работа до сих пор
Связанные "похожие" вопросы не кажутся полезными для моего варианта использования (т.е. не показывают, как настроить кластерный прокси-сервер) или предназначены для прокси на IP-адреса, внешние по отношению к кластеру (т. е. мне нужно прокси-HTTP-запросы и перезапись их заголовков в ресурсы кластера).