Istio - маршрутизация трафика на определенный IP-адрес модуля
Я пытаюсь указать VirtualService с маршрутом к конкретному IP-адресу модуля. Например, в случае, когда мой IP-адрес модуля 192.168.208.75, я устанавливаю "хост" как:
host: 192-168-208-75.default.pod.cluster.local
Это не работает
Тем не менее, в случае, если у меня есть служба, указывающая на этот модуль, маршрутизация трафика на DNS-имя службы работает.
Можно ли указать маршрут к конкретному IP-адресу модуля напрямую, без службы в середине?
1 ответ
Вы пытались использовать безголовый сервис?
Istio / Kubernetes использует сервисы для абстрагирования отсеков, использование фиксированных IP-адресов не является хорошей практикой для Kubernetes, или вы работаете с сеткой, так как они эфемерны
Чтобы получить доступ к модулю, вам нужно открыть его с помощью службы.
Я не знаю точно, что вы хотите от этого, но я хотел сделать что-то подобное, я объясню свою проблему и что я сделал, чтобы посмотреть, поможет ли это кому-нибудь.
У меня есть три модуля: podA, podB и podC. Модули B и C относятся к одному набору развертывания / с отслеживанием состояния. PodA - это основное приложение. Я хочу, чтобы podA подключался напрямую к B или C в зависимости от статуса модулей B и C.
Чтобы решить эту проблему, я создал cron в модулях B и C, который отправляет ip / имя хоста и статусы, которые я хочу, в основное приложение в podA, при отправке запросов я отправляю с http://pod_B-OR-C_ip:port/parameters или http://pod_B-OR-C_dns: порт / параметры.
IP и имя хоста, которые вы можете получить в / etc / hosts
Надеюсь, это поможет