Esittelyssä ohjelmoitava AWS Landing Zone Terraform-moduulissa

Hei kaikki! Joulukuussa OTUS käynnistää uuden kurssin - Pilviratkaisuarkkitehtuuri. Tämän kurssin alkamista odotellessa jaamme kanssasi käännöksen mielenkiintoisesta materiaalista aiheesta.

Esittelyssä ohjelmoitava AWS Landing Zone Terraform-moduulissa

AWS laskeutumisalue on ratkaisu, joka auttaa asiakkaita luomaan nopeasti suojatun usean tilin AWS-ympäristön parhaiden käytäntöjen perusteella.

Mitoc Groupin tiimimme on yli viiden vuoden ajan työskennellyt väsymättä auttaakseen suuria organisaatioita onnistuneesti muuttamaan digitaalisesti ja rakentamaan tai siirtämään digitaalisen jalanjälkensä AWS-pilveen. Toisin sanoen lainatakseni ystäviämme AWS:ssä: "Asiakkaamme keksivät itsensä uudelleen AWS:n avulla." Mekaniikan keksiminen ja yksinkertaistaminen asiakkaiden itsensä puolesta on loputonta työtä, ja AWS tekee hienoa työtä monimutkaisten ongelmien ratkaisemisessa helposti opittavilla ratkaisuilla.

Esittelyssä ohjelmoitava AWS Landing Zone Terraform-moduulissa
AWS Landing Zone (lähde)

Mikä on AWS Landing Zone?

Virallisen lähteen tietojen mukaan:

AWS Landing Zone on ratkaisu, joka auttaa asiakkaita luomaan nopeasti turvallisen AWS-ympäristön useilla tileillä AWS:n parhaiden käytäntöjen perusteella. Monen vaihtoehdon ansiosta usean tilin ympäristön luominen voi olla aikaa vievää, edellyttää useiden tilien ja palveluiden määrittämistä ja edellyttää syvällistä AWS-palvelujen ymmärtämistä.

AWS Landing Zone on vähentänyt merkittävästi eri asiakkaille toimitettujen samanlaisten suunnittelumallien monimutkaisuutta ja johdonmukaisuutta. Toisaalta tiimimme joutui konfiguroimaan joitakin CloudFormation-komponentteja uudelleen Terraform-komponenteiksi voidakseen käyttää niitä edelleen automatisointiin.

Joten kysyimme itseltämme, miksi emme rakentaisi koko AWS Landing Zone -ratkaisua Terraformiin? Pystymmekö tähän ja ratkaiseeko se asiakkaidemme ongelmat? Spoileri: se tulee ja on jo ratkaiseva! 🙂

Milloin sinun ei pitäisi käyttää AWS Landing Zonea?

Jos käsittelet tavallisia pilvipalveluita ja pilviresursseja yhdellä tai kahdella AWS-tilillä, nämä toimenpiteet voivat olla ylivoimaisia. Jokainen, joka ei liity tähän asiaan, voi jatkaa lukemista :)

Mitä tulee ottaa huomioon ennen työn aloittamista?

Monilla suurilla organisaatioilla, joiden kanssa olemme työskennelleet, on jo jonkinlainen pilvistrategia käytössä. Yrityksillä on vaikeuksia toteuttaa pilvipalveluita menestyksekkäästi ilman selkeää visiota ja odotuksia. Käytä aikaa strategiasi määrittelemiseen ja ymmärrä, kuinka AWS sopii siihen.

Strategiaa määrittäessään menestyneet AWS Landing Zone -asiakkaat keskittyvät aktiivisesti seuraaviin asioihin:

  • Automaatio ei yksinkertaisesti ole vaihtoehto. Pilvipohjainen automaatio on edullinen.
  • Tiimit käyttävät jatkuvasti samaa mekaniikkaa ja samoja työkaluja pilviresurssien tarjoamiseen. On parempi käyttää Terraformia.
  • Tuottavimmilla pilvikäyttäjillä on mahdollisuus luoda uudelleenkäytettäviä prosesseja ja toimittaa ne uudelleenkäytettävinä palveluina uudelleenkäytettävän koodin sijaan. Palvelimeton arkkitehtuuri on edullinen.

Esittelyssä Terraform-moduuli AWS Landing Zone -alueelle

Useiden kuukausien kovan työn jälkeen minulla on ilo esitellä teille Terraform-moduuli AWS Landing Zone -alueelle. Lähdekoodi on tallennettu GitHubiin ja vakaat julkaisuversiot julkaistu Terraform Module -rekisterissä.

Aloita yksinkertaisesti käynnistämällä main.tf koodiisi:

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

Huomautus: Muista ottaa käyttöön variables.tf ja kaikki mitä saatat tarvita outputs.tf.

Ymmärtämisen helpottamiseksi olemme lisänneet oletusarvoja 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"
  [...]
}

Tämä tarkoittaa, että tätä moduulia käytettäessä terraform tarvitset:

  1. Muuttaa arvoja account_id и region omaan, mikä vastaa AWS-organisaation tietoja;
  2. Muuttaa arvoja landing_zone_components ne, jotka vastaavat AWS Landing Zone -käyttötapaustasi;
  3. muuttaa s3://terraform-aws-landing-zone/mycompany lohkollesi S3 ja avaimen etuliite S3missä tallennat tiedostot .tfvars (tai tiedostojen absoluuttinen polku .tfvars paikallisessa tallennustilassasi).

Tässä moduulissa voi olla kymmeniä, satoja tai tuhansia käyttöönotettavia komponentteja, mutta kaikkia niitä ei tule ottaa käyttöön tai niitä ei tule ottaa käyttöön. Suorituksen aikana komponentit, jotka eivät kuulu muuttujakarttaan landing_zone_components jätetään huomioimatta.

Johtopäätös

Olemme innoissamme ja ylpeitä voidessamme jakaa hedelmät ponnisteluistamme auttaaksemme asiakkaita rakentamaan pilvipohjaista automaatiota. Terraform-moduuli AWS Landing Zonelle on toinen ratkaisu, joka auttaa organisaatioita luomaan nopeasti turvallisen AWS-ympäristön useilla tileillä AWS:n parhaiden käytäntöjen perusteella. Tiedämme hyvin, että AWS kasvaa älyttömän nopeasti, ja olemme sitoutuneet kehittämään nopeasti terraform-ratkaisun, joka kattaa kaikki pohjat ja integroituu myös muihin AWS-tuotantoratkaisuihin.

Siinä kaikki. Odotamme kommenttejasi ja kutsumme sinut mukaan ilmainen verkkoseminaari jonka sisällä me Tutkitaan Cloud Landing Zone -verkkoaluearkkitehtuurin suunnittelua ja pohditaan pääverkkotunnusten arkkitehtuurimalleja.

Lähde: will.com

Lisää kommentti