Inteligența generativă a datelor

Generați scripturi IaC de aplicații personalizate și conforme pentru AWS Landing Zone folosind Amazon Bedrock | Amazon Web Services

Data:

Migrarea către cloud este un pas esențial pentru organizațiile moderne care își propun să valorifice flexibilitatea și amploarea resurselor cloud. Instrumente precum Terraform și Formarea AWS Cloud sunt esențiale pentru astfel de tranziții, oferind capabilități de infrastructură ca cod (IaC) care definesc și gestionează mediile cloud complexe cu precizie. Cu toate acestea, în ciuda beneficiilor sale, curba de învățare a IaC și complexitatea aderării la standardele și standardele de securitate ale organizației și specifice industriei, ar putea încetini călătoria dvs. de adoptare a cloud-ului. De obicei, organizațiile contracarează aceste obstacole investind în programe extinse de formare sau angajând personal specializat, ceea ce duce adesea la creșterea costurilor și la întârzierea termenelor de migrare.

Inteligența artificială generativă (AI) cu Amazon Bedrock abordează direct aceste provocări. Amazon Bedrock este un serviciu complet gestionat care oferă o gamă de modele de fundație (FM) de înaltă performanță de la companii de IA de vârf precum AI21 Labs, Anthropic, Cohere, Meta, Stability AI și Amazon cu un singur API, împreună cu un set larg de capabilități de a construi aplicații AI generative cu securitate, confidențialitate și AI responsabilă. Amazon Bedrock permite echipelor să genereze scripturi Terraform și CloudFormation care sunt adaptate la nevoile organizației, integrând în același timp cele mai bune practici de conformitate și securitate. În mod tradițional, inginerii din cloud care învață IaC ar trece manual prin documentație și cele mai bune practici pentru a scrie scripturi IaC conforme. Cu Amazon Bedrock, echipele pot introduce descrieri arhitecturale de nivel înalt și pot folosi AI generativă pentru a genera o configurație de bază a scripturilor Terraform. Aceste scripturi generate sunt adaptate pentru a satisface cerințele unice ale organizației dumneavoastră, respectând în același timp standardele din industrie pentru securitate și conformitate. Aceste scripturi servesc ca punct de plecare fundamental, necesitând rafinare și validare suplimentară pentru a se asigura că îndeplinesc standardele la nivel de producție.

Această soluție nu numai că accelerează procesul de migrare, dar oferă și o infrastructură cloud standardizată și sigură. În plus, oferă inginerilor de cloud începători schițele inițiale de script ca șabloane standard pe care să le construiască, facilitând călătoria lor de învățare IaC.

Pe măsură ce navigați prin complexitățile migrării în cloud, necesitatea unui mediu structurat, sigur și compatibil este primordială. Zona de aterizare AWS abordează această nevoie oferind o abordare standardizată a implementării resurselor AWS. Acest lucru vă asigură că fundația dvs. cloud este construită conform celor mai bune practici AWS încă de la început. Cu AWS Landing Zone, eliminați presupunerile în configurațiile de securitate, furnizarea resurselor și gestionarea contului. Este deosebit de benefic pentru organizațiile care doresc să se extindă fără a compromite guvernanța sau controlul, oferind o cale clară către o configurare cloud robustă și eficientă.

În această postare, vă arătăm cum să generați scripturi IaC personalizate și conforme pentru AWS Landing Zone folosind Amazon Bedrock.

Arhitectura AWS Landing Zone în contextul migrării în cloud

AWS Landing Zone vă poate ajuta să configurați un mediu AWS securizat, cu mai multe conturi, bazat pe cele mai bune practici AWS. Oferă un mediu de bază pentru a începe cu o arhitectură cu mai multe conturi, pentru a automatiza configurarea noilor conturi și pentru a centraliza conformitatea, securitatea și gestionarea identității. Următorul este un exemplu de soluție personalizată AWS Landing Zone bazată pe Terraform, în care fiecare aplicație se află în propriul cont AWS.

Fluxul de lucru la nivel înalt include următoarele componente:

  • Aprovizionarea modulelor – Echipe de platforme diferite din diferite domenii, cum ar fi baze de date, containere, management de date, rețele și securitate, dezvoltă și publică module certificate sau personalizate. Acestea sunt livrate prin conducte către un registru de module privat Terraform, care este menținut de organizație pentru coerență și standardizare.
  • Strat automat de conturi – Stratul automat de cont (AVM) folosește fie Turnul de control AWS, Fabrica de conturi AWS pentru Terraform (AFT) sau o soluție personalizată pentru zonele de aterizare pentru a vinde conturi. În această postare, ne referim la aceste soluții în mod colectiv ca stratul AVM. Când proprietarii de aplicații trimit o solicitare la nivelul AVM, acesta procesează parametrii de intrare din cererea de furnizare a unui cont AWS țintă. Acest cont este apoi furnizat cu componente de infrastructură personalizate prin personalizări AVM, care includ Personalizări AWS Control Tower or Personalizări AFT.
  • Stratul de infrastructură de aplicații – În acest nivel, echipele de aplicații își implementează componentele de infrastructură în conturile AWS furnizate. Acest lucru se realizează prin scrierea codului Terraform într-un depozit specific aplicației. Codul Terraform face apel la modulele publicate anterior în registrul privat Terraform de către echipele platformei.

Depășirea provocărilor de migrare a IaC la nivel local cu IA generativă

Echipele care întrețin aplicații on-premise se confruntă adesea cu o curbă de învățare cu Terraform, un instrument cheie pentru IaC în mediile AWS. Acest decalaj de competențe poate fi un obstacol semnificativ în eforturile de migrare în cloud. Amazon Bedrock, cu capabilitățile sale generative de inteligență artificială, joacă un rol esențial în atenuarea acestei provocări. Facilitează automatizarea creării de cod Terraform pentru stratul de infrastructură a aplicațiilor, dând putere echipelor cu experiență Terraform limitată să facă o tranziție eficientă la AWS.

Amazon Bedrock generează cod Terraform din descrierile arhitecturale. Codul generat este personalizat și standardizat pe baza celor mai bune practici organizaționale, securitate și ghiduri de reglementare. Această standardizare este posibilă prin utilizarea prompturilor avansate împreună cu Baze de cunoștințe pentru Amazon Bedrock, care stochează informații despre modulele Terraform specifice organizației. Această soluție folosește Retrieval Augmented Generation (RAG) pentru a îmbogăți promptul de intrare către Amazon Bedrock cu detalii din baza de cunoștințe, asigurându-vă că configurația Terraform de ieșire și conținutul README sunt conforme cu cele mai bune practici și ghiduri ale organizației dvs. Terraform.

Următoarea diagramă ilustrează această arhitectură.

Fluxul de lucru constă din următorii pași:

  1. Procesul începe cu vânzarea contului, în care proprietarii de aplicații trimit o solicitare pentru un nou cont AWS. Aceasta invocă AVM, care procesează parametrii de solicitare pentru a furniza contul AWS țintă.
  2. O descriere a arhitecturii pentru o aplicație programată pentru migrare este transmisă ca una dintre intrările la stratul AVM.
  3. După furnizarea contului, se aplică personalizările AVM. Aceasta poate include Personalizări AWS Control Tower or Personalizări AFT care configurează contul cu componentele și configurațiile de infrastructură necesare în conformitate cu politicile organizaționale.
  4. În paralel, stratul AVM invocă o funcție Lambda pentru a genera codul Terraform. Această funcție îmbogățește descrierea arhitecturii cu un prompt personalizat și utilizează RAG pentru a îmbunătăți și mai mult promptul cu ghiduri de codificare specifice organizației din Baza de cunoștințe pentru Bedrock. Această bază de cunoștințe include cele mai bune practici personalizate, balustrade de securitate și linii directoare specifice organizației. Vezi un ilustrativ exemplu specificațiile și liniile directoare ale modulelor Terraform specifice organizației, încărcate în baza de cunoștințe.
  5. Înainte de implementare, schița inițială a codului Terraform este revizuită amănunțit de inginerii cloud sau de un sistem automat de revizuire a codului pentru a confirma că îndeplinește toate standardele tehnice și de conformitate.
  6. Scripturile Terraform revizuite și actualizate sunt apoi utilizate pentru a implementa componente de infrastructură în contul AWS nou furnizat, configurand resursele de calcul, stocare și rețea necesare pentru aplicație.

Prezentare generală a soluțiilor

Implementarea AWS Landing Zone utilizează o funcție Lambda pentru generarea de scripturi Terraform din intrări arhitecturale. Această funcție, care este centrală pentru operațiune, traduce aceste intrări în cod compatibil, folosind Amazon Bedrock și Knowledge Bases pentru Amazon Bedrock. Ieșirea este apoi stocată într-un depozit GitHub, corespunzător aplicației specifice în migrare. Următoarele secțiuni detaliază cerințele preliminare și pașii specifici necesari pentru implementarea acestei soluții.

Cerințe preliminare

Ar trebui să aveți următoarele:

Configurați funcția Lambda pentru a genera cod personalizat

Această funcție Lambda este o componentă cheie în automatizarea creării de configurații Terraform personalizate și conforme pentru serviciile AWS. Acesta trimite configurațiile generate direct într-un depozit GitHub desemnat, aliniindu-se cu cele mai bune practici organizaționale. Pentru codul funcției, consultați următoarele GitHub repo. Pentru a crea funcția lambda, vă rugăm să urmați instrucțiuni.

Următoarea diagramă ilustrează fluxul de lucru al funcției.

Fluxul de lucru include următorii pași:

  1. Funcția este invocată de un eveniment din stratul AVM, care conține descrierea arhitecturii.
  2. Funcția preia și folosește definițiile modulelor Terraform din baza de cunoștințe.
  3. Funcția invocă modelul Amazon Bedrock de două ori, conform recomandărilor linii directoare de inginerie prompte. Funcția aplică RAG pentru a îmbogăți promptul de intrare cu informațiile modulului Terraform, asigurându-se că codul de ieșire îndeplinește cele mai bune practici organizaționale.
    • Mai întâi, generați configurații Terraform urmând ghidurile de codificare organizaționale și includeți detaliile modulului Terraform din baza de cunoștințe. De exemplu, promptul ar putea fi: „Generează configurații Terraform pentru serviciile AWS. Urmați cele mai bune practici de securitate utilizând rolurile IAM și permisiunile cu cel mai mic privilegiu. Includeți toți parametrii necesari, cu valorile implicite. Adăugați comentarii care explică arhitectura generală și scopul fiecărei resurse.”
    • În al doilea rând, creați un fișier README detaliat. De exemplu: „Generează un README detaliat pentru configurația Terraform pe baza serviciilor AWS. Includeți secțiuni despre îmbunătățirea securității, sfaturi de optimizare a costurilor conform AWS Well-Architected Framework. De asemenea, includeți defalcarea detaliată a costurilor pentru fiecare serviciu AWS utilizat cu tarife orare și costuri totale zilnice și lunare.”
  4. Trimite configurația Terraform generată și README în depozitul GitHub, oferind trasabilitate și transparență.
  5. În cele din urmă, răspunde cu succes, inclusiv adrese URL la fișierele GitHub comise sau returnează informații detaliate despre eroare pentru depanare.

Configurați bazele de cunoștințe pentru Amazon Bedrock

Urmați acești pași pentru a vă configura baza de cunoștințe în Amazon Bedrock:

  1. Pe consola Amazon Bedrock, alegeți Bază de cunoștințe în panoul de navigare.
  2. Alege Creați o bază de cunoștințe.
  3. Introduceți un nume clar și descriptiv care să reflecte scopul bazei dvs. de cunoștințe, cum ar fi AWS Account Setup Knowledge Base For Amazon Bedrock.
  4. Atribuiți un rol IAM preconfigurat cu permisiunile necesare. De obicei, cel mai bine este să lăsați Amazon Bedrock să creeze acest rol pentru a vă asigura că are permisiunile corecte.
  5. Încărcați un fișier JSON într-un compartiment S3 cu criptarea activată pentru securitate. Acest fișier ar trebui să conțină o listă structurată de servicii AWS și module Terraform. Pentru structura JSON, utilizați următoarele exemplu din depozitul GitHub.
  6. Alegeți modelul implicit de încorporare.
  7. Permiteți Amazon Bedrock să creeze și să gestioneze magazinul de vectori pentru dvs Serviciul Amazon OpenSearch.
  8. Examinați informațiile pentru acuratețe. Acordați o atenție deosebită URI-ului compartimentului S3 și detaliilor rolului IAM.
  9. Creați-vă baza de cunoștințe.

După ce implementați și configurați aceste componente, atunci când soluția dvs. AWS Landing Zone invocă funcția Lambda, sunt generate următoarele fișiere:

  • Un fișier de configurare Terraform – Acest fișier specifică configurarea infrastructurii.
  • Un fișier README cuprinzător – Acest fișier documentează standardele de securitate încorporate în cod, confirmând că acestea se aliniază cu practicile de securitate prezentate în secțiunile inițiale. În plus, acest README include un rezumat arhitectural, sfaturi de optimizare a costurilor și o defalcare detaliată a costurilor pentru resursele descrise în configurația Terraform.

Următoarea captură de ecran arată un exemplu de fișier de configurare Terraform.

Următoarea captură de ecran arată un exemplu de fișier README.

A curăța

Parcurgeți următorii pași pentru a vă curăța resursele:

  1. Ștergeți funcția Lambda dacă nu mai este necesară.
  2. Goliți și ștergeți găleata S3 folosită pentru stocarea stării Terraform.
  3. Eliminați scripturile Terraform generate și fișierul README din depozitul GitHub.
  4. Ștergeți baza de cunoștințe dacă nu mai este nevoie.

Concluzie

Capacitățile AI generative ale Amazon Bedrock nu numai că simplifică crearea de scripturi Terraform conforme pentru implementările AWS, dar acționează și ca un ajutor esențial de învățare pentru inginerii cloud începători care fac tranziția aplicațiilor on-premise la AWS. Această abordare accelerează procesul de migrare în cloud și vă ajută să respectați cele mai bune practici. De asemenea, puteți utiliza soluția pentru a oferi valoare după migrare, îmbunătățind operațiunile zilnice, cum ar fi infrastructura continuă și optimizarea costurilor. Deși ne-am concentrat în primul rând pe Terraform în această postare, aceste principii vă pot îmbunătăți, de asemenea, implementările dvs. AWS CloudFormation, oferind o soluție versatilă pentru nevoile dvs. de infrastructură.

Sunteți gata să vă simplificați procesul de migrare în cloud cu AI generativă în Amazon Bedrock? Începe prin a explora Ghidul utilizatorului Amazon Bedrock pentru a înțelege cum poate eficientiza călătoria în cloud a organizației dvs. Pentru asistență și expertiză suplimentară, luați în considerare utilizarea Servicii profesionale AWS pentru a vă ajuta să vă simplificați călătoria de migrare în cloud și să maximizați beneficiile Amazon Bedrock.

Deblocați potențialul de adoptare rapidă, sigură și eficientă în cloud cu Amazon Bedrock. Faceți primul pas astăzi și descoperiți cum poate îmbunătăți eforturile de transformare în cloud ale organizației dvs.


Despre autor

Ebbey Thomas este specializată în elaborarea de strategii și dezvoltarea resurselor personalizate AWS Landing Zone, cu accent pe utilizarea AI generativă pentru a îmbunătăți automatizarea infrastructurii cloud. În rolul său la AWS Professional Services, expertiza lui Ebbey este esențială pentru soluțiile de arhitectură care simplifică adoptarea cloud, oferind un cadru operațional sigur și eficient pentru utilizatorii AWS. Este cunoscut pentru abordarea sa inovatoare a provocărilor cloud și angajamentul său de a promova capacitățile serviciilor cloud.

spot_img

Ultimele informații

spot_img

Chat cu noi

Bună! Cu ce ​​​​vă pot ajuta?