Деплой микросервисов в Kubernetes. Helm
Программа
Рефакторинг микросервисов
В этом уроке мы подготовим наши микросервисы к развертыванию в Kubernetes, а именно, мы откажемся от Netflix Eureka Service Discovery, так как Kubernetes предоставляет
этот функционал, что называется, "из коробки", также мы уберем зависимость Spring Cloud Config Server, так как приложения будут получать конфигурации из ConfigMap и
Secret. Помимо этого, нам предстоит усовершенствовать пайплайн GitHub Actions, чтобы при каждом
push
или pull request
в ветку k8s
происходила сборка Docker-образа
проекта, а также его публикация в ваш приватный репозиторий в GitHub, в котором, помимо кода, вы можете хранить Docker-образы (GitHub Packages
documentation).
Заключение
В этом небольшом уроке мы провели необходимый рефакторинг микросервисов, а также настроили пайплайн GitHub Actions для сборки и публикации Docker-образов приложений
в репозиторий GitHub. В следующем уроке будет много практики - мы развернем все инфраструктурные компоненты системы микросервисов в Kubernetes, в процессе
познакомимся с такими абстракциями, как StatefulSet, ServiceAccount, PersistenceVolume, PersistenceVolumeClaim, ClusterRole и ClusterRoleBinding.
Занятие 4: Подготовка инфраструктуры к запуску в Kubernetes