ИТ Блог. Администрирование серверов на основе Linux (Ubuntu, Debian, CentOS, openSUSE)

Настройка конвейера DevOps в AWS

Настройка конвейера DevOps в AWS

В этой статье мы расскажем, как настроить конвейер DevOps в AWS. Однако давайте начнем с определения того, что такое DevOps.

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

Ожидается, что с недавним переходом к облачным вычислениям разработчики будут лучше понимать инфраструктуру, в которой работают их приложения. Это означает, что команда разработчиков и операционная команда объединены в одну и работают вместе в режиме DevOps. Это позволяет разработчикам писать код, который масштабируется и которым легче управлять в производственных средах.

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

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

Вместе с DevOps и объединенной командой разработчиков и операторов мы можем быстрее выпускать небольшие функции. Задачи, связанные с операциями, могут выполняться параллельно с обычными действиями по разработке. Чтобы сделать это еще быстрее, мы можем автоматизировать задачи выпуска и тестирования, используя конвейер DevOps. Размещение пакетов выпуска в среде сервера и выполнение сценариев могут запускаться автоматически одним нажатием кнопки или простым нажатием изменения кода в определенной ветви.

Такой конвейер может быть настроен с помощью различных инструментов. Однако, если вы уже выполняете свои рабочие нагрузки в AWS, он поставляется с множеством различных сервисов, которые помогут вам сделать это достаточно эффективно, не выходя из экосистемы AWS.

Давайте начнем создавать собственный конвейер для автоматизации некоторых задач развертывания.

 

Начало

Мы автоматизируем развертывание простого статического сайта с использованием следующих сервисов AWS:

Размещаемый нами статический сайт состоит из простого HTML-файла, доступ к которому осуществляется по URL-адресу S3. Чтобы развернуть это, нам нужно вручную загрузить HTML-файл в корзину из консоли AWS. Хотя это может быть не очень сложно сделать, мы всегда можем сэкономить нам пару минут, автоматизируя эту задачу.

Целью конвейера является объединение вышеупомянутых сервисов AWS для достижения следующего:

 

Хостинг статических сайтов на S3

 

1. Создайте корзину

Чтобы запустить наш статический сайт, мы начнем с создания корзины S3. Это можно сделать, перейдя в Консоль AWS → Сервисы → S3 → Создать корзину. Обязательно включите публичный доступ к этому сегменту, чтобы наш сайт мог быть доступен через Интернет. Оставьте другие параметры по умолчанию.

 

2. Включить статический хостинг сайтов

Теперь пришло время сделать наши HTML-файлы в корзине доступными как статический сайт. Для этого перейдите в корзину S3 → Свойства → Статический хостинг → Используйте эту корзину для размещения статического сайта. Не забудьте ввести в index.htmlкачестве индексного документа и нажмите Сохранить. Теперь ваш сайт должен быть запущен, если вы перейдете по URL-адресу конечной точки, который отображается в диалоговом окне статического хостинга веб-сайтов.

Большой! Теперь у нас есть статический сайт. Чтобы обновить его, вам нужно загрузить новую версию index.htmlфайла в корзину. Давайте автоматизировать это!

 

Создание конвейера

1. Создайте репозиторий CodeCommit

Для размещения кода нам нужен репозиторий для наших файлов. Это может быть GitHub или любой другой сервис репозитория, который вы предпочитаете. Для простоты мы будем использовать сервис репозитория AWS CodeCommit.

Создайте репозиторий, перейдя в Консоль AWS → CodeCommit → Создать репозиторий. Введите имя и нажмите Сохранить. Наконец, добавьте HTML, подключившись к хранилищу через SSH или HTTPS. Если у вас нет вдохновения для файла, вы можете использовать следующий:

<p>Привет из AndreyEx.ru!</p>

 

2. Создайте конвейер CodePipeline.

Теперь пришло время создать конвейер, который будет координировать процесс развертывания нашего статического сайта. Чтобы начать создание конвейера, перейдите в Консоль AWS → CodePipeline → Создать новый конвейер.

Шаг 1

Шаг 2

Шаг 3

Шаг 4

 

Шаг 5

Теперь ваш конвейер должен запуститься и развернуть файл HTML в вашем репозитории CodeCommit на S3. Нажмите изменение в файле, и конвейер должен снова сработать автоматически.

 

Вывод

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

Удачи в использовании ваших новых навыков DevOps!

Если у вас есть какие-либо вопросы или пожелания, не стесняйтесь комментировать ниже.

Exit mobile version