J01.04. Создание приложения на основе микросервисов
Разделение приложения на компоненты
Так как каждый микросервис обрабатывает одну часть функций приложения, приложение можно разделить на разные компоненты. Независимые друг от друга компоненты имеют обязанности и ограничения. В Cloud Managed Kubernetes такое приложение называется составным. Составное приложение создается при помощи созданных или существующих сервисов.
В примере создание приложения Bookinfo на основе микросервисов.
Необходимые условия перед выполнением настроек
Перед выполнением настроек создайте:
- рабочее пространство,
- проект
- пользователя project-regular.
Пользователь должен быть приглашен в проект и наделен ролью operator. Также пользователь Project-admin должен установить шлюз проекта, чтобы project-regular мог определить доменное имя при создании приложения.
Создание микросервисов, составляющих приложение
1. Войдите в веб-консоль Cloud Managed Kubernetes и перейдите к приложениям в Application Workloads проекта. На вкладке Composed Apps нажмите кнопку Create.
2. Задайте имя приложению, например, bookinfo и нажмите кнопку Next.
3. На странице настроек службы создайте микросервисы, из которых состоит приложение. Нажмите кнопку Create Service и выберите Stateless Service.
4. Задайте имя сервису, например, productpage и нажмите кнопку Next.
5. Нажмите кнопку Add Container в разделе Containers и введите образ контейнера kubesphere/examples-bookinfo-productpage-v1:1.13.0 в поле поиска, чтобы использовать образ Docker Hub.
6. Нажмите кнопку Use Default Ports, далее — √ в правом верхнем углу и кнопку Next.
7. На странице Storage Settings добавьте том или нажмите кнопку Next.
8. Нажмите кнопку Create на странице Advanced Settings.
9. Аналогичным образом добавьте оставшиеся три микросервиса.
Сервис | Имя | Образ контейнера |
---|---|---|
Stateless | details | kubesphere/examples-bookinfo-details-v1:1.13.0 |
Stateless | reviews | kubesphere/examples-bookinfo-reviews-v1:1.13.0 |
Stateless | ratings | kubesphere/examples-bookinfo-ratings-v1:1.13.0 |
10. После завершения добавления микросервисов нажмите кнопку Next.
11. На странице Route Settings нажмите кнопку Add Routing Rule.
12. На вкладке Specify Domain задайте доменное имя приложению, например, demo.bookinfo и выберите HTTP в поле Protocol. В разделе Paths выберите сервис productpage и порт 9080. Нажмите кнопку OK, чтобы продолжить.
13. При необходимости добавьте дополнительные правила или нажмите кнопку Create, чтобы завершить настройку.
14. Дождитесь, пока приложение перейдет в состояние Ready.
Настройка доступа к приложению
1. Когда устанавливаете доменное имя для приложения, добавьте запись в файл hosts (/etc/hosts). Например, напишите IP-адрес и имя хоста, как в примере ниже:
2. В Composed Apps нажмите на созданное приложение.
3. В Resource Status нажмите на кнопку Access Service.
5. Нажмите на кнопки Normal user и Test user, чтобы увидеть другие сервисы.