Predstavujeme programovateľnú AWS Landing Zone v module Terraform

Ahojte všetci! V decembri OTUS spúšťa nový kurz — Architektúra cloudových riešení. V predvečer uvedenia tohto kurzu sa s vami delíme o preklad zaujímavého materiálu na tému.

Predstavujeme programovateľnú AWS Landing Zone v module Terraform

AWS Landing Zone – je riešenie, ktoré pomáha zákazníkom rýchlo nastaviť bezpečné prostredie AWS s viacerými účtami, na základe osvedčených praktík.

Po viac ako piatich rokoch existencie naša tím v Mitoc Group neúnavne pracoval na tom, aby pomáhal veľkým organizáciám úspešne vykonávať digitálnu transformáciu a budovať alebo presúvať svoj digitálny odtlačok do cloudového prostredia AWS. Inými slovami, citujúc našich priateľov z AWS: „Naši zákazníci znovu objavujú seba s AWS.“ Je to nekonečné úsilie o reinventovanie a zjednodušenie mechaník v mene samotných zákazníkov, a AWS si skvele poradí s riešením zložitých problémov pomocou jednoduchých riešení.

Predstavujeme programovateľnú AWS Landing Zone v module Terraform
AWS Landing Zone (zdroj)

Čo je to AWS Landing Zone?

Ako uvádza informácia z oficiálneho zdroja:

AWS Landing Zone – je riešenie, ktoré pomáha zákazníkom rýchlejšie nastaviť bezpečné prostredie AWS s viacerými účtami, na základe osvedčených praktík AWS. Pri veľkom množstve možností môže nastavenie prostredia s viacerými účtami trvať značný čas a zahŕňať nastavenie množstva účtov a služieb, pričom si vyžaduje hlboké pochopenie fungovania služieb AWS.

Riešenie AWS Landing Zone významne znížilo zložitosti a konzistenciu podobných návrhových šablón, ktoré sa poskytujú rôznym zákazníkom. Na druhej strane, náš tím musel prestavať niektoré komponenty CloudFormation ako komponenty Terraform, aby ich mohol neskôr použiť na automatizáciu.

Preto sme sa pýtali, prečo nepostaviť celé riešenie AWS Landing Zone v Terraform? Môžeme to urobiť a vyrieši to problémy našich zákazníkov? Spoiler: vyrieši a už rieši! 🙂

Kedy by ste nemali používať AWS Landing Zone?

Ak sa zaoberáte bežnými cloudovými službami a cloudovými zdrojmi v rámci jedného alebo dvoch účtov AWS, môžu sa tieto opatrenia ukázať ako nadbytočné. Tí, ktorí k tomuto bodu nepatria, môžu pokračovať v čítaní 🙂

Na čo si dať pozor pred začiatkom práce?

Mnohé veľké organizácie, s ktorými sme spolupracovali, už majú nejakú stratégiu používania cloudových technológií. Spoločnosti sa usilujú o úspešné zavedenie cloudových služieb, pričom nemajú jasnú víziu a formulované očakávania. Prosím, vyhraďte si čas na to, aby ste si ujasnili svoju stratégiu a pochopili, ako sa do nej zapadá AWS.

Pri určovaní stratégie aktívne úspešní klienti AWS Landing Zone zdôrazňujú nasledujúce:

  • Jednoduchá automatizácia nie je variant. Preferovaná je natívna cloudová automatizácia.
  • Tímy opakovane používajú rovnaké mechanizmy s rovnakým súborom nástrojov na prípravu cloudových zdrojov. Lepšie je použiť Terraform.
  • Najproduktívnejší používatelia cloudových služieb majú možnosť vytvárať znovupoužiteľné procesy a poskytovať ich ako znovupoužiteľné služby namiesto znovupoužiteľného kódu. Preferované je použitie serverless architektúry.

Predstavujeme modul Terraform pre AWS Landing Zone

Po niekoľkých mesiacoch intenzívnej práce s potešením predstavujem vám modul Terraform pre AWS Landing Zone. Zdrojový kód uchovávaný na GitHub, a stabilné verzie vydania sú publikované na Terraform Module Registry.

Aby ste začali, jednoducho zahrňte main.tf do svojho kódu:

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}"
}

Poznámka: Nezabudnite zahrnúť variables.tf a všetko, čo môžete potrebovať z outputs.tf.

Aby sme uľahčili pochopenie, pridali sme predvolené hodnoty do 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"
  [...]
}

To znamená, že pri používaní tohto modulu terraform budete potrebovať:

  1. Zmeniť hodnoty account_id a region na vaše vlastné, ktoré zodpovedajú údajom v AWS Organization;
  2. Zmeniť hodnoty landing_zone_components na tie, ktoré zodpovedajú vášmu scenáru použitia AWS Landing Zone;
  3. Upraviť s3://terraform-aws-landing-zone/mycompany na váš blok S3 a prefix kľúča S3, kde budete uchovávať súbory .tfvars (alebo absolútnu cestu k súborom .tfvars vo vašej miestnej úložisku).

Tento modul môže obsahovať desiatky, stovky alebo tisíce nasadzovaných komponentov, no nie všetky musia a budú nasadené. Počas behu budú komponenty, ktoré nie sú súčasťou mapy premenných, landing_zone_components ignorované.

Záver

Sme veľmi radi a hrdí, že zdieľame výsledky našich snáh, ktoré pomáhajú klientom vytvárať natívnu cloudovú automatizáciu. Modul Terraform pre AWS Landing Zone je ďalším riešením, ktoré organizáciám pomáha rýchlejšie nastaviť bezpečné prostredie AWS s viacerými účtami, založené na osvedčených praktikách AWS. Dobre vieme, že AWS sa vyvíja neuveriteľnou rýchlosťou, a usilujeme sa tiež rýchlo vylepšovať naše terraformové riešenie, ktoré pokrýva všetky základy a integruje sa s ďalšími pracovnými riešeniami AWS.

A to je všetko. Tešíme sa na vaše komentáre a pozývame vás na bezplatný webinár v rámci ktorého preskúmame návrh architektúry domény Cloud Landing Zone a objasníme architektonické šablóny hlavných domén..

Zdroj: habr.com

Kúpte si spoľahlivý hosting pre webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Kúpte si spoľahlivý hosting pre webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster