Приложение Springboot с динамическими вызовами rest api с использованием кластера kubernetes

#spring-boot #rest #kubernetes #integration #dynamic-binding

#пружинный ботинок #отдых #kubernetes #интеграция #динамическая привязка

Вопрос:

Моему приложению spring boot необходимо вызвать или использовать rest api из другого приложения spring boot. Я хочу использовать Kubernetes для управления моим приложением и его несколькими экземплярами. Но я изо всех сил пытаюсь получить rest-конечную точку другого сервиса.
Допустим …. app1 вызывает app2, app2 использует app3, app4 вызывает app1 и app2.
Вот как я должен заставить конечные точки app1, app2 .. app4 взаимодействовать друг с другом. Кто-нибудь может помочь мне с этим сценарием.

Ответ №1:

Обычно для этого взаимодействия используются службы Kubernetes. Доступ к каждой службе можно получить через ее имя в cluster ( <service_name>.<namespace>.svc.cluster.local ).

Итак, решение состоит в том, чтобы определить службу Kubernetes ClusterIP для каждого из ваших приложений, а затем получить к ним доступ через эти службы. Например, если какое-либо приложение хочет получить доступ к HTTP-службе с именем «app2» в пространствах имен «по умолчанию», оно будет вызывать http://app2.default.svc.cluster.local .

Комментарии:

1. Спасибо.. единственная проблема, с которой я столкнулся при запуске приложения, — это порт по умолчанию.. для целевого порта app1 http должно быть 80, для https должно быть 443. Другие целевые порты не разрешены.