Должен ли я использовать api-шлюз на движке GKE? - PullRequest
2 голосов
/ 29 марта 2020

Я работаю над демонстрационным проектом, в котором есть 5 микросервисов: сервер обнаружения, api-шлюз, подробности заказа пользователя, заказ и обслуживание пользователя.

Я выставлю заказ и обслуживание пользователя внутри

Я предоставлю внешнюю службу подробных заказов, которая будет вызывать две другие службы с использованием конечной точки отдыха.

1) Должен ли я развернуть сервер обнаружения и шлюз API на ядре kubernetes, а если нет как будет обрабатываться маршрутизация?

Если я не разверну шлюз API, как будет выполняться этот вызов покой?

enter image description here

2) Кроме того, поскольку в каждом проекте spring-cloud есть файл application.properties. Заменит ли docker образ файл application.properties?

3) Я впервые использую docker и kubernetes. Может кто-нибудь объяснить, каким должен быть мой следующий шаг после создания изображений docker для мои услуги? (только шаги, я выясню, как выполнить эти шаги)

ОБНОВЛЕНИЕ:

Службы, которые работают:

user-order-detail LoadBalancer
kubernetes ClusterIP
управление заказами LoadBalancer
управление пользователями LoadBalancer

user-order-detail обращается к конечной точке для получения всех пользователей. Я получаю эту ошибку: нет совпадений для имени виртуального хоста: user-management

Ответы [ 2 ]

3 голосов
/ 29 марта 2020

Пожалуйста, найдите ответы ниже: -

1) Да, вы можете развернуть службу обнаружения и api-шлюз на движке kubernetes и, пожалуйста, go через этот документ относительно того, какой тип сервиса вы будете предоставлять.

Услуги: - https://kubernetes.io/docs/concepts/services-networking/service/

2) Вы можете скопировать файл application.properties при создании изображения или при необходимости переопределить во время выполнения. Пожалуйста, создайте configMap в Kubernetes и добавьте в модуль Kubernetes по объему. Пожалуйста, следуйте ссылкам ниже на ConfigMap.

https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-configmap/#add -configmap-data-to-to-volume

https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-configmap/#add -configmap- data-to-a-volume

3) Действия после создания изображений: -

  1. Pu sh изображение в реестре
  2. Развертывание модуля в kubernetes
  3. Создание службы для предоставления модуля
0 голосов
/ 30 марта 2020

Помимо API-шлюза, вы также можете использовать Ingress для предоставления своих услуг. Ingress, скорее всего, является нативным решением для kubernetes, поскольку для настройки используется синтаксис kubernetes, что означает, что вам не нужно много рефакторинга, когда вы хотите изменить шлюз (вход). Вы можете сравнить доступные здесь входы:

https://kubedex.com/ingress/

Если вы все еще хотите использовать API-шлюз, я рекомендую использовать его как этот посланник, и он построен изначально для kubernetes

https://www.getambassador.io/

...