Vi præsenterer en programmerbar AWS Landing Zone i Terraform-modulet

Hej alle! I december lancerer OTUS et nyt kursus — Cloud Solution Architecture. Forud for opstarten af dette kursus deler vi en oversættelse af interessant materiale om emnet.

Vi præsenterer en programmerbar AWS Landing Zone i Terraform-modulet

AWS Landing Zone – er en løsning, der hjælper kunder med hurtigt at opsætte et sikkert AWS-miljø med flere konti, baseret på bedste praksis.

I løbet af mere end fem års eksistens har vores team i Mitoc Group utrætteligt arbejdet på at hjælpe store organisationer med at gennemføre digital transformation og bygge eller migrere deres digitale tilstedeværelse til AWS. Med andre ord, citerer vi vores venner fra AWS: "Vores kunder opdager sig selv på ny med AWS." Dette er en vedvarende indsats for at genopfinde og forenkle mekanikkerne på vegne af kunderne selv, og AWS klarer det fremragende med at løse komplekse problemer med enkle, letforståelige løsninger.

Vi præsenterer en programmerbar AWS Landing Zone i Terraform-modulet
AWS Landing Zone (kilde)

Hvad er AWS Landing Zone?

Som angivet i oplysningerne fra den officielle kilde:

AWS Landing Zone er en løsning, der hjælper kunder med hurtigere at opsætte et sikkert AWS-miljø med flere konti, baseret på AWS's bedste praksis. Med mange muligheder kan opsætning af et miljø med flere konti tage en betydelig tid samt involvere opsætning af mange konti og tjenester og kræve en dyb forståelse af, hvordan AWS-tjenester fungerer.

AWS Landing Zone-løsningen har i høj grad reduceret kompleksiteten og konsistensen af lignende designskabeloner, der tilbydes forskellige kunder. På den anden side måtte vores team omkonfigurere nogle CloudFormation-komponenter som Terraform-komponenter for at bruge dem videre til automatisering.

Derfor spurgte vi os selv, hvorfor ikke bygge hele AWS Landing Zone-løsningen i Terraform? Kan vi gøre det, og vil det løse vores kunders problemer? Spoiler: det vil og gør allerede! 🙂

Hvornår skal man ikke bruge AWS Landing Zone?

Hvis du har at gøre med almindelige cloud-tjenester og cloud-ressourcer i én eller to AWS-konti, kan disse foranstaltninger vise sig at være overflødige. Alle der ikke falder ind under dette punkt, kan fortsætte læsningen 🙂

Hvad skal man overveje før man går i gang?

Mange store organisationer, som vi har arbejdet med, har allerede en eller anden strategi for brug af cloud-teknologier. Virksomheder kæmper for vellykket implementering af cloud-tjenester uden at have et klart mål og formulerede forventninger. Tag venligst tid til at fastlægge din strategi og forstå, hvordan AWS passer ind i den.

Når man fastlægger strategien, fokuserer succesfulde kunder af AWS Landing Zone aktivt på følgende:

  • Bare automatisering er ikke en mulighed. Nativ cloud-automatisering foretrækkes.
  • Teams bruger konsekvent de samme mekanismer med det samme sæt værktøjer til at forberede cloud-ressourcer. Det er bedre at bruge Terraform.
  • De mest produktive brugere af cloud-tjenester har mulighed for at skabe genanvendelige processer og tilbyde dem som genanvendelige tjenester i stedet for genanvendelig kode. Brugen af serverless arkitektur er at foretrække.

Vi præsenterer Terraform-modulet til AWS Landing Zone

Efter flere måneders hårdt arbejde er jeg glad for at præsentere for dig Terraform-modulet til AWS Landing Zone. Kildekode opbevaret på GitHub, og stabile versionsudgivelser udgives på Terraform Module Registry.

For at komme i gang skal du blot inkludere main.tf i din kode:

module "landing_zone" {
  source     = "TerraHubCorp/landing-zone/aws"
  version    = "0.0.6"
  root_path  = "${path.module}"
  account_id = "${var.account_id}"
  region     = "${var.region}"
  landing_zone_components = "${var.landing_zone_components}"
}

Bemærk: Sørg for at inkludere variables.tf og alt, hvad du måtte få brug for fra outputs.tf.

For at lette forståelsen har vi tilføjet standardværdier i terraform.tfvars:

account_id = "123456789012"
region = "us-east-1"
landing_zone_components = {
  landing_zone_pipeline_s3_bucket = "s3://terraform-aws-landing-zone/mycompany/landing_zone_pipeline_s3_bucket/default.tfvars"
  [...]
}

Dette betyder, at når du bruger dette modul terraform skal du:

  1. Ændre værdierne account_id og region til dine egne, der svarer til dataene i AWS Organization;
  2. Ændre værdierne landing_zone_components til dem, der svarer til dit brugsscenarie for AWS Landing Zone;
  3. Ændre s3://terraform-aws-landing-zone/mycompany til din blok S3 og nøglepræfiks S3, hvor du vil gemme filer .tfvars (eller den absolutte sti til filerne .tfvars i dit lokale lager).

Denne modul kan have dusinvis, hundreder eller tusindvis af implementerbare komponenter, men ikke alle af dem skal og vil blive implementeret. Under kørsel vil komponenter, der ikke er en del af variabelkortet, landing_zone_components blive ignoreret.

Konklusion

Vi er meget glade og stolte over at dele frugterne af vores bestræbelser, der hjælper kunder med at skabe nativen cloud-automatisering. Terraform-modulet til AWS Landing Zone er endnu en løsning, der hjælper organisationer med hurtigere at opsætte et sikkert AWS-miljø med flere konti baseret på AWS's bedste praksis. Vi ved, at AWS udvikler sig ekstremt hurtigt, og vi stræber efter også at videreudvikle terraform-løsningen, der dækker alle grundlæggende aspekter samt integrerer med andre funktionelle AWS-løsninger.

Det er alt for nu. Vi ser frem til jeres kommentarer og inviterer til et gratis webinar hvor vi vil undersøge designet af Cloud Landing Zone-domænearkitekturen og se på arkitekturmaler for de primære domæner..

Kilde: habr.com

Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere 🔥 Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere | ProHoster