Автоматизированное развертывание под микросервисной архитектурой с использованием Jenkins для достижения!

Java
Автоматизированное развертывание под микросервисной архитектурой с использованием Jenkins для достижения!

Адрес фактического центра электронной коммерции SpringBoot (25k+star):GitHub.com/macro-positive/…

Резюме

В микросервисной архитектуре, поскольку сервисов становится все больше, упаковка и развертывание сервисов станут довольно проблематичными. например мойmall-swarmВ настоящее время в проекте необходимо развернуть 8 сервисов. Есть ли способ развернуть его один раз, просто нажмите «Выполнить», чтобы развернуть его автоматически? Есть конечно! Затем мы используем Jenkins для завершения работы по автоматическому развертыванию в микросервисной архитектуре.

Основное использование Дженкинса

Для основного использования Jenkins, пожалуйста, обратитесь к:Используйте Jenkins для упаковки и развертывания приложений SpringBoot одним щелчком мыши, это все 6!

Выполнить подготовку скрипта

Сначала подготавливаем сценарии, которые необходимо выполнять удаленно.

  • Файлы скрипта хранятся вmall-swarmПроект/document/shПод содержанием:

  • Перед загрузкой скрипта измените формат новой строки всех файлов скриптов в IDEA какLF, иначе скрипт не может быть выполнен;

  • Загружаем все файлы скрипта в указанную директорию, здесь заливаем в/mydata/shПод содержанием;

  • Измените все файлы скриптов на исполняемые файлы:
chmod +x ./mall-*

Создать задачу в Jenkins

Далее мы автоматизируем развертывание, создав задачи в Jenkins. благодаря нашемуmall-swarmЭто многомодульный проект, и описанное выше развертывание отличается от предыдущего одномодульного проекта.

mall-admin

Поскольку создание задач выполнения каждого модуля аналогично, создание задач модуля mall-admin будет подробно объяснено ниже, а другие модули будут кратко объяснены.

  • Сначала мы выбираем构建一个自由风格的软件项目, затем введите имя задачи как mall-admin, настройте адрес ее Git-репозитория, здесь я напрямую использую адрес выше Gitee:

  • После этого создаем билд, buildmall-swarmЗависимые модули в проекте, иначе при сборке работоспособных служебных модулей сборка завершится ошибкой, так как эти модули не могут быть найдены;
# 只install mall-common,mall-mbg,mall-security三个模块
clean install -pl mall-common,mall-mbg,mall-security -am
  • Принципиальная схема зависимого построения проекта:

  • Создайте еще одну сборку для создания и пакета модуля Mall-Admin отдельно:

  • Добавьте сборку для выполнения удаленной задачи через SSH для выполнения скрипта запуска Mall-Admin,

  • Щелкните Сохранить, чтобы завершить создание задачи выполнения mall-admin.

mall-registry

mall-registry и другие модули в основном такие же, как mall-admin для создания задач, просто изменитеpom.xmlрасположение файла и执行脚本место расположения.

  • Мы можем скопировать один прямо из задачи модуля mall-admin и создать его:

  • Измените расположение файла pom.xml во второй сборке на:${WORKSPACE}/mall-registry/pom.xml

  • Измените расположение файла сценария выполнения SSH в третьей сборке, измените его на:/mydata/sh/mall-registry.sh

  • Щелкните Сохранить, чтобы завершить создание задачи выполнения торгового реестра.

другие модули

Для создания задач выполнения других модулей обратитесь к созданию mall-admin и mall-registry.

задача создана

Проблема с последовательностью запуска модуля

Что касается последовательности запуска каждого модуля,mall-registryМодуль должен начаться с первого запуска,mall-configМодули должны запускаться вторыми, остальные модули не имеют ограничений по порядку запуска.

Рекомендуемая последовательность запуска:

  • mall-registry
  • mall-config
  • mall-monitor
  • mall-gateway
  • mall-admin
  • mall-portal
  • mall-search
  • mall-demo

Суммировать

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

адрес проекта

GitHub.com/macro-positive/…

публика

проект торгового центраПолный набор учебных пособий сериализуется,Обратите внимание на публичный аккаунтПолучите это прямо сейчас.

公众号图片