Автоматизация процесса версионирования лямбда с изменением конфигурации и кода с помощью CloudFormation и Code Pipeline

” Я проверил документы AWS, чтобы автоматизировать опыт версионирования лямбда при изменении конфигурации и кода. Я проверил сервис AWS Code pipeline, который упрощает и автоматизирует процесс для всех. Цена на Code pipeline основана на времени запуска конвейера. Также цена за сборку кода. “

Ключевое слово define “Devtron” играет важную роль в сортировке сложности DevOps, AppOps и Kubernetes. Также “GitHub” помогает интегрировать и автоматизировать. Как Devtron, так и GitHub имеют открытый исходный код.

В этой заметке вы познакомитесь с автоматизацией версионирования лямбд с конфигурацией и изменением кода с помощью cloudformation и code pipeline. Здесь я создал конвейер кода для автоматизации создания лямбды и ее версионирования при изменении заданных параметров с помощью cloudformation с артефактами, которые будут храниться в s3 bucket.

Необходимые условия

Вам понадобится учетная запись Github и git, установленный на локальной машине. Вам понадобится AWS CLI, установленный и настроенный на локальной машине.

Обзор архитектуры


На диаграмме архитектуры показана общая архитектура развертывания с потоком данных, сборкой кода, развертыванием кода, конвейером кода, s3, sns, формированием облака, лямбда.

Обзор решения

Статья в блоге состоит из следующих этапов:

  1. Создание роли IAM, ведра S3, Buildspec.yml, Template.yaml и образца файла HelloWorld.js.
  2. Создание CodePipeline и Build Project
  3. Создание SNS Topic с подпиской и проверка CloudFormation с созданием лямбды
  4. Проверка параметров конфигурации Lambda и развертывание кода при обновлении в GitHub

Этап 1: Создание роли IAM, ведра S3, Buildspec.yml, Template.yaml и образца файла HelloWorld.js

  1. Откройте консоль IAM и создайте роль для cloudformation с политикой AWS lambda execute и inline policy с необходимыми разрешениями. Создайте ведро S3 с именем lambda-ci-cd-demo-test. Также настройте файл buildspec.yml, файл template.yaml и файл helloworld.js в соответствии с требованиями для создания кода лямбда и части конфигурации.

Этап 2: Создание CodePipeline и сборка проекта

  1. Откройте консоль codepipeline и создайте конвейер с источником github и провайдером cloudformation с ролью IAM по умолчанию и пользовательской политикой s3 inline, которая будет прикреплена к роли. Также создайте проект с пользовательскими настройками.

Этап 3: Создание темы SNS с подпиской и проверка CloudFormation с созданием лямбды

  1. Откройте Amazon Simple Notification Service и создайте тему с подпиской для уведомления об утверждении в конвейере кода. В конвейере кода этапы source, build, deploy, createchangeset, approvechangeset, executechangeset.

Этап 4: Тестирование параметров конфигурации лямбда и развертывание кода при обновлении в GitHub

  1. Протестируйте конфигурацию лямбды и код при внесении изменений в различные параметры в github.

Очистка

Удалите Code Pipeline, Code Build, IAM Role, S3 Bucket, Cloud Formation, SNS.

Ценообразование

Я рассматриваю ценообразование и примерную стоимость этого примера.

Стоимость сборки кода = $0,0

Стоимость Lambda = $0,0

Стоимость Simple Notification Service = $0,0

Стоимость простой службы хранения данных = $1,0

Общая стоимость = $(0,0 + 0,0 + 0,0 + 1,0) = $1,0

Резюме

В этом посте я показал “как автоматизировать процесс версионирования лямбд при изменении конфигурации и кода с помощью cloudformation и code pipeline”.

Для получения более подробной информации о AWS CodeDeploy, ознакомьтесь с разделом Get started AWS CodeDeploy, откройте консоль AWS CodeDeploy. Чтобы узнать больше, ознакомьтесь с документацией AWS CodeDeploy. Для получения дополнительной информации о AWS CodePipeline ознакомьтесь с разделом Get started AWS CodePipeline, откройте консоль AWS CodePipeline. Чтобы узнать больше, ознакомьтесь с документацией AWS CodePipeline.

Для получения дополнительной информации о AWS CodeBuild ознакомьтесь с разделом Get started AWS CodeBuild, откройте консоль AWS CodeBuild. Чтобы узнать больше, ознакомьтесь с документацией AWS CodeBuild. Для получения более подробной информации о AWS CloudFormation, проверьте Начать работу с AWS CloudFormation, откройте консоль AWS CloudFormation. Чтобы узнать больше, ознакомьтесь с документацией AWS CloudFormation.

Для получения более подробной информации о Devtron и GitHub ознакомьтесь с ссылками:
Веб-сайт Devtron
GitHub Repo
Присоединяйтесь к сообществу Discord
Следите за Твиттером
Поднимайте запросы на функции, предлагайте улучшения, сообщайте об ошибках
Читайте блог Devtron

Давайте быстро внедрим и попробуем! И опубликуйте ответ, используя #AdoptK8sWithDevtron #devtron

Этот блог представлен в рамках ‘Devtron Blogathon 2022’ – https://devtron.ai/.
Проверьте GitHub-репо Devtron – https://github.com/devtron-labs/devtron/ и поставьте ⭐, чтобы показать свою любовь и поддержку.
Следите за Devtron на LinkedIn – https://www.linkedin.com/company/devtron-labs/ и Twitter – https://twitter.com/DevtronL/, чтобы быть в курсе новостей этого проекта с открытым исходным кодом.

Спасибо за чтение!

Свяжитесь со мной: Linkedin

Оцените статью
Procodings.ru
Добавить комментарий