Datenintelligenz von Platon.
Vertikale Suche & KI.

Generieren Sie mit Amazon Bedrock | individuelle, konforme IaC-Anwendungsskripte für AWS Landing Zone Amazon Web Services

Datum:

Die Migration in die Cloud ist ein wesentlicher Schritt für moderne Unternehmen, die die Flexibilität und den Umfang der Cloud-Ressourcen nutzen möchten. Tools wie Terraform und AWS CloudFormation sind für solche Übergänge von zentraler Bedeutung und bieten Infrastructure-as-Code (IaC)-Funktionen, die komplexe Cloud-Umgebungen präzise definieren und verwalten. Doch trotz der Vorteile können die Lernkurve von IaC und die Komplexität der Einhaltung der Compliance- und Sicherheitsstandards Ihres Unternehmens und Ihrer Branche Ihren Weg zur Cloud-Einführung verlangsamen. Unternehmen begegnen diesen Hürden in der Regel durch Investitionen in umfangreiche Schulungsprogramme oder die Einstellung von Fachpersonal, was oft zu höheren Kosten und verzögerten Migrationsfristen führt.

Generative künstliche Intelligenz (KI) mit Amazonas Grundgestein geht diese Herausforderungen direkt an. Amazon Bedrock ist ein vollständig verwalteter Dienst, der eine Auswahl leistungsstarker Basismodelle (FMs) von führenden KI-Unternehmen wie AI21 Labs, Anthropic, Cohere, Meta, Stability AI und Amazon mit einer einzigen API sowie einer breiten Palette von bietet Fähigkeiten zum Erstellen generativer KI-Anwendungen mit Sicherheit, Datenschutz und verantwortungsvoller KI. Mit Amazon Bedrock können Teams Terraform- und CloudFormation-Skripte generieren, die individuell an die Anforderungen des Unternehmens angepasst sind und gleichzeitig Best Practices für Compliance und Sicherheit nahtlos integrieren. Traditionell durchforsteten Cloud-Ingenieure, die IaC erlernten, manuell die Dokumentation und Best Practices, um konforme IaC-Skripte zu schreiben. Mit Amazon Bedrock können Teams Architekturbeschreibungen auf hoher Ebene eingeben und generative KI verwenden, um eine Basiskonfiguration von Terraform-Skripten zu generieren. Diese generierten Skripte sind auf die individuellen Anforderungen Ihres Unternehmens zugeschnitten und entsprechen gleichzeitig den Industriestandards für Sicherheit und Compliance. Diese Skripte dienen als grundlegender Ausgangspunkt und erfordern eine weitere Verfeinerung und Validierung, um sicherzustellen, dass sie den Standards auf Produktionsebene entsprechen.

Diese Lösung beschleunigt nicht nur den Migrationsprozess, sondern stellt auch eine standardisierte und sichere Cloud-Infrastruktur bereit. Darüber hinaus bietet es Anfängern in der Cloud-Ingenieur erste Skriptentwürfe als Standardvorlagen, auf denen sie aufbauen können, was ihre IaC-Lernreise erleichtert.

Bei der Bewältigung der Komplexität der Cloud-Migration ist die Notwendigkeit einer strukturierten, sicheren und konformen Umgebung von größter Bedeutung. AWS-Landezone erfüllt diesen Bedarf, indem es einen standardisierten Ansatz für die Bereitstellung von AWS-Ressourcen bietet. Dadurch wird sichergestellt, dass Ihre Cloud-Grundlage von Anfang an nach den Best Practices von AWS aufgebaut ist. Mit AWS Landing Zone entfällt das Rätselraten bei Sicherheitskonfigurationen, Ressourcenbereitstellung und Kontoverwaltung. Dies ist insbesondere für Unternehmen von Vorteil, die eine Skalierung anstreben, ohne Kompromisse bei der Governance oder Kontrolle einzugehen, und bietet einen klaren Weg zu einem robusten und effizienten Cloud-Setup.

In diesem Beitrag zeigen wir Ihnen, wie Sie mit Amazon Bedrock individuelle, konforme IaC-Skripte für AWS Landing Zone generieren.

AWS Landing Zone-Architektur im Kontext der Cloud-Migration

AWS Landing Zone kann Ihnen beim Einrichten einer sicheren AWS-Umgebung mit mehreren Konten basierend auf den Best Practices von AWS helfen. Es bietet eine Basisumgebung für den Einstieg in eine Architektur mit mehreren Konten, die Automatisierung der Einrichtung neuer Konten und die Zentralisierung von Compliance, Sicherheit und Identitätsmanagement. Im Folgenden finden Sie ein Beispiel für eine angepasste Terraform-basierte AWS Landing Zone-Lösung, bei der sich jede Anwendung in ihrem eigenen AWS-Konto befindet.

Der übergeordnete Workflow umfasst die folgenden Komponenten:

  • Modulbereitstellung – Verschiedene Plattformteams in verschiedenen Bereichen wie Datenbanken, Container, Datenmanagement, Netzwerk und Sicherheit entwickeln und veröffentlichen zertifizierte oder benutzerdefinierte Module. Diese werden über Pipelines an eine private Terraform-Modulregistrierung übermittelt, die von der Organisation aus Konsistenz- und Standardisierungsgründen verwaltet wird.
  • Kontoautomatenschicht – Die AVM-Schicht (Account Vending Machine) verwendet beides AWS-Kontrollturm, AWS Account Factory für Terraform (AFT) oder eine benutzerdefinierte Landing-Zone-Lösung für Verkaufskonten. In diesem Beitrag bezeichnen wir diese Lösungen gemeinsam als AVM-Schicht. Wenn Anwendungseigentümer eine Anfrage an die AVM-Ebene senden, verarbeitet diese die Eingabeparameter der Anfrage, um ein AWS-Zielkonto bereitzustellen. Dieses Konto wird dann durch AVM-Anpassungen mit maßgeschneiderten Infrastrukturkomponenten ausgestattet, darunter: AWS Control Tower-Anpassungen or AFT-Anpassungen.
  • Anwendungsinfrastrukturschicht – Auf dieser Ebene stellen Anwendungsteams ihre Infrastrukturkomponenten in den bereitgestellten AWS-Konten bereit. Dies wird durch das Schreiben von Terraform-Code in einem anwendungsspezifischen Repository erreicht. Der Terraform-Code ruft die Module auf, die zuvor von den Plattformteams in der privaten Terraform-Registrierung veröffentlicht wurden.

Bewältigen Sie die Herausforderungen der lokalen IaC-Migration mit generativer KI

Teams, die lokale Anwendungen verwalten, stoßen bei Terraform, einem wichtigen Tool für IaC in AWS-Umgebungen, häufig auf eine Lernkurve. Diese Qualifikationslücke kann eine erhebliche Hürde bei Cloud-Migrationsbemühungen darstellen. Amazon Bedrock spielt mit seinen generativen KI-Fähigkeiten eine wesentliche Rolle bei der Bewältigung dieser Herausforderung. Es erleichtert die Automatisierung der Terraform-Codeerstellung für die Anwendungsinfrastrukturschicht und ermöglicht Teams mit begrenzter Terraform-Erfahrung einen effizienten Übergang zu AWS.

Amazon Bedrock generiert Terraform-Code aus Architekturbeschreibungen. Der generierte Code ist kundenspezifisch und standardisiert und basiert auf den Best Practices, Sicherheits- und Regulierungsrichtlinien der Organisation. Diese Standardisierung wird durch die Verwendung erweiterter Eingabeaufforderungen in Verbindung mit ermöglicht Wissensdatenbanken für Amazon Bedrock, das Informationen zu organisationsspezifischen Terraform-Modulen speichert. Diese Lösung nutzt Retrieval Augmented Generation (RAG), um die Eingabeaufforderung für Amazon Bedrock mit Details aus der Wissensdatenbank anzureichern und sicherzustellen, dass die ausgegebene Terraform-Konfiguration und der README-Inhalt den Best Practices und Richtlinien Ihrer Organisation für Terraform entsprechen.

Das folgende Diagramm veranschaulicht diese Architektur.

Der Arbeitsablauf besteht aus den folgenden Schritten:

  1. Der Prozess beginnt mit dem Kontoverkauf, bei dem Anwendungseigentümer eine Anfrage für ein neues AWS-Konto stellen. Dadurch wird die AVM aufgerufen, die die Anforderungsparameter verarbeitet, um das AWS-Zielkonto bereitzustellen.
  2. Eine Architekturbeschreibung für eine zur Migration vorgesehene Anwendung wird als eine der Eingaben an die AVM-Schicht übergeben.
  3. Nach der Bereitstellung des Kontos werden AVM-Anpassungen angewendet. Dies kann Folgendes umfassen: AWS Control Tower-Anpassungen or AFT-Anpassungen die das Konto mit den erforderlichen Infrastrukturkomponenten und Konfigurationen im Einklang mit den Organisationsrichtlinien einrichten.
  4. Parallel dazu ruft die AVM-Schicht eine Lambda-Funktion auf, um Terraform-Code zu generieren. Diese Funktion bereichert die Architekturbeschreibung mit einer benutzerdefinierten Eingabeaufforderung und nutzt RAG, um die Eingabeaufforderung mit organisationsspezifischen Codierungsrichtlinien aus der Knowledge Base für Bedrock weiter zu verbessern. Diese Wissensdatenbank umfasst maßgeschneiderte Best Practices, Sicherheitsleitlinien und organisationsspezifische Richtlinien. Sehen Sie sich eine Illustration an Beispiel der organisationsspezifischen Terraform-Modulspezifikationen und -richtlinien, die in die Wissensdatenbank hochgeladen wurden.
  5. Vor der Bereitstellung wird der erste Entwurf des Terraform-Codes gründlich von Cloud-Ingenieuren oder einem automatisierten Code-Überprüfungssystem überprüft, um zu bestätigen, dass er alle technischen Standards und Compliance-Standards erfüllt.
  6. Die überprüften und aktualisierten Terraform-Skripte werden dann verwendet, um Infrastrukturkomponenten im neu bereitgestellten AWS-Konto bereitzustellen und die für die Anwendung erforderlichen Rechen-, Speicher- und Netzwerkressourcen einzurichten.

Lösungsüberblick

Die AWS Landing Zone-Bereitstellung verwendet eine Lambda-Funktion zum Generieren von Terraform-Skripten aus Architektureingaben. Diese für den Betrieb zentrale Funktion übersetzt diese Eingaben mithilfe von Amazon Bedrock und Knowledge Bases für Amazon Bedrock in konformen Code. Die Ausgabe wird dann in einem GitHub-Repository gespeichert, entsprechend der spezifischen Anwendung in der Migration. In den folgenden Abschnitten werden die Voraussetzungen und spezifischen Schritte beschrieben, die zur Implementierung dieser Lösung erforderlich sind.

Voraussetzungen:

Sie sollten Folgendes haben:

Konfigurieren Sie die Lambda-Funktion, um benutzerdefinierten Code zu generieren

Diese Lambda-Funktion ist eine Schlüsselkomponente bei der Automatisierung der Erstellung benutzerdefinierter, kompatibler Terraform-Konfigurationen für AWS-Dienste. Es überträgt die generierten Konfigurationen direkt in ein bestimmtes GitHub-Repository und richtet sich dabei nach den Best Practices der Organisation. Den Funktionscode finden Sie im Folgenden GitHub Repo. Um eine Lambda-Funktion zu erstellen, folgen Sie bitte den Anweisungen Anleitung.

Das folgende Diagramm veranschaulicht den Arbeitsablauf der Funktion.

Der Workflow umfasst die folgenden Schritte:

  1. Die Funktion wird durch ein Ereignis aus der AVM-Schicht aufgerufen, das die Architekturbeschreibung enthält.
  2. Die Funktion ruft Terraform-Moduldefinitionen aus der Wissensdatenbank ab und verwendet sie.
  3. Die Funktion ruft das Amazon Bedrock-Modell zweimal auf, wie empfohlen zeitnahe technische Richtlinien. Die Funktion wendet RAG an, um die Eingabeaufforderung mit den Terraform-Modulinformationen anzureichern und sicherzustellen, dass der Ausgabecode den Best Practices der Organisation entspricht.
    • Generieren Sie zunächst Terraform-Konfigurationen gemäß den organisatorischen Codierungsrichtlinien und beziehen Sie Terraform-Moduldetails aus der Wissensdatenbank ein. Die Eingabeaufforderung könnte beispielsweise lauten: „Generieren Sie Terraform-Konfigurationen für AWS-Dienste.“ Befolgen Sie Best Practices für die Sicherheit, indem Sie IAM-Rollen und Berechtigungen mit den geringsten Berechtigungen verwenden. Schließen Sie alle erforderlichen Parameter mit Standardwerten ein. Fügen Sie Kommentare hinzu, die die Gesamtarchitektur und den Zweck jeder Ressource erläutern.“
    • Zweitens erstellen Sie eine detaillierte README-Datei. Zum Beispiel: „Generieren Sie eine detaillierte README-Datei für die Terraform-Konfiguration basierend auf AWS-Diensten.“ Fügen Sie Abschnitte zu Sicherheitsverbesserungen und Tipps zur Kostenoptimierung gemäß dem AWS Well-Architected Framework hinzu. Fügen Sie außerdem eine detaillierte Kostenaufschlüsselung für jeden genutzten AWS-Service mit Stundensätzen und den gesamten täglichen und monatlichen Kosten hinzu.“
  4. Es überträgt die generierte Terraform-Konfiguration und die README-Datei an das GitHub-Repository und sorgt so für Rückverfolgbarkeit und Transparenz.
  5. Schließlich antwortet es mit Erfolg, einschließlich URLs zu den übergebenen GitHub-Dateien, oder gibt detaillierte Fehlerinformationen zur Fehlerbehebung zurück.

Konfigurieren Sie Wissensdatenbanken für Amazon Bedrock

Befolgen Sie diese Schritte, um Ihre Wissensdatenbank in Amazon Bedrock einzurichten:

  1. Wählen Sie auf der Amazon Bedrock-Konsole Wissensbasis im Navigationsbereich.
  2. Auswählen Wissensbasis schaffen.
  3. Geben Sie einen klaren und aussagekräftigen Namen ein, der den Zweck Ihrer Wissensdatenbank widerspiegelt, z. B. AWS Account Setup Knowledge Base For Amazon Bedrock.
  4. Weisen Sie eine vorkonfigurierte IAM-Rolle mit den erforderlichen Berechtigungen zu. Normalerweise ist es am besten, diese Rolle von Amazon Bedrock erstellen zu lassen, um sicherzustellen, dass sie über die richtigen Berechtigungen verfügt.
  5. Laden Sie aus Sicherheitsgründen eine JSON-Datei mit aktivierter Verschlüsselung in einen S3-Bucket hoch. Diese Datei sollte eine strukturierte Liste von AWS-Diensten und Terraform-Modulen enthalten. Verwenden Sie für die JSON-Struktur Folgendes Beispiel aus dem GitHub-Repository.
  6. Wählen Sie das Standard-Einbettungsmodell.
  7. Erlauben Sie Amazon Bedrock, den Vektorshop für Sie zu erstellen und zu verwalten Amazon OpenSearch-Dienst.
  8. Überprüfen Sie die Informationen auf Richtigkeit. Achten Sie besonders auf den S3-Bucket-URI und die IAM-Rollendetails.
  9. Erstellen Sie Ihre Wissensdatenbank.

Nachdem Sie diese Komponenten bereitgestellt und konfiguriert haben und Ihre AWS Landing Zone-Lösung die Lambda-Funktion aufruft, werden die folgenden Dateien generiert:

  • Eine Terraform-Konfigurationsdatei – Diese Datei spezifiziert das Infrastruktur-Setup.
  • Eine umfassende README-Datei – Diese Datei dokumentiert die im Code eingebetteten Sicherheitsstandards und bestätigt, dass sie mit den in den ersten Abschnitten beschriebenen Sicherheitspraktiken übereinstimmen. Darüber hinaus enthält diese README-Datei eine Architekturzusammenfassung, Tipps zur Kostenoptimierung und eine detaillierte Kostenaufschlüsselung für die in der Terraform-Konfiguration beschriebenen Ressourcen.

Der folgende Screenshot zeigt ein Beispiel der Terraform-Konfigurationsdatei.

Der folgende Screenshot zeigt ein Beispiel der README-Datei.

Aufräumen

Führen Sie die folgenden Schritte aus, um Ihre Ressourcen zu bereinigen:

  1. Löschen Sie die Lambda-Funktion, wenn sie nicht mehr benötigt wird.
  2. Leeren und löschen Sie den S3-Bucket, der für die Terraform-Statusspeicherung verwendet wird.
  3. Entfernen Sie die generierten Terraform-Skripte und die README-Datei aus dem GitHub-Repository.
  4. Löschen Sie die Wissensdatenbank wenn es nicht mehr benötigt wird.

Zusammenfassung

Die generativen KI-Funktionen von Amazon Bedrock optimieren nicht nur die Erstellung konformer Terraform-Skripte für AWS-Bereitstellungen, sondern dienen auch als zentrale Lernhilfe für unerfahrene Cloud-Ingenieure, die lokale Anwendungen auf AWS umstellen. Dieser Ansatz beschleunigt den Cloud-Migrationsprozess und hilft Ihnen, Best Practices einzuhalten. Sie können die Lösung auch nutzen, um nach der Migration einen Mehrwert zu schaffen und den täglichen Betrieb zu verbessern, z. B. die laufende Infrastruktur und die Kostenoptimierung. Obwohl wir uns in diesem Beitrag hauptsächlich auf Terraform konzentriert haben, können diese Prinzipien auch Ihre AWS CloudFormation-Bereitstellungen verbessern und eine vielseitige Lösung für Ihre Infrastrukturanforderungen bieten.

Sind Sie bereit, Ihren Cloud-Migrationsprozess mit generativer KI in Amazon Bedrock zu vereinfachen? Beginnen Sie mit der Erkundung der Amazon Bedrock-Benutzerhandbuch um zu verstehen, wie es die Cloud-Reise Ihres Unternehmens optimieren kann. Wenn Sie weitere Unterstützung und Fachwissen benötigen, sollten Sie die Verwendung in Betracht ziehen Professionelle AWS-Services um Ihnen dabei zu helfen, Ihre Cloud-Migration zu optimieren und die Vorteile von Amazon Bedrock zu maximieren.

Erschließen Sie mit Amazon Bedrock das Potenzial für eine schnelle, sichere und effiziente Cloud-Einführung. Machen Sie noch heute den ersten Schritt und entdecken Sie, wie es die Cloud-Transformationsbemühungen Ihres Unternehmens verbessern kann.


Über den Autor

Ebbey Thomas ist auf die Strategieentwicklung und Entwicklung benutzerdefinierter AWS Landing Zone-Ressourcen spezialisiert, wobei der Schwerpunkt auf der Verwendung generativer KI zur Verbesserung der Automatisierung der Cloud-Infrastruktur liegt. In seiner Rolle bei AWS Professional Services ist Ebbeys Fachwissen von zentraler Bedeutung für die Entwicklung von Lösungen, die die Cloud-Einführung optimieren und einen sicheren und effizienten Betriebsrahmen für AWS-Benutzer bieten. Er ist bekannt für seine innovative Herangehensweise an Cloud-Herausforderungen und sein Engagement, die Möglichkeiten von Cloud-Diensten voranzutreiben.

spot_img

Neueste Intelligenz

spot_img

Chat mit uns

Hallo! Wie kann ich dir helfen?