Логотип Зефирнет

Создавайте индивидуальные сценарии IaC приложений для AWS Landing Zone с помощью Amazon Bedrock | Веб-сервисы Amazon

Дата:

Миграция в облако — важный шаг для современных организаций, стремящихся извлечь выгоду из гибкости и масштабируемости облачных ресурсов. Такие инструменты, как Terraform и AWS CloudFormation имеют решающее значение для таких переходов, предлагая возможности инфраструктуры как кода (IaC), которые точно определяют и управляют сложными облачными средами. Однако, несмотря на преимущества, кривая обучения IaC и сложность соблюдения стандартов соответствия и безопасности вашей организации и отрасли могут замедлить процесс внедрения облака. Организации обычно преодолевают эти препятствия, инвестируя в обширные программы обучения или нанимая специализированный персонал, что часто приводит к увеличению затрат и задержке сроков перехода.

Генеративный искусственный интеллект (ИИ) с Коренная порода Амазонки непосредственно решает эти проблемы. Amazon Bedrock — это полностью управляемый сервис, предлагающий на выбор высокопроизводительные базовые модели (FM) от ведущих компаний в области искусственного интеллекта, таких как AI21 Labs, Anthropic, Cohere, Meta, Stability AI и Amazon, с единым API, а также широкий набор возможности для создания генеративных приложений ИИ с безопасностью, конфиденциальностью и ответственным ИИ. Amazon Bedrock позволяет командам создавать скрипты Terraform и CloudFormation, индивидуально адаптированные к потребностям организации, при этом легко интегрируя передовые методы обеспечения соответствия требованиям и безопасности. Традиционно облачные инженеры, изучающие IaC, вручную просматривали документацию и рекомендации для написания совместимых сценариев IaC. С помощью Amazon Bedrock команды могут вводить высокоуровневые архитектурные описания и использовать генеративный искусственный интеллект для создания базовой конфигурации скриптов Terraform. Эти созданные сценарии адаптированы к уникальным требованиям вашей организации, а также соответствуют отраслевым стандартам безопасности и соответствия требованиям. Эти сценарии служат отправной точкой и требуют дальнейшей доработки и проверки, чтобы убедиться, что они соответствуют стандартам производственного уровня.

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

Когда вы преодолеваете сложности миграции в облако, первостепенное значение приобретает необходимость в структурированной, безопасной и совместимой среде. Зона приземления AWS удовлетворяет эту потребность, предлагая стандартизированный подход к развертыванию ресурсов AWS. Это гарантирует, что ваша облачная основа с самого начала будет построена в соответствии с лучшими практиками AWS. Благодаря AWS Landing Zone вы избавитесь от догадок при настройке безопасности, предоставлении ресурсов и управлении учетными записями. Это особенно полезно для организаций, стремящихся к масштабированию без ущерба для управления и контроля, обеспечивая четкий путь к надежной и эффективной настройке облака.

В этом посте мы покажем, как создавать индивидуальные, соответствующие требованиям IaC-скрипты для AWS Landing Zone с помощью Amazon Bedrock.

Архитектура AWS Landing Zone в контексте миграции в облако

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

Рабочий процесс высокого уровня включает в себя следующие компоненты:

  • Подготовка модуля – Различные команды разработчиков платформ в различных областях, таких как базы данных, контейнеры, управление данными, сети и безопасность, разрабатывают и публикуют сертифицированные или специальные модули. Они доставляются по конвейерам в реестр частных модулей Terraform, который поддерживается организацией для обеспечения согласованности и стандартизации.
  • Уровень торгового автомата учетной записи – Уровень торгового автомата (AVM) использует либо Башня управления AWS, Фабрика аккаунтов AWS для Terraform (AFT) или индивидуальное решение целевой зоны для продажи счетов. В этой статье мы будем называть эти решения слоем AVM. Когда владельцы приложений отправляют запрос на уровень AVM, он обрабатывает входные параметры запроса для предоставления целевой учетной записи AWS. Затем эта учетная запись снабжается адаптированными компонентами инфраструктуры посредством настроек AVM, которые включают в себя Настройки AWS Control Tower or Настройки AFT.
  • Уровень инфраструктуры приложений – На этом уровне группы приложений развертывают компоненты своей инфраструктуры в предоставленных учетных записях AWS. Это достигается путем написания кода Terraform в репозитории конкретного приложения. Код Terraform использует модули, ранее опубликованные в частном реестре Terraform командами платформы.

Преодоление проблем миграции IaC на локальную площадку с помощью генеративного искусственного интеллекта

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

Amazon Bedrock генерирует код Terraform на основе архитектурных описаний. Сгенерированный код настраивается и стандартизируется на основе лучших организационных практик, безопасности и нормативных требований. Эта стандартизация стала возможной благодаря использованию расширенных подсказок в сочетании с Базы знаний для Amazon Bedrock, в котором хранится информация о модулях Terraform, специфичных для организации. В этом решении используется расширенная генерация извлечения (RAG), чтобы обогатить приглашение на вход в Amazon Bedrock подробностями из базы знаний, гарантируя, что выходная конфигурация Terraform и содержимое README соответствуют передовым практикам и рекомендациям Terraform вашей организации.

Следующая диаграмма иллюстрирует эту архитектуру.

Рабочий процесс состоит из следующих шагов:

  1. Процесс начинается с продажи учетной записи, когда владельцы приложений подают запрос на новую учетную запись AWS. При этом вызывается AVM, который обрабатывает параметры запроса для предоставления целевой учетной записи AWS.
  2. Описание архитектуры приложения, предназначенного для миграции, передается в качестве одного из входных данных на уровень AVM.
  3. После подготовки учетной записи применяются настройки AVM. Это может включать в себя Настройки AWS Control Tower or Настройки AFT которые настраивают учетную запись с необходимыми компонентами инфраструктуры и конфигурациями в соответствии с политикой организации.
  4. Параллельно уровень AVM вызывает функцию Lambda для генерации кода Terraform. Эта функция дополняет описание архитектуры настраиваемым приглашением и использует RAG для дальнейшего улучшения приглашения с помощью рекомендаций по кодированию для конкретной организации из базы знаний для Bedrock. Эта база знаний включает адаптированные передовые методы, меры безопасности и рекомендации, специфичные для организации. См. иллюстрацию пример спецификаций и рекомендаций модуля Terraform для конкретной организации, загруженных в базу знаний.
  5. Перед развертыванием первоначальный проект кода Terraform тщательно проверяется облачными инженерами или автоматизированной системой проверки кода, чтобы подтвердить его соответствие всем техническим стандартам и стандартам соответствия.
  6. Проверенные и обновленные сценарии Terraform затем используются для развертывания компонентов инфраструктуры в вновь подготовленной учетной записи AWS, настройки вычислительных, хранилищных и сетевых ресурсов, необходимых для приложения.

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

При развертывании AWS Landing Zone используется функция Lambda для создания сценариев Terraform на основе входных архитектурных данных. Эта функция, которая является центральной в операции, преобразует эти входные данные в совместимый код с использованием Amazon Bedrock и баз знаний для Amazon Bedrock. Затем выходные данные сохраняются в репозитории GitHub, соответствующем конкретному приложению, находящемуся в процессе миграции. В следующих разделах подробно описаны предварительные условия и конкретные шаги, необходимые для реализации этого решения.

Предпосылки

У вас должно быть следующее:

Настройте функцию Lambda для генерации собственного кода.

Эта функция Lambda является ключевым компонентом автоматизации создания настраиваемых, совместимых с Terraform конфигураций для сервисов AWS. Он фиксирует сгенерированные конфигурации непосредственно в назначенном репозитории GitHub в соответствии с передовыми практиками организации. Функциональный код см. в следующем документе. Репо GitHub. Для создания лямбда-функции следуйте инструкции.

На следующей диаграмме показан рабочий процесс функции.

Рабочий процесс включает в себя следующие шаги:

  1. Функция вызывается событием уровня AVM, содержащим описание архитектуры.
  2. Функция извлекает и использует определения модулей Terraform из базы знаний.
  3. Функция дважды вызывает модель Amazon Bedrock, следуя рекомендациям. быстрые инженерные рекомендации. Функция применяет RAG для обогащения входного запроса информацией модуля Terraform, гарантируя, что выходной код соответствует лучшим практикам организации.
    • Сначала сгенерируйте конфигурации Terraform, следуя организационным рекомендациям по кодированию, и включите сведения о модуле Terraform из базы знаний. Например, запрос может быть таким: «Создать конфигурации Terraform для сервисов AWS. Следуйте рекомендациям по безопасности, используя роли IAM и разрешения с минимальными привилегиями. Включите все необходимые параметры со значениями по умолчанию. Добавляйте комментарии, объясняющие общую архитектуру и назначение каждого ресурса».
    • Во-вторых, создайте подробный файл README. Например: «Создайте подробный README для конфигурации Terraform на основе сервисов AWS. Включите разделы об улучшениях безопасности и советы по оптимизации затрат в соответствии с AWS Well-Architected Framework. Кроме того, включите подробную разбивку затрат для каждого используемого сервиса AWS с почасовыми ставками и общими ежедневными и ежемесячными затратами».
  4. Он фиксирует сгенерированную конфигурацию Terraform и README в репозитории GitHub, обеспечивая отслеживаемость и прозрачность.
  5. Наконец, он отвечает успешно, включая URL-адреса зафиксированных файлов GitHub, или возвращает подробную информацию об ошибках для устранения неполадок.

Настройка баз знаний для Amazon Bedrock

Выполните следующие действия, чтобы настроить базу знаний в Amazon Bedrock:

  1. На консоли Amazon Bedrock выберите База знаний в навигационной панели.
  2. Выберите Создать базу знаний.
  3. Введите четкое и описательное имя, отражающее назначение вашей базы знаний, например «База знаний по настройке учетной записи AWS для Amazon Bedrock».
  4. Назначьте предварительно настроенную роль IAM с необходимыми разрешениями. Обычно лучше позволить Amazon Bedrock создать эту роль, чтобы убедиться, что у нее есть правильные разрешения.
  5. Загрузите файл JSON в корзину S3 с включенным шифрованием в целях безопасности. Этот файл должен содержать структурированный список сервисов AWS и модулей Terraform. Для структуры JSON используйте следующее пример из репозитория GitHub.
  6. Выберите модель внедрения по умолчанию.
  7. Разрешите Amazon Bedrock создавать для вас векторное хранилище и управлять им в Сервис Amazon OpenSearch.
  8. Проверьте информацию на предмет точности. Обратите особое внимание на URI сегмента S3 и детали роли IAM.
  9. Создайте свою базу знаний.

После развертывания и настройки этих компонентов, когда ваше решение AWS Landing Zone вызывает функцию Lambda, создаются следующие файлы:

  • Файл конфигурации Terraform – Этот файл определяет настройку инфраструктуры.
  • Подробный файл README – В этом файле документируются стандарты безопасности, встроенные в код, и подтверждается, что они соответствуют методам обеспечения безопасности, изложенным в начальных разделах. Кроме того, этот README включает в себя краткое описание архитектуры, советы по оптимизации затрат и подробную разбивку затрат на ресурсы, описанные в конфигурации Terraform.

На следующем снимке экрана показан пример файла конфигурации Terraform.

На следующем снимке экрана показан пример файла README.

Убирать

Выполните следующие шаги, чтобы очистить ресурсы:

  1. Удалите функцию Lambda, если она больше не требуется.
  2. Очистите и удалите корзину S3, используемую для хранения состояний Terraform.
  3. Удалите сгенерированные сценарии Terraform и файл README из репозитория GitHub.
  4. Удалить базу знаний если он больше не нужен.

Заключение

Возможности генеративного искусственного интеллекта Amazon Bedrock не только упрощают создание совместимых сценариев Terraform для развертываний AWS, но также служат основным учебным пособием для начинающих облачных инженеров, переводящих локальные приложения на AWS. Такой подход ускоряет процесс миграции в облако и помогает придерживаться лучших практик. Вы также можете использовать это решение для повышения эффективности после миграции, улучшая повседневные операции, такие как текущая инфраструктура и оптимизация затрат. Хотя в этой статье мы в первую очередь сосредоточились на Terraform, эти принципы также могут улучшить ваши развертывания AWS CloudFormation, предоставив универсальное решение для потребностей вашей инфраструктуры.

Готовы упростить процесс миграции в облако с помощью генеративного искусственного интеллекта в Amazon Bedrock? Начните с изучения Руководство пользователя Amazon Bedrock чтобы понять, как это может упростить переход вашей организации в облако. Для получения дополнительной помощи и экспертных знаний рассмотрите возможность использования Профессиональные услуги AWS чтобы помочь вам оптимизировать процесс миграции в облако и максимально использовать преимущества Amazon Bedrock.

Раскройте потенциал быстрого, безопасного и эффективного внедрения облака с помощью Amazon Bedrock. Сделайте первый шаг сегодня и узнайте, как это может улучшить усилия по трансформации облака в вашей организации.


Об авторе

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

Spot_img

Последняя разведка

Spot_img