Как автоматизировать развертывание с Kubernetes?

12

Если у меня есть Kubernetes, развернутый через Rancher, и Jenkins создает новые образы и отправляет их в DockerHub после регистрации нового кода в GitHub, как мне автоматизировать развертывание новых образов?

Другой способ задать вопрос может быть следующим: «Я использовал Octopus для управления своими развертываниями. Есть ли что-то похожее на Кубернетес или Ранчер? В конечном счете, это последний пробел, с которым я борюсь.

Greg
источник

Ответы:

4

Поскольку вы используете Rancher, самый простой способ - зарегистрировать пользовательский каталог Rancher и создать элемент для каждого стека / службы, которую вы хотите развернуть.

Добавить пользовательский каталог

Rancher Catalog - это Git-репозиторий со следующей структурой

Структура хранилища Git

Затем в Jenkins вы можете создать задание, которое будет вызывать Rancher REST API для развертывания / обновления стека / службы.

введите описание изображения здесь

В свою очередь Rancher извлечет последнюю версию образа Docker для этой службы и развернет ее в соответствии с файлом Docker Compose из каталога.

введите описание изображения здесь

Плюсы:

  • универсальный подход, который может быть использован практически для каждого приложения
  • Сам Дженкинс может быть развернут в среде Rancher, агенты могут быть созданы в кластере Kubernetes

Минусы:

  • Команда разработчиков должна следовать четкой стратегии выпуска, чтобы иметь возможность использовать общие сборки
  • Драйверы хранилища все еще находятся под вопросом в альфа-версии Rancher 2.0
Максим
источник
-2

Терраформ с провайдером Kubernetes.

Юрий Медведев
источник
1
Здравствуй. Можно немного расширить ответ подробностями о том, как сделать то же самое, или полезными ссылками?
Dawny33