Облачная платформаAdvanced

Развёртывание конвейера разработки кода на ECS

Язык статьи: Русский
Показать оригинал
Страница переведена автоматически и может содержать неточности. Рекомендуем сверяться с английской версией.

В этом разделе описывается, как использовать встроенный репозиторий кода CodeArts для разработки, сборки и развёртывания проектов для непрерывной поставки.

В этой главе используется Elastic Cloud Server (ECS) для традиционного развёртывания программных пакетов.

Для использования развёртывания на основе контейнеров см. Deploying a Code Development Pipeline on CCE.

Подготовка

  1. Вы purchased an ECS. В следующей таблице перечислены обязательные конфигурации. Вы можете выбрать конфигурации, не указанные в таблице, в соответствии с требованиями сайта. После завершения покупки добавьте входящие правила для портов 22 и 8080, обратившись к Configuring Security Group Rules.
    Table 1 Настройка ECS

    Категория

    Параметр

    Рекомендация

    Настройте базовые параметры

    Архитектура CPU

    Выберите x86.

    Характеристики

    Выберите 2 vCPU и 4 GiB или выше.

    Image

    Выберите Public image > CentOS > CentOS 7.6 64bit(10 GiB).

    Configure Network

    EIP

    Выберите Auto assign.

    Billed By

    Выберите By bandwidth.

    Configure Advanced Settings

    Login Mode

    Выберите Password.

    Password

    Введите пароль.

Включение Pay-per-Use Billing

  1. Войдите в консоль, просмотрите страницу Overview и нажмите Pay-per-Use Package.
  2. Просмотрите спецификации сервиса и нажмите Next.
  3. Просмотрите и подтвердите детали пакета. Нажмите Submit. В отображаемом диалоговом окне нажмите Yes.
  4. Проверьте, отображает ли система сообщение, указывающее, что CodeArts успешно подписан.

    Вернитесь к странице Overview. На вкладке My Services статус показывает включённую Subscription.

    Рисунок 1 Подписка на пакет CodeArts


Создание проекта

Проект является основой для использования сервисов в CodeArts. Последующие операции могут быть выполнены только после создания проекта.

  1. Нажмите Access Service в консоли CodeArts.
  2. Нажмите Create Project, нажмите Select для шаблона Scrum, введите имя проекта Demo и нажмите OK.

Создание репозитория кода

Вы можете использовать репозиторий кода для управления версиями кода проекта. В этом разделе описывается, как использовать встроенный шаблон Java Web Demo для создания репозитория кода.

  1. В панели навигации выберите Code > Repo.
  2. Нажмите New Repository, выберите Template и нажмите Next.
  3. На отображаемой странице выберите Java Web Demo и нажмите Next.
  4. Введите имя репозитория кода Web-Demo и нажмите OK.

Проверка кода

Вы можете использовать CodeArts Check для выполнения статической проверки кода и контроля качества кода.

  1. В панели навигации выберите Code > Check. На странице отображается автоматически созданная задача Web-Demo-check.
  2. Нажмите в строке, где находится задача, чтобы запустить задачу.
  3. Когда отображается, задача выполнена успешно. Нажмите имя задачи и просмотрите результат проверки на вкладке Overview.

    Если задача завершилась с ошибкой, проверьте и исправьте ошибки на основе сообщения, отображаемого на странице.

Создание и архивирование программных пакетов

Вы можете использовать CodeArts Build для компиляции исходного кода программного обеспечения в целевой файл, упаковывать файл конфигурации и файл ресурсов и архивировать их в release repo.

  1. В панели навигации выберите CICD > Build. Отображается автоматически созданная задача сборки Web-Demo-build.
  2. Нажмите в строке, где находится задача, чтобы запустить её. Если появилось диалоговое окно, подтвердите параметры и нажмите OK.
  3. Когда отображается, задача выполнена успешно. Нажмите имя задачи. На отображаемой странице Build History найдите Build ID последней сборки в списке и запишите идентификатор.

    Если сборка завершилась с ошибкой, исправьте неисправность, основываясь на информации о неудавшемся действии и сведениях об ошибке в журналах.

    Рисунок 2 Build ID


  4. В панели навигации выберите Artifact > Release Repos.

    В репозитории, названном в соответствии с проектом, перейдите последовательно в папку, названную в соответствии с задачей сборки, и в папку, названную в соответствии с идентификатором сборки, чтобы найти сгенерированный программный пакет demoapp.jar.

    Рисунок 3 Просмотр программного пакета


Развёртывание пакета сборки

Вы можете использовать CodeArts Deploy для развёртывания программных пакетов в репозитории релизов на VM и запуска программного обеспечения.

  1. Настройте целевой хост.

    1. В панели навигации выберите Settings > General > Basic Resources.
    2. Нажмите Create Host Cluster, укажите следующую информацию и нажмите Save.
      Table 2 Создание кластера хостов

      Параметр

      Рекомендация

      Имя кластера

      Введите host-group.

      OS

      Выберите Linux.

      Режим подключения хоста

      Выберите Direct Connection.

      Пул ресурсов выполнения

      Выберите Official.

    3. Нажмите Add Host, укажите следующую информацию, и нажмите OK.
      Table 3 Добавление хоста

      Параметр

      Рекомендация

      Добавить хосты с помощью

      Выберите Adding IP.

      Имя хоста

      Рекомендуется оставить его таким же, как имя ECS, приобретённого в Preparations.

      IP

      Введите elastic IP-адрес ECS, приобретённого в Preparations.

      Авторизация

      Выберите Password.

      Имя пользователя

      Введите root.

      Password

      Введите пароль, указанный при покупке ECS в Preparations.

      SSH Port

      Введите 22.

    4. Запись хоста отображается на странице. Если в столбце Verification Result указано successful, хост добавлен.

      Если хост не удалось добавить, проверьте его конфигурацию на основе сведений об ошибке.

  2. Выберите CICD > Deploy в navigation pane. Автоматически созданное приложение Web-Demo-deploy отображается на странице.
  3. Нажмите и выберите Edit.
  4. Нажмите вкладку Environment Management и настройте среду хоста.

    1. Нажмите Create Environment, укажите следующую информацию и нажмите Save.
      Table 4 Создание среды

      Parameter

      Suggestion

      Environment

      Введите demo-env.

      Тип ресурса

      Выберите Host.

      OS

      Выберите Linux.

    2. Нажмите Import Host. В отображаемом диалоговом окне выберите кластер хостов и хост, настроенный в 1 и нажмите Import.
    3. Отображается сообщение, указывающее, что импорт выполнен успешно. Закройте окно.

  5. Нажмите вкладку Deployment Actions и настройте информацию.

    • Install JDK: Проверьте, что версия JDK — openjdk-1.8.0.
    • Select a Deployment Source: Установите параметры согласно таблице ниже.
      Table 5 Конфигурация источника развертывания

      Параметр

      Значение

      Источник

      Нажмите Build task.

      Build Task

      Выберите Web-Demo-build.

      Путь загрузки

      Введите /usr/local/${package_name}/.

    • Stop SpringBoot: При выполнении этого действия в первый раз оно завершается с ошибкой, потому что на целевом хосте не запущена служба. Чтобы отключить это действие, нажмите на карточке действия и выберите Disable.

      Рисунок 4 Отключение "Stop SpringBoot"


    • Health Test Through URLs: Это действие является необязательным и отключено в данном примере.

  6. Click the Parameters tab and set parameters by referring to the following table.

    Имя параметра

    Значение

    host_group

    Выберите среду demo-env, добавленную в 4.

    package_url

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

    service_port

    Введите 8080.

    package_name

    Введите demoapp.

  7. Нажмите Save & Deploy. Если отображается диалоговое окно, подтвердите параметры и нажмите OK.

    Подождите, пока не будет отображено на странице. Если развертывание завершилось неудачей, устраните ошибку, основываясь на информации о неудачном действии и сведениях об ошибке в журналах.

  8. Просмотрите результат развертывания.

    Откройте новую страницу браузера и введите адрес доступа http://IP:8080/test. IP — это elastic IP-адрес ECS, приобретённый в Preparations.

    Если отображается следующая информация, развертывание выполнено успешно.

    Рисунок 5 Результат развертывания


Настройка Пайплайна

Вы можете использовать CodeArts пайплайн для соединения задач проверки кода, сборки и развертывания. При изменении кода пайплайн автоматически запускается для непрерывной поставки.

  1. Выберите CICD > Pipeline в панели навигации. На вкладке Pipelines отображается автоматически созданный пайплайн Web-Demo-pipeline.
  2. Нажмите и выберите Edit.
  3. На странице вкладки Task Orchestration настройте пайплайн.

    1. Тестирование API не рассматривается в данном документе. Поэтому удалите задачу API test task из пайплайна.

      Нажмите рядом с задачей Apitest. В отображаемом диалоговом окне нажмите OK.

      Рисунок 6 Удаление задачи


    2. Нажмите Deploy задачу, свяжите задачу сборки Build, и задайте другие параметры в соответствии с настройками параметров в Deploying the Build Package.

  4. Нажмите вкладку Execution Plan, выберите Code commit, и выберите master из выпадающего списка фильтра ветки.

    Рисунок 7 Настройка плана выполнения


  5. Нажмите Save.
  6. Перейдите к Deploy, отредактируйте действия развертывания и включите Stop SpringBoot.
  7. Перейдите в репозиторий кода, найдите и откройте файл TestController.java.

    Нажмите , измените hello world на hello world again, отправьте информацию и нажмите OK.

    Рисунок 8 Изменение кода


  8. Вернитесь к странице Pipeline. Вы видите, что pipeline работает.

    Когда отображается, снова обратитесь к http://IP:8080/test. На следующем рисунке показан результат доступа.

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

    Рисунок 9 Результат выполнения pipeline


Последующие операции

Чтобы избежать ненужных расходов, вы можете освободить любые неиспользуемые ресурсы после завершения этого примера. Следующие ресурсы можно освободить.

Table 6 Освобождение ресурсов

Ресурс

Метод освобождения

CodeArts проект

Выберите Settings > General > Basic Information, нажмите Delete Project, и следуйте подсказкам, чтобы удалить проект.

ECS

Войдите в консоль ECS, найдите ECS, который нужно удалить, в списке, выберите More > Delete, и следуйте подсказкам, чтобы удалить ECS.

Notice

Освобожденные ресурсы нельзя восстановить. Будьте осторожны при выполнении этой операции.