Generativ dataintelligens

Generer tilpassede, kompatible applikations IaC-scripts til AWS Landing Zone ved hjælp af Amazon Bedrock | Amazon Web Services

Dato:

Migrering til skyen er et vigtigt skridt for moderne organisationer, der sigter på at udnytte fleksibiliteten og omfanget af cloud-ressourcer. Værktøjer som Terraform og AWS CloudFormation er afgørende for sådanne overgange, og tilbyder infrastruktur som kode (IaC)-funktioner, der definerer og administrerer komplekse cloud-miljøer med præcision. På trods af dets fordele kan IaC's læringskurve og kompleksiteten i at overholde din organisations og branchespecifikke overholdelses- og sikkerhedsstandarder dog bremse din cloud-adoptionsrejse. Organisationer imødegår typisk disse forhindringer ved at investere i omfattende træningsprogrammer eller ansætte specialiseret personale, hvilket ofte fører til øgede omkostninger og forsinkede migreringstider.

Generativ kunstig intelligens (AI) med Amazonas grundfjeld løser direkte disse udfordringer. Amazon Bedrock er en fuldt administreret tjeneste, der tilbyder et udvalg af højtydende fundamentmodeller (FM'er) fra førende AI-virksomheder som AI21 Labs, Anthropic, Cohere, Meta, Stability AI og Amazon med en enkelt API, sammen med et bredt sæt af evner til at bygge generative AI-applikationer med sikkerhed, privatliv og ansvarlig AI. Amazon Bedrock giver teams mulighed for at generere Terraform- og CloudFormation-scripts, der er skræddersyet til organisatoriske behov, mens de problemfrit integrerer compliance og bedste praksis for sikkerhed. Traditionelt ville cloud-ingeniører, der lærer IaC, manuelt gennemsøge dokumentation og bedste praksis for at skrive kompatible IaC-scripts. Med Amazon Bedrock kan teams indtaste arkitektoniske beskrivelser på højt niveau og bruge generativ AI til at generere en baseline-konfiguration af Terraform-scripts. Disse genererede scripts er skræddersyet til at opfylde din organisations unikke krav, samtidig med at de overholder branchestandarder for sikkerhed og overholdelse. Disse scripts fungerer som et grundlæggende udgangspunkt, der kræver yderligere forfining og validering for at sikre, at de opfylder produktionsniveaustandarder.

Denne løsning accelererer ikke kun migreringsprocessen, men giver også en standardiseret og sikker cloud-infrastruktur. Derudover tilbyder den begyndere cloud-ingeniører indledende script-udkast som standardskabeloner at bygge videre på, hvilket letter deres IaC-læringsrejse.

Når du navigerer i kompleksiteten af ​​cloud-migrering, er behovet for et struktureret, sikkert og kompatibelt miljø altafgørende. AWS landingszone imødekommer dette behov ved at tilbyde en standardiseret tilgang til implementering af AWS-ressourcer. Dette sikrer, at dit cloud-fundament er bygget i overensstemmelse med AWS's bedste praksis fra starten. Med AWS Landing Zone eliminerer du gætteri i sikkerhedskonfigurationer, ressourceforsyning og kontoadministration. Det er især fordelagtigt for organisationer, der ønsker at skalere uden at gå på kompromis med styring eller kontrol, hvilket giver en klar vej til et robust og effektivt cloud-setup.

I dette indlæg viser vi dig, hvordan du genererer tilpassede, kompatible IaC-scripts til AWS Landing Zone ved hjælp af Amazon Bedrock.

AWS Landing Zone-arkitektur i forbindelse med skymigrering

AWS Landing Zone kan hjælpe dig med at opsætte et sikkert AWS-miljø med flere konti baseret på bedste praksis fra AWS. Det giver et basismiljø til at komme i gang med en multi-konto arkitektur, automatisere opsætningen af ​​nye konti og centralisere overholdelse, sikkerhed og identitetsstyring. Det følgende er et eksempel på en tilpasset Terraform-baseret AWS Landing Zone-løsning, hvor hver applikation ligger på sin egen AWS-konto.

Arbejdsgangen på højt niveau omfatter følgende komponenter:

  • Modulforsyning – Forskellige platformsteams på tværs af forskellige domæner, såsom databaser, containere, datastyring, netværk og sikkerhed, udvikler og udgiver certificerede eller tilpassede moduler. Disse leveres gennem pipelines til et Terraform privat modulregister, som vedligeholdes af organisationen med henblik på konsistens og standardisering.
  • Kontoautomatlag – Kontoautomatlaget (AVM) bruger enten AWS kontroltårn, AWS Account Factory til Terraform (AFT), eller en tilpasset landingszone-løsning til at sælge konti. I dette indlæg omtaler vi disse løsninger samlet som AVM-laget. Når applikationsejere indsender en anmodning til AVM-laget, behandler det inputparametrene fra anmodningen for at klargøre en mål-AWS-konto. Denne konto leveres derefter med skræddersyede infrastrukturkomponenter gennem AVM-tilpasninger, som omfatter AWS Control Tower-tilpasninger or AFT-tilpasninger.
  • Applikationsinfrastrukturlag – I dette lag implementerer applikationsteam deres infrastrukturkomponenter i de leverede AWS-konti. Dette opnås ved at skrive Terraform-kode i et applikationsspecifikt lager. Terraform-koden kalder på de moduler, der tidligere er offentliggjort til Terraforms private registreringsdatabase af platformsteamene.

Overvinde lokale IaC-migreringsudfordringer med generativ AI

Teams, der vedligeholder applikationer på stedet, støder ofte på en indlæringskurve med Terraform, et nøgleværktøj til IaC i AWS-miljøer. Denne kvalifikationskløft kan være en betydelig hindring i cloud-migreringsindsatsen. Amazon Bedrock spiller med sine generative AI-kapaciteter en væsentlig rolle i at afbøde denne udfordring. Det letter automatiseringen af ​​Terraform-kodeoprettelse for applikationsinfrastrukturlaget, hvilket giver teams med begrænset Terraform-erfaring mulighed for at foretage en effektiv overgang til AWS.

Amazon Bedrock genererer Terraform-kode fra arkitektoniske beskrivelser. Den genererede kode er tilpasset og standardiseret baseret på organisatorisk bedste praksis, sikkerhed og regulatoriske retningslinjer. Denne standardisering er muliggjort ved at bruge avancerede prompter i forbindelse med Vidensbaser for Amazon Bedrock, som gemmer oplysninger om organisationsspecifikke Terraform-moduler. Denne løsning bruger Retrieval Augmented Generation (RAG) til at berige inputprompten til Amazon Bedrock med detaljer fra videnbasen, hvilket sikrer, at Terraform-output-konfigurationen og README-indhold er i overensstemmelse med din organisations Terraform-best practices og retningslinjer.

Følgende diagram illustrerer denne arkitektur.

Arbejdsgangen består af følgende trin:

  1. Processen begynder med kontosalg, hvor applikationsejere indsender en anmodning om en ny AWS-konto. Dette påkalder AVM, som behandler anmodningsparametrene for at klargøre mål-AWS-kontoen.
  2. En arkitekturbeskrivelse for en applikation, der er beregnet til migrering, sendes som et af inputtene til AVM-laget.
  3. Når kontoen er klargjort, anvendes AVM-tilpasninger. Dette kan bl.a AWS Control Tower-tilpasninger or AFT-tilpasninger der opsætter kontoen med de nødvendige infrastrukturkomponenter og konfigurationer i overensstemmelse med organisationens politikker.
  4. Sideløbende påkalder AVM-laget en Lambda-funktion for at generere Terraform-kode. Denne funktion beriger arkitekturbeskrivelsen med en tilpasset prompt og bruger RAG til yderligere at forbedre prompten med organisationsspecifikke kodningsvejledninger fra Knowledge Base for Bedrock. Denne vidensbase inkluderer skræddersyet bedste praksis, sikkerhedsværn og retningslinjer, der er specifikke for organisationen. Se en illustrativ eksempel af organisationsspecifikke Terraform-modulspecifikationer og retningslinjer uploadet til Knowledge Base.
  5. Før implementeringen bliver det første udkast til Terraform-koden grundigt gennemgået af cloud-ingeniører eller et automatiseret kodegennemgangssystem for at bekræfte, at det opfylder alle tekniske standarder og overensstemmelsesstandarder.
  6. De gennemgåede og opdaterede Terraform-scripts bruges derefter til at implementere infrastrukturkomponenter i den nyligt klargjorte AWS-konto, opsætning af computer-, lager- og netværksressourcer, der kræves til applikationen.

Løsningsoversigt

AWS Landing Zone-implementeringen bruger en Lambda-funktion til at generere Terraform-scripts fra arkitektoniske input. Denne funktion, som er central for driften, oversætter disse input til kompatibel kode ved hjælp af Amazon Bedrock og Knowledge Bases for Amazon Bedrock. Outputtet gemmes derefter i et GitHub-lager, svarende til den specifikke applikation i migreringen. De følgende afsnit beskriver de forudsætninger og specifikke trin, der er nødvendige for at implementere denne løsning.

Forudsætninger

Du skal have følgende:

Konfigurer Lambda-funktionen til at generere brugerdefineret kode

Denne Lambda-funktion er en nøglekomponent i at automatisere oprettelsen af ​​tilpassede, kompatible Terraform-konfigurationer til AWS-tjenester. Det forpligter de genererede konfigurationer direkte til et udpeget GitHub-lager, der er tilpasset organisatorisk bedste praksis. For funktionskoden henvises til følgende GitHub repo. For at oprette lambda-funktion, følg venligst anvisninger.

Følgende diagram illustrerer funktionens arbejdsgang.

Arbejdsgangen omfatter følgende trin:

  1. Funktionen påkaldes af en hændelse fra AVM-laget, der indeholder arkitekturbeskrivelsen.
  2. Funktionen henter og bruger Terraform-moduldefinitioner fra videnbasen.
  3. Funktionen kalder Amazon Bedrock-modellen to gange, efter anbefalet hurtige tekniske retningslinjer. Funktionen anvender RAG for at berige input-prompten med Terraform-moduloplysningerne, hvilket sikrer, at outputkoden opfylder organisatorisk bedste praksis.
    • Generer først Terraform-konfigurationer efter organisatoriske kodningsretningslinjer og medtag Terraform-moduldetaljer fra videnbasen. For eksempel kunne prompten være: "Generer Terraform-konfigurationer til AWS-tjenester. Følg bedste praksis for sikkerhed ved at bruge IAM-roller og mindste privilegerede tilladelser. Inkluder alle nødvendige parametre med standardværdier. Tilføj kommentarer, der forklarer den overordnede arkitektur og formålet med hver ressource."
    • For det andet skal du oprette en detaljeret README-fil. For eksempel: "Generer en detaljeret README for Terraform-konfigurationen baseret på AWS-tjenester. Inkluder sektioner om sikkerhedsforbedringer, omkostningsoptimeringstips efter AWS Well-Architected Framework. Inkluder også detaljeret omkostningsopdeling for hver AWS-tjeneste, der bruges med timepriser og samlede daglige og månedlige omkostninger."
  4. Den forpligter den genererede Terraform-konfiguration og README til GitHub-lageret, hvilket giver sporbarhed og gennemsigtighed.
  5. Endelig reagerer det med succes, herunder URL'er til de forpligtede GitHub-filer, eller returnerer detaljerede fejloplysninger til fejlfinding.

Konfigurer vidensbaser til Amazon Bedrock

Følg disse trin for at opsætte din videnbase i Amazon Bedrock:

  1. Vælg på Amazon Bedrock-konsollen Vidensdatabase i navigationsruden.
  2. Vælg Skab vidensbase.
  3. Indtast et klart og beskrivende navn, der afspejler formålet med din videnbase, såsom AWS Account Setup Knowledge Base For Amazon Bedrock.
  4. Tildel en forudkonfigureret IAM-rolle med de nødvendige tilladelser. Det er typisk bedst at lade Amazon Bedrock oprette denne rolle for dig for at sikre, at den har de korrekte tilladelser.
  5. Upload en JSON-fil til en S3-bøtte med kryptering aktiveret for sikkerhed. Denne fil bør indeholde en struktureret liste over AWS-tjenester og Terraform-moduler. Brug følgende til JSON-strukturen eksempel fra GitHub-lageret.
  6. Vælg standardindlejringsmodellen.
  7. Tillad Amazon Bedrock at oprette og administrere vektorbutikken for dig i Amazon OpenSearch Service.
  8. Gennemgå oplysningerne for nøjagtighed. Vær særlig opmærksom på S3 bucket URI og IAM rolledetaljer.
  9. Skab din vidensbase.

Når du har implementeret og konfigureret disse komponenter, når din AWS Landing Zone-løsning aktiverer Lambda-funktionen, genereres følgende filer:

  • En Terraform-konfigurationsfil – Denne fil specificerer infrastrukturopsætningen.
  • En omfattende README-fil – Denne fil dokumenterer de sikkerhedsstandarder, der er indlejret i koden, og bekræfter, at de stemmer overens med den sikkerhedspraksis, der er beskrevet i de indledende afsnit. Derudover inkluderer denne README en arkitektonisk oversigt, omkostningsoptimeringstip og en detaljeret omkostningsopdeling for de ressourcer, der er beskrevet i Terraform-konfigurationen.

Følgende skærmbillede viser et eksempel på Terraform-konfigurationsfilen.

Følgende skærmbillede viser et eksempel på README-filen.

Ryd op

Udfør følgende trin for at rydde op i dine ressourcer:

  1. Slet Lambda-funktionen, hvis den ikke længere er påkrævet.
  2. Tøm og slet S3-spanden, der bruges til Terraform-tilstandsopbevaring.
  3. Fjern de genererede Terraform-scripts og README-filen fra GitHub-repoen.
  4. Slet videnbasen hvis det ikke længere er nødvendigt.

Konklusion

Amazon Bedrocks generative AI-egenskaber strømliner ikke kun oprettelsen af ​​kompatible Terraform-scripts til AWS-implementeringer, men fungerer også som en central læringshjælp for nybegyndere cloud-ingeniører, der overfører lokale applikationer til AWS. Denne tilgang fremskynder cloud-migreringsprocessen og hjælper dig med at overholde bedste praksis. Du kan også bruge løsningen til at give værdi efter migreringen, hvilket forbedrer den daglige drift såsom løbende infrastruktur og omkostningsoptimering. Selvom vi primært fokuserede på Terraform i dette indlæg, kan disse principper også forbedre dine AWS CloudFormation-implementeringer, hvilket giver en alsidig løsning til dine infrastrukturbehov.

Klar til at forenkle din cloud-migreringsproces med generativ kunstig intelligens i Amazon Bedrock? Begynd med at udforske Amazon Bedrock brugervejledning at forstå, hvordan det kan strømline din organisations cloud-rejse. Overvej at bruge for yderligere hjælp og ekspertise AWS Professional Services for at hjælpe dig med at strømline din cloud-migreringsrejse og maksimere fordelene ved Amazon Bedrock.

Frigør potentialet for hurtig, sikker og effektiv cloud-adoption med Amazon Bedrock. Tag det første skridt i dag og opdag, hvordan det kan forbedre din organisations bestræbelser på at transformere cloud.


Om forfatteren

Ebbey Thomas har specialiseret sig i strategilægning og udvikling af tilpassede AWS Landing Zone-ressourcer med fokus på at bruge generativ AI til at forbedre cloud-infrastrukturautomatisering. I sin rolle hos AWS Professional Services er Ebbeys ekspertise central for arkitekturløsninger, der strømliner cloud-adoption og giver en sikker og effektiv operationel ramme for AWS-brugere. Han er kendt for sin innovative tilgang til cloud-udfordringer og sit engagement i at drive cloud-tjenesternes muligheder frem.

spot_img

Seneste efterretninger

spot_img

Chat med os

Hej! Hvordan kan jeg hjælpe dig?