Xlera8

Створення налаштованих, сумісних сценаріїв IaC додатків для AWS Landing Zone за допомогою Amazon Bedrock | Веб-сервіси Amazon

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

Генеративний штучний інтелект (ШІ) с Amazon Bedrock безпосередньо вирішує ці виклики. 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 командами платформи.

Подолання проблем локальної міграції ІК за допомогою генеративного ШІ

Команди, які обслуговують локальні програми, часто стикаються з кривою навчання Terraform, ключовим інструментом для IaC у середовищах AWS. Ця прогалина в навичках може стати суттєвою перешкодою в спробах міграції в хмару. Amazon Bedrock зі своїми генеративними можливостями ШІ відіграє важливу роль у пом’якшенні цієї проблеми. Це полегшує автоматизацію створення коду Terraform для рівня інфраструктури додатків, надаючи можливість командам з обмеженим досвідом Terraform здійснити ефективний перехід на AWS.

Amazon Bedrock створює код Terraform на основі архітектурних описів. Згенерований код є спеціальним і стандартизованим на основі найкращих організаційних практик, безпеки та нормативних вказівок. Ця стандартизація стала можливою завдяки використанню розширених підказок у поєднанні з Бази знань для Amazon Bedrock, який зберігає інформацію про специфічні для організації модулі Terraform. Це рішення використовує Retrieval Augmented Generation (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. Крім того, включіть детальну структуру витрат для кожної послуги AWS із погодинними ставками та загальними щоденними та місячними витратами».
  4. Він фіксує згенеровану конфігурацію Terraform і README до репозиторію GitHub, забезпечуючи відстеження та прозорість.
  5. Нарешті, він успішно відповідає, включаючи URL-адреси зафіксованих файлів GitHub, або повертає докладну інформацію про помилку для усунення несправностей.

Налаштуйте бази знань для Amazon Bedrock

Виконайте такі кроки, щоб налаштувати свою базу знань в Amazon Bedrock:

  1. Виберіть на консолі Amazon Bedrock База знань у навігаційній панелі.
  2. Вибирати Створити базу знань.
  3. Введіть чітку й описову назву, яка відображає призначення вашої бази знань, наприклад AWS Account Setup Knowledge Base For 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 досвід Ebbey є центральним для розробки рішень, які оптимізують впровадження хмари, забезпечуючи безпечну та ефективну робочу структуру для користувачів AWS. Він відомий своїм інноваційним підходом до хмарних викликів і своєю відданістю просуванню можливостей хмарних сервісів.

Зв'яжіться з нами!

Привіт! Чим я можу вам допомогти?