Wir präsentieren die programmierbare AWS Landing Zone im Terraform-Modul

Hallo zusammen! Im Dezember startet OTUS einen neuen Kurs — Cloud Solution Architecture. Vor dem Start dieses Kurses teilen wir mit Ihnen eine Übersetzung interessanter Materialien zu diesem Thema.

Wir präsentieren die programmierbare AWS Landing Zone im Terraform-Modul

AWS Landing Zone ist eine Lösung, die es Kunden ermöglicht, schnell eine sichere AWS-Umgebung mit mehreren Konten einzurichten, basierend auf den besten Praktiken.

In über fünf Jahren hat unser Team von Mitoc Group unermüdlich daran gearbeitet, großen Organisationen zu helfen, erfolgreich digitale Transformationen durchzuführen und ihre digitale Präsenz in die AWS-Cloud zu bauen oder zu migrieren. Anders gesagt, um unsere Freunde von AWS zu zitieren: „Unsere Kunden entdecken sich mit AWS neu“. Es sind unendliche Bemühungen, die Mechaniken im Namen der Kunden neu zu erfinden und zu vereinfachen, und AWS hat großartige Lösungen für komplexe Probleme mit einfach zu verstehenden Lösungen.

Wir präsentieren die programmierbare AWS Landing Zone im Terraform-Modul
AWS Landing Zone (Quelle)

Was ist AWS Landing Zone?

Wie aus offiziellen Quellen hervorgeht:

AWS Landing Zone ist eine Lösung, die es Kunden ermöglicht, schneller eine sichere AWS-Umgebung mit mehreren Konten einzurichten, basierend auf den besten Praktiken von AWS. Bei der Vielzahl an Optionen kann die Einrichtung einer Umgebung mit mehreren Konten erheblich Zeit in Anspruch nehmen und umfasst die Konfiguration vieler Konten und Dienste, wodurch ein tiefes Verständnis der AWS-Dienste erforderlich ist.

Die AWS Landing Zone-Lösung hat die Komplexität und Konsistenz ähnlicher Designvorlagen, die verschiedenen Kunden bereitgestellt werden, erheblich reduziert. Auf der anderen Seite musste unser Team einige CloudFormation-Komponenten als Terraform-Komponenten neu konfigurieren, um sie weiterhin zur Automatisierung zu verwenden.

Deshalb haben wir uns gefragt, warum wir nicht die gesamte AWS Landing Zone-Lösung in Terraform aufbauen sollten? Können wir das machen und wird es die Probleme unserer Kunden lösen? Spoiler: Ja, es wird und löst es bereits! 🙂

Wann sollte man AWS Landing Zone nicht verwenden?

Wenn Sie es mit regulären Cloud-Diensten und Cloud-Ressourcen innerhalb eines oder zweier AWS-Konten zu tun haben, können diese Maßnahmen übertrieben sein. Alle, die nicht unter diesen Punkt fallen, können weiterlesen 🙂

Was sollten Sie beachten, bevor Sie beginnen?

Viele große Organisationen, mit denen wir zusammengearbeitet haben, verfügen bereits über eine gewisse Strategie zur Nutzung von Cloud-Technologien. Die Unternehmen kämpfen um eine erfolgreiche Implementierung von Cloud-Diensten, ohne eine klare Vision und formulierte Erwartungen zu haben. Bitte nehmen Sie sich die Zeit, um Ihre Strategie zu definieren und zu verstehen, wie AWS dabei passt.

Bei der Festlegung der Strategie legen erfolgreiche Kunden der AWS Landing Zone aktiv Wert auf Folgendes:

  • Einfache Automatisierung ist keine Option. Native Cloud-Automatisierung wird bevorzugt.
  • Die Teams verwenden konsequent dieselben Mechaniken mit demselben Satz an Werkzeugen zur Vorbereitung der Cloud-Ressourcen. Terraform wird empfohlen.
  • Die produktivsten Nutzer von Cloud-Diensten haben die Möglichkeit, wiederverwendbare Prozesse zu erstellen und diese als wiederverwendbare Dienste anstelle von wiederverwendbarem Code anzubieten. Bevorzugt wird der Einsatz einer serverlosen Architektur.

Hiermit präsentieren wir das Terraform-Modul für die AWS Landing Zone

Nach mehreren Monaten harter Arbeit freue ich mich, Ihnen vorzustellen das Terraform-Modul für die AWS Landing Zone. Quellcode das auf GitHub gespeichert ist, und stabile Versionsfreigaben werden im Terraform Module Registry veröffentlicht.

Um loszulegen, fügen Sie einfach main.tf in Ihren Code ein:

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

Hinweis: Stellen Sie sicher, dass Sie variables.tf und alles, was Sie möglicherweise aus outputs.tf.

Um das Verständnis zu erleichtern, haben wir Standardwerte in 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"
  [...]
}

Das bedeutet, dass Sie bei der Verwendung dieses Moduls terraform folgendes anpassen müssen:

  1. Ändern Sie die Werte von account_id und region auf Ihre eigenen, die mit den Daten in der AWS-Organisation übereinstimmen;
  2. Ändern Sie die Werte von landing_zone_components auf die, die zu Ihrem Anwendungsfall für die AWS Landing Zone passen;
  3. Ändern s3://terraform-aws-landing-zone/mycompany auf Ihr Block S3 und den Schlüssel-Präfix, S3wo Sie die Dateien .tfvars (oder den absoluten Pfad zu den Dateien .tfvars in Ihrem lokalen Speicher) aufbewahren werden.

Dieses Modul kann Dutzende, Hunderte oder Tausende von bereitstellbaren Komponenten enthalten, aber nicht alle davon müssen bereitgestellt werden und werden es auch nicht. Während der Ausführung werden Komponenten, die nicht Teil der Variablenkarte sind. landing_zone_components werden ignoriert.

Fazit

Wir freuen uns sehr und sind stolz darauf, die Früchte unserer Bemühungen zu teilen, die unseren Kunden helfen, native Cloud-Automatisierung zu erstellen. Das Terraform-Modul für AWS Landing Zone ist eine weitere Lösung, die Organisationen dabei unterstützt, eine sichere AWS-Umgebung mit mehreren Konten schneller einzurichten, basierend auf den besten AWS-Praktiken. Wir wissen sehr gut, dass AWS sich rasant weiterentwickelt, und wir setzen alles daran, unser Terraform-Lösung ebenfalls schnell zu entwickeln, die alle Grundlagen abdeckt und sich mit anderen funktionalen AWS-Lösungen integriert.

Das ist alles. Wir freuen uns auf Ihre Kommentare und laden Sie ein zu kostenlosen Webinar im Rahmen dessen wir das Design der Cloud Landing Zone-Domainarchitektur untersuchen und die Architekturvorlagen der Hauptdomains betrachten werden..

Quelle: habr.com

Zuverlässiges Hosting für Websites mit DDoS-Schutz kaufen, VPS VDS Server 🔥 Zuverlässiges Hosting für Websites mit DDoS-Schutz kaufen, VPS VDS Server - ProHoster