Маршрут OpenShift, доступный снаружи PAAS, но не от клиента внутри PAAS - PullRequest
0 голосов
/ 17 мая 2018

Внутри того же проекта openshift у меня есть приложение1 (APP1) в POD1 и другое приложение (APP2) в POD2.
Оба эти приложения предлагают сервисы REST API. Эти 2 приложения доступны с использованием двух разных маршрутов openshift.

Работа с двумя приложениями извне PAAS (openshift) работает нормально: имеется в виду выполнение CURL для APP1 / APP2 с использованием маршрута openhsift от клиента за пределами PAAS.

Но когда APP1 в POD1 нацелен на сервис REST, предлагаемый APP2 в POD2 с использованием маршрута openshift APP2. Это терпит неудачу.
Аналогично, выполнение CURL из контейнера APP1 (с использованием oc rsh) в APP2 с использованием openshift route не выполняется.

Однако, если APP1 развернут за пределами этого PAAS, клиентский вызов к APP2 по маршруту открытой смены работает.
Точно так же выполнение CURL для APP2 с использованием openshift route работает нормально вне PAAS.

Также, если я использую внутренний IP / PORT службы PAAS (10.224.x.y), это решит проблему. Но подразумевает использование двух разных адресов в зависимости от того, нацелены ли мы на APP2 изнутри или снаружи PAAS.

Итак, вопрос в том, как сделать маршрут с открытой сдвигом видимым изнутри и снаружи PAAS?

Или есть ли альтернативный способ использовать одно и то же имя хоста / порт для доступа к APP2 изнутри и снаружи PAAS?

1 Ответ

0 голосов
/ 18 мая 2018

Возможно, вы захотите взглянуть на:

https://docs.openshift.com/container-platform/3.7/architecture/networking/networking.html

Для внутренней связи достаточно использовать название службы (в вашем случае используйте app1-svc в app2общаться с app1).Вы можете найти название своей службы при посещении представления маршрутов - в столбце «Маршруты до» отображается название службы.

Как службы работают и как они настроены, подробно объясняется здесь:

https://docs.openshift.com/container-platform/3.7/architecture/core_concepts/pods_and_services.html#services

...