Wählen Sie Ihre Cookie-Einstellungen aus

Wir verwenden essentielle Cookies und ähnliche Tools, die für die Bereitstellung unserer Website und Services erforderlich sind. Wir verwenden Performance-Cookies, um anonyme Statistiken zu sammeln, damit wir verstehen können, wie Kunden unsere Website nutzen, und Verbesserungen vornehmen können. Essentielle Cookies können nicht deaktiviert werden, aber Sie können auf „Anpassen“ oder „Ablehnen“ klicken, um Performance-Cookies abzulehnen.

Wenn Sie damit einverstanden sind, verwenden AWS und zugelassene Drittanbieter auch Cookies, um nützliche Features der Website bereitzustellen, Ihre Präferenzen zu speichern und relevante Inhalte, einschließlich relevanter Werbung, anzuzeigen. Um alle nicht notwendigen Cookies zu akzeptieren oder abzulehnen, klicken Sie auf „Akzeptieren“ oder „Ablehnen“. Um detailliertere Entscheidungen zu treffen, klicken Sie auf „Anpassen“.

Verbessern Sie die betriebliche Leistung, indem Sie Amazon DevOps Guru für mehrere AWS Regionen und Konten aktivieren und OUs mit AWS CDK - AWS Prescriptive Guidance

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Verbessern Sie die betriebliche Leistung, indem Sie Amazon DevOps Guru für mehrere AWS Regionen und Konten aktivieren und OUs mit AWS CDK

Erstellt von Dr. Rahul Sharad Gaikwad () AWS

Übersicht

Dieses Muster zeigt die Schritte zur Aktivierung des Amazon DevOps Guru-Service in mehreren Amazon Web Services (AWS) -Regionen, Konten und Organisationseinheiten (OUs) mithilfe des AWS Cloud Development Kit (AWSCDK) in TypeScript. Sie können AWS CDK Stacks für die Bereitstellung AWS CloudFormation StackSets vom (primären) AWS Administratorkonto aus verwenden, um Amazon DevOps Guru für mehrere Konten zu aktivieren, anstatt sich bei jedem Konto anzumelden und DevOps Guru für jedes Konto einzeln zu aktivieren.

Amazon DevOps Guru bietet Funktionen für künstliche Intelligenz (AIOps), mit denen Sie die Verfügbarkeit Ihrer Anwendungen verbessern und betriebliche Probleme schneller lösen können. DevOps Guru reduziert Ihren manuellen Aufwand, indem es Empfehlungen anwendet, die auf maschinellem Lernen (ML) basieren, ohne dass ML-Kenntnisse erforderlich sind. DevOps Guru analysiert Ihre Ressourcen und Betriebsdaten. Wenn es Anomalien feststellt, bietet es Kennzahlen, Ereignisse und Empfehlungen, die Ihnen bei der Behebung des Problems helfen.

Dieses Muster beschreibt drei Bereitstellungsoptionen für die Aktivierung von Amazon DevOps Guru:

  • Für alle Stack-Ressourcen in mehreren Konten und Regionen

  • Für alle Stack-Ressourcen auf OUs

  • Für bestimmte Stack-Ressourcen über mehrere Konten und Regionen

Voraussetzungen und Einschränkungen

Voraussetzungen

Produktversionen

  • AWSCDKToolkit-Version 1.107.0 oder höher

  • npm Version 7.9.0 oder höher

  • Node.js Version 15.3.0 oder höher

Architektur

Technologien

Die Architektur für dieses Muster umfasst die folgenden Dienste:

AWSCDKStapel

Das Muster verwendet die folgenden AWS CDK Stapel: 

  • CdkStackSetAdminRole— Erstellt eine Administratorrolle für AWS Identitäts- und Zugriffsmanagement (IAM), um eine Vertrauensbeziehung zwischen dem Administrator und den Zielkonten herzustellen.

  • CdkStackSetExecRole— Erzeugt eine IAM Rolle, um dem Administratorkonto zu vertrauen.

  • CdkDevopsGuruStackMultiAccReg— Aktiviert DevOps Guru in mehreren AWS Regionen und Konten für alle Stacks und richtet Amazon Simple Notification Service (AmazonSNS) -Benachrichtigungen ein.

  • CdkDevopsGuruStackMultiAccRegSpecStacks— Aktiviert DevOps Guru in mehreren AWS Regionen und Konten für bestimmte Stapel und richtet SNS Amazon-Benachrichtigungen ein.

  • CdkDevopsguruStackOrgUnit— Aktiviert DevOps Guru Across OUs und richtet SNS Amazon-Benachrichtigungen ein. 

  • CdkInfrastructureStack— Stellt serverlose Beispielanwendungskomponenten wie API Gateway, Lambda und DynamoDB im Administratorkonto bereit, um die Fehlerinjektion und die Generierung von Erkenntnissen zu demonstrieren.

Beispiel für eine Anwendungsarchitektur

Das folgende Diagramm zeigt die Architektur einer serverlosen Beispielanwendung, die in mehreren Konten und Regionen bereitgestellt wurde. Das Muster verwendet das Administratorkonto, um alle AWS CDK Stacks bereitzustellen. Es verwendet auch das Administratorkonto als eines der Zielkonten für die Einrichtung von DevOps Guru.

  1. Wenn DevOps Guru aktiviert ist, erstellt es zunächst eine Baseline-Analyse für das Verhalten der einzelnen Ressourcen und nimmt dann Betriebsdaten aus CloudWatch den bereitgestellten Metriken auf.

  2. Wenn es eine Anomalie erkennt, korreliert es diese mit den Ereignissen aus CloudTrail und generiert daraus Erkenntnisse.

  3. Die Erkenntnisse liefern eine korrelierte Abfolge von Ereignissen sowie vorgeschriebene Empfehlungen, die es dem Betreiber ermöglichen, die verursachende Ressource zu identifizieren.

  4. Amazon SNS sendet Benachrichtigungen an den Betreiber.

Ein Beispiel für eine serverlose Anwendung, die in mehreren Konten und Regionen bereitgestellt wurde.

Automatisierung und Skalierung

Das mit diesem Muster bereitgestellte GitHub Repository verwendet das Tool AWS CDK as an Infrastructure as Code (IaC), um die Konfiguration für diese Architektur zu erstellen. AWSCDKhilft Ihnen dabei, Ressourcen zu orchestrieren und DevOps Guru für mehrere AWS Konten, Regionen und zu aktivieren. OUs

Tools

AWS-Services

  • AWSCDK— AWS Cloud Development Kit (AWSCDK) hilft Ihnen, Ihre Cloud-Infrastruktur als Code in einer von fünf unterstützten Programmiersprachen zu definieren: TypeScript, JavaScript, Python, Java und C#.

  • AWSCLI— Die AWS Befehlszeilenschnittstelle (AWSCLI) ist ein einheitliches Tool, das eine konsistente Befehlszeilenschnittstelle für die Interaktion mit AWS Diensten und Ressourcen bietet.

Code

Der Quellcode für dieses Muster ist im Amazon DevOps Guru CDK Samples-Repository verfügbar. GitHub Der AWS CDK Code ist in geschrieben TypeScript. Folgen Sie den Anweisungen im nächsten Abschnitt, um das Repository zu klonen und zu verwenden.

Wichtig

Einige der Geschichten in diesem Muster enthalten AWS CDK AWS CLI Befehlsbeispiele, die für Unix, Linux und macOS formatiert sind. Ersetzen Sie unter Windows das Fortsetzungszeichen mit dem umgekehrten Schrägstrich (\) am Ende jeder Zeile durch ein Caret-Zeichen (^).

Epen

AufgabeBeschreibungErforderliche Fähigkeiten

Konfigurieren Sie AWS benannte Profile.

Richten Sie Ihre AWS benannten Profile wie folgt ein, um Stacks in einer Umgebung mit mehreren Konten bereitzustellen.

Für das Administratorkonto:

$aws configure --profile administrator AWS Access Key ID [****]: <your-administrator-access-key-ID> AWS Secret Access Key [****]: <your-administrator-secret-access-key> Default region name [None]: <your-administrator-region> Default output format [None]: json

Für das Zielkonto:

$aws configure --profile target AWS Access Key ID [****: <your-target-access-key-ID> AWS Secret Access Key [****]: <your-target-secret-access-key> Default region name [None]: <your-target-region> Default output format [None]: json

Weitere Informationen finden Sie in der AWS CLI Dokumentation unter Verwenden benannter Profile.

DevOps Ingenieur

Überprüfen Sie die AWS Profilkonfigurationen.

(Optional) Sie können Ihre AWS Profilkonfigurationen in den config Dateien credentials und überprüfen, indem Sie den Anweisungen unter Konfigurationseinstellungen einrichten und anzeigen in der AWS CLI Dokumentation folgen.

DevOps Ingenieur

Überprüfen Sie die AWS CDK Version.

Überprüfen Sie die Version des AWS CDK Toolkits, indem Sie den folgenden Befehl ausführen:

$cdk --version

Für dieses Pattern ist Version 1.107.0 oder höher erforderlich. Wenn Sie eine frühere Version von haben AWSCDK, folgen Sie den Anweisungen in der AWSCDKDokumentation, um sie zu aktualisieren.

DevOps Ingenieur

Klonen Sie den Projektcode.

Klonen Sie das GitHub Repository für dieses Muster mit dem folgenden Befehl:

$git clone https://github.com/aws-samples/amazon-devopsguru-cdk-samples.git
DevOps Ingenieur

Installieren Sie die Paketabhängigkeiten und kompilieren Sie die TypeScript Dateien.

Installieren Sie die Paketabhängigkeiten und kompilieren Sie die TypeScript Dateien, indem Sie die folgenden Befehle ausführen:

$cd amazon-devopsguru-cdk-samples $npm install $npm fund

Mit diesen Befehlen werden alle Pakete aus dem Beispiel-Repository installiert.

Wichtig

Wenn Sie eine Fehlermeldung über fehlende Pakete erhalten, verwenden Sie einen der folgenden Befehle:

$npm ci

–oder–

$npm install -g @aws-cdk/<package-name>

Die Liste der Paketnamen und Versionen finden Sie im Dependencies Abschnitt der /amazon-devopsguru-cdk-samples/package.json Datei. Weitere Informationen finden Sie unter npm ci und npm install in der npm-Dokumentation.

DevOps Ingenieur

Bereiten Sie die AWS Ressourcen für den Einsatz vor

AufgabeBeschreibungErforderliche Fähigkeiten

Konfigurieren Sie AWS benannte Profile.

Richten Sie Ihre AWS benannten Profile wie folgt ein, um Stacks in einer Umgebung mit mehreren Konten bereitzustellen.

Für das Administratorkonto:

$aws configure --profile administrator AWS Access Key ID [****]: <your-administrator-access-key-ID> AWS Secret Access Key [****]: <your-administrator-secret-access-key> Default region name [None]: <your-administrator-region> Default output format [None]: json

Für das Zielkonto:

$aws configure --profile target AWS Access Key ID [****: <your-target-access-key-ID> AWS Secret Access Key [****]: <your-target-secret-access-key> Default region name [None]: <your-target-region> Default output format [None]: json

Weitere Informationen finden Sie in der AWS CLI Dokumentation unter Verwenden benannter Profile.

DevOps Ingenieur

Überprüfen Sie die AWS Profilkonfigurationen.

(Optional) Sie können Ihre AWS Profilkonfigurationen in den config Dateien credentials und überprüfen, indem Sie den Anweisungen unter Konfigurationseinstellungen einrichten und anzeigen in der AWS CLI Dokumentation folgen.

DevOps Ingenieur

Überprüfen Sie die AWS CDK Version.

Überprüfen Sie die Version des AWS CDK Toolkits, indem Sie den folgenden Befehl ausführen:

$cdk --version

Für dieses Pattern ist Version 1.107.0 oder höher erforderlich. Wenn Sie eine frühere Version von haben AWSCDK, folgen Sie den Anweisungen in der AWSCDKDokumentation, um sie zu aktualisieren.

DevOps Ingenieur

Klonen Sie den Projektcode.

Klonen Sie das GitHub Repository für dieses Muster mit dem folgenden Befehl:

$git clone https://github.com/aws-samples/amazon-devopsguru-cdk-samples.git
DevOps Ingenieur

Installieren Sie die Paketabhängigkeiten und kompilieren Sie die TypeScript Dateien.

Installieren Sie die Paketabhängigkeiten und kompilieren Sie die TypeScript Dateien, indem Sie die folgenden Befehle ausführen:

$cd amazon-devopsguru-cdk-samples $npm install $npm fund

Mit diesen Befehlen werden alle Pakete aus dem Beispiel-Repository installiert.

Wichtig

Wenn Sie eine Fehlermeldung über fehlende Pakete erhalten, verwenden Sie einen der folgenden Befehle:

$npm ci

–oder–

$npm install -g @aws-cdk/<package-name>

Die Liste der Paketnamen und Versionen finden Sie im Dependencies Abschnitt der /amazon-devopsguru-cdk-samples/package.json Datei. Weitere Informationen finden Sie unter npm ci und npm install in der npm-Dokumentation.

DevOps Ingenieur
AufgabeBeschreibungErforderliche Fähigkeiten

Konfigurieren Sie eine E-Mail-Adresse für SNS Amazon-Benachrichtigungen.

Gehen Sie wie folgt vor, um eine E-Mail-Adresse für SNS Amazon-Benachrichtigungen anzugeben:

  1. Bearbeiten Sie die Dateien /amazon-devopsguru-cdk-samples/lib/cdk-devopsguru-multi-acc-reg-stack.ts und/amazon-devopsguru-cdk-samples/lib/cdk-devopsguru-org-uni-stack.ts.

  2. Aktualisieren Sie im Subscription AbschnittDevOpsGuruTopic, den Endpoint Parameter mit Ihrer E-Mail-Adresse.

  3. Speichern und schließen Sie die Dateien.

DevOps Ingenieur

Erstellen Sie den Projektcode.

Erstellen Sie den Projektcode und synthetisieren Sie die Stacks, indem Sie den folgenden Befehl ausführen:

npm run build && cdk synth

Die Ausgabe sollte folgendermaßen oder ähnlich aussehen: 

$npm run build && cdk synth > cdk-devopsguru@0.1.0 build > tsc Successfully synthesized to ~/amazon-devopsguru-cdk-samples/cdk.out Supply a stack id (CdkDevopsGuruStackMultiAccReg,CdkDevopsGuruStackMultiAccRegSpecStacks, CdkDevopsguruStackOrgUnit, CdkInfrastructureStack, CdkStackSetAdminRole, CdkStackSetExecRole) to display its template.

Weitere Informationen und Schritte finden Sie in der Dokumentation unter Deine erste AWS CDK App. AWS CDK

DevOps Ingenieur

Liste die AWS CDK Stapel auf.

Führen Sie den folgenden Befehl aus, um alle AWS CDK Stapel aufzulisten:

$cdk list

Der Befehl zeigt die folgende Liste an:

CdkDevopsGuruStackMultiAccReg CdkDevopsGuruStackMultiAccRegSpecStacks CdkDevopsguruStackOrgUnit CdkInfrastructureStack CdkStackSetAdminRole CdkStackSetExecRole
DevOps Ingenieur

Baue (synthetisiere) die Stapel AWS CDK

AufgabeBeschreibungErforderliche Fähigkeiten

Konfigurieren Sie eine E-Mail-Adresse für SNS Amazon-Benachrichtigungen.

Gehen Sie wie folgt vor, um eine E-Mail-Adresse für SNS Amazon-Benachrichtigungen anzugeben:

  1. Bearbeiten Sie die Dateien /amazon-devopsguru-cdk-samples/lib/cdk-devopsguru-multi-acc-reg-stack.ts und/amazon-devopsguru-cdk-samples/lib/cdk-devopsguru-org-uni-stack.ts.

  2. Aktualisieren Sie im Subscription AbschnittDevOpsGuruTopic, den Endpoint Parameter mit Ihrer E-Mail-Adresse.

  3. Speichern und schließen Sie die Dateien.

DevOps Ingenieur

Erstellen Sie den Projektcode.

Erstellen Sie den Projektcode und synthetisieren Sie die Stacks, indem Sie den folgenden Befehl ausführen:

npm run build && cdk synth

Die Ausgabe sollte folgendermaßen oder ähnlich aussehen: 

$npm run build && cdk synth > cdk-devopsguru@0.1.0 build > tsc Successfully synthesized to ~/amazon-devopsguru-cdk-samples/cdk.out Supply a stack id (CdkDevopsGuruStackMultiAccReg,CdkDevopsGuruStackMultiAccRegSpecStacks, CdkDevopsguruStackOrgUnit, CdkInfrastructureStack, CdkStackSetAdminRole, CdkStackSetExecRole) to display its template.

Weitere Informationen und Schritte finden Sie in der Dokumentation unter Deine erste AWS CDK App. AWS CDK

DevOps Ingenieur

Liste die AWS CDK Stapel auf.

Führen Sie den folgenden Befehl aus, um alle AWS CDK Stapel aufzulisten:

$cdk list

Der Befehl zeigt die folgende Liste an:

CdkDevopsGuruStackMultiAccReg CdkDevopsGuruStackMultiAccRegSpecStacks CdkDevopsguruStackOrgUnit CdkInfrastructureStack CdkStackSetAdminRole CdkStackSetExecRole
DevOps Ingenieur
AufgabeBeschreibungErforderliche Fähigkeiten

Stellen Sie die AWS CDK Stacks für die Erstellung von IAM Rollen bereit.

Dieses Muster wird verwendet AWS CloudFormation StackSets, um Stack-Operationen über mehrere Konten hinweg durchzuführen. Wenn Sie Ihr erstes Stack-Set erstellen, müssen Sie die folgenden IAM Rollen erstellen, um die erforderlichen Berechtigungen in Ihren AWS Konten einzurichten:

  • AWSCloudFormationStackSetAdministrationRole

  • AWSCloudFormationStackSetExecutionRole

Anmerkung

Die Rollen müssen genau diese Namen haben.

  1. Erstellen Sie die IAM AWSCloudFormationStackSetAdministrationRole Rolle im Administratorkonto (primär), indem Sie den folgenden CLI Befehl ausführen:

    $cdk deploy CdkStackSetAdminRole --profile administrator
  2. Erstellen Sie die IAM AWSCloudFormationStackSetExecutionRole Rolle in allen Zielkonten, auf denen Sie die Stack-Instances ausführen möchten. Führen Sie die folgenden CLI Befehle aus, um diese Rolle zu erstellen:

    $cdk deploy CdkStackSetExecRole \ --parameters AdministratorAccountId=<administrator-account-ID> \ --profile administrator   $cdk deploy CdkStackSetExecRole \ --parameters AdministratorAccountId=<administrator-account-ID> \ --profile target

Weitere Informationen finden Sie in der AWS CloudFormation Dokumentation unter Gewähren von selbstverwalteten Berechtigungen.

DevOps Ingenieur

Stellen Sie den AWS CDK Stack bereit, um DevOps Guru für mehrere Konten zu aktivieren.

Der AWS CDK CdkDevopsGuruStackMultiAccReg Stack erstellt Stack-Sets, um Stack-Instances über mehrere Konten und Regionen hinweg bereitzustellen. Um den Stack bereitzustellen, führen Sie den folgenden CLI Befehl mit den angegebenen Parametern aus:

$cdk deploy CdkDevopsGuruStackMultiAccReg \ --profile administrator \ --parameters AdministratorAccountId=<administrator-account-ID> \ --parameters TargetAccountId=<target-account-ID> \ --parameters RegionIds="<region-1>,<region-2>"

Derzeit ist Amazon DevOps Guru in den im DevOps Guru aufgeführten AWS Regionen verfügbarFAQ.

DevOps Ingenieur

Option 1 — DevOps Guru für alle Stack-Ressourcen über mehrere Konten hinweg aktivieren

AufgabeBeschreibungErforderliche Fähigkeiten

Stellen Sie die AWS CDK Stacks für die Erstellung von IAM Rollen bereit.

Dieses Muster wird verwendet AWS CloudFormation StackSets, um Stack-Operationen über mehrere Konten hinweg durchzuführen. Wenn Sie Ihr erstes Stack-Set erstellen, müssen Sie die folgenden IAM Rollen erstellen, um die erforderlichen Berechtigungen in Ihren AWS Konten einzurichten:

  • AWSCloudFormationStackSetAdministrationRole

  • AWSCloudFormationStackSetExecutionRole

Anmerkung

Die Rollen müssen genau diese Namen haben.

  1. Erstellen Sie die IAM AWSCloudFormationStackSetAdministrationRole Rolle im Administratorkonto (primär), indem Sie den folgenden CLI Befehl ausführen:

    $cdk deploy CdkStackSetAdminRole --profile administrator
  2. Erstellen Sie die IAM AWSCloudFormationStackSetExecutionRole Rolle in allen Zielkonten, auf denen Sie die Stack-Instances ausführen möchten. Führen Sie die folgenden CLI Befehle aus, um diese Rolle zu erstellen:

    $cdk deploy CdkStackSetExecRole \ --parameters AdministratorAccountId=<administrator-account-ID> \ --profile administrator   $cdk deploy CdkStackSetExecRole \ --parameters AdministratorAccountId=<administrator-account-ID> \ --profile target

Weitere Informationen finden Sie in der AWS CloudFormation Dokumentation unter Gewähren von selbstverwalteten Berechtigungen.

DevOps Ingenieur

Stellen Sie den AWS CDK Stack bereit, um DevOps Guru für mehrere Konten zu aktivieren.

Der AWS CDK CdkDevopsGuruStackMultiAccReg Stack erstellt Stack-Sets, um Stack-Instances über mehrere Konten und Regionen hinweg bereitzustellen. Um den Stack bereitzustellen, führen Sie den folgenden CLI Befehl mit den angegebenen Parametern aus:

$cdk deploy CdkDevopsGuruStackMultiAccReg \ --profile administrator \ --parameters AdministratorAccountId=<administrator-account-ID> \ --parameters TargetAccountId=<target-account-ID> \ --parameters RegionIds="<region-1>,<region-2>"

Derzeit ist Amazon DevOps Guru in den im DevOps Guru aufgeführten AWS Regionen verfügbarFAQ.

DevOps Ingenieur
AufgabeBeschreibungErforderliche Fähigkeiten

Organisationseinheit extrahierenIDs.

Identifizieren Sie in der AWSOrganisationskonsole IDs die Organisationseinheiten, für die Sie DevOps Guru aktivieren möchten.

DevOps Ingenieur

Aktivieren Sie vom Service verwaltete Berechtigungen fürOUs.

Wenn du AWS Organizations für die Kontoverwaltung verwendest, musst du dienstverwaltete Berechtigungen gewähren, um DevOps Guru zu aktivieren. Anstatt die IAM Rollen manuell zu erstellen, verwende organisationsbasierten vertrauenswürdigen Zugriff und serviceverknüpfte Rollen (). SLRs

DevOps Ingenieur

Stellen Sie den AWS CDK Stack bereit, um DevOps Guru Across zu aktivierenOUs.

Der AWS CDK CdkDevopsguruStackOrgUnit Stack ermöglicht den gesamten DevOps Guru-ServiceOUs. Um den Stack bereitzustellen, führen Sie den folgenden Befehl mit den angegebenen Parametern aus:

$cdk deploy CdkDevopsguruStackOrgUnit \ --profile administrator \ --parameters RegionIds="<region-1>,<region-2>" \ --parameters OrganizationalUnitIds="<OU-1>,<OU-2>"
DevOps Ingenieur

Option 2 — Aktivieren Sie DevOps Guru für alle Stack-Ressourcen auf OUs

AufgabeBeschreibungErforderliche Fähigkeiten

Organisationseinheit extrahierenIDs.

Identifizieren Sie in der AWSOrganisationskonsole IDs die Organisationseinheiten, für die Sie DevOps Guru aktivieren möchten.

DevOps Ingenieur

Aktivieren Sie vom Service verwaltete Berechtigungen fürOUs.

Wenn du AWS Organizations für die Kontoverwaltung verwendest, musst du dienstverwaltete Berechtigungen gewähren, um DevOps Guru zu aktivieren. Anstatt die IAM Rollen manuell zu erstellen, verwende organisationsbasierten vertrauenswürdigen Zugriff und serviceverknüpfte Rollen (). SLRs

DevOps Ingenieur

Stellen Sie den AWS CDK Stack bereit, um DevOps Guru Across zu aktivierenOUs.

Der AWS CDK CdkDevopsguruStackOrgUnit Stack ermöglicht den gesamten DevOps Guru-ServiceOUs. Um den Stack bereitzustellen, führen Sie den folgenden Befehl mit den angegebenen Parametern aus:

$cdk deploy CdkDevopsguruStackOrgUnit \ --profile administrator \ --parameters RegionIds="<region-1>,<region-2>" \ --parameters OrganizationalUnitIds="<OU-1>,<OU-2>"
DevOps Ingenieur
AufgabeBeschreibungErforderliche Fähigkeiten

Stellen Sie die AWS CDK Stacks für die Erstellung von IAM Rollen bereit.

Wenn Sie die in der ersten Option aufgeführten erforderlichen IAM Rollen noch nicht erstellt haben, tun Sie dies zuerst:

  1. Erstellen Sie die IAM AWSCloudFormationStackSetAdministrationRole Rolle im Administratorkonto (primär), indem Sie den folgenden CLI Befehl ausführen:

    $cdk deploy CdkStackSetAdminRole --profile administrator
  2. Erstellen Sie die IAM AWSCloudFormationStackSetExecutionRole Rolle in allen Zielkonten, auf denen Sie die Stack-Instances ausführen möchten. Führen Sie die folgenden CLI Befehle aus, um diese Rolle zu erstellen:

    $cdk deploy CdkStackSetExecRole \ --parameters AdministratorAccountId=<administrator-account-ID> \ --profile administrator $cdk deploy CdkStackSetExecRole \ --parameters AdministratorAccountId=<administrator-account-ID> \ --profile target

Weitere Informationen finden Sie in der AWS CloudFormation Dokumentation unter Gewähren von selbstverwalteten Berechtigungen.

DevOps Ingenieur

Löschen Sie vorhandene Stapel.

Wenn Sie bereits die erste Option verwendet haben, um DevOps Guru für alle Stack-Ressourcen zu aktivieren, können Sie den alten Stack mit dem folgenden Befehl löschen:

$cdk destroy CdkDevopsGuruStackMultiAccReg --profile administrator

Sie können den  RegionIds Parameter auch ändern, wenn Sie den Stack erneut bereitstellen, um den Fehler Stacks already exist zu vermeiden.

DevOps Ingenieur

Aktualisieren Sie den AWS CDK Stack mit einer Stack-Liste.

  1. Bearbeiten Sie die /amazon-devopsguru-cdk-samples/lib/cdk-devopsguru-multi-acc-reg-spec-stack.ts-Datei.

  2. Listen Sie unter ResourcesCloudFormation,StackNames, die Stacks auf, für die Sie DevOps Guru aktivieren möchten. Zu Demonstrationszwecken gibt der Parameter den CdkInfrastructureStack Stack an. Sie können diesen Eintrag jedoch nach Ihren Anforderungen bearbeiten.

  3. Speichern und schließen Sie die Datei.

  4. Um die Stack-Vorlage zu synthetisieren und zu aktualisieren, führen Sie folgenden Befehl aus:

     $cdk synth
Dateningenieur

Stellen Sie den AWS CDK Stack bereit, um DevOps Guru für bestimmte Stack-Ressourcen über mehrere Konten hinweg zu aktivieren.

Der AWS CDK CdkDevopsGuruStackMultiAccRegSpecStacks Stack ermöglicht DevOps Guru den Zugriff auf bestimmte Stack-Ressourcen über mehrere Konten hinweg. Führen Sie den folgenden Befehl aus, um den Stack bereitzustellen:

$cdk deploy CdkDevopsGuruStackMultiAccRegSpecStacks \ --profile administrator \ --parameters AdministratorAccountId=<administrator-account-ID> \ --parameters TargetAccountId=<target-account-ID> \ --parameters RegionIds="<region-1>,<region-2>"
Anmerkung

Wenn Sie diesen Stack bereits für Option 1 bereitgestellt haben, ändern Sie den RegionIds Parameter (stellen Sie sicher, dass Sie aus verfügbaren Regionen wählen), um den Fehler Stacks already exist zu vermeiden.

DevOps Ingenieur

Option 3 — Aktivieren Sie DevOps Guru für bestimmte Stack-Ressourcen über mehrere Konten

AufgabeBeschreibungErforderliche Fähigkeiten

Stellen Sie die AWS CDK Stacks für die Erstellung von IAM Rollen bereit.

Wenn Sie die in der ersten Option aufgeführten erforderlichen IAM Rollen noch nicht erstellt haben, tun Sie dies zuerst:

  1. Erstellen Sie die IAM AWSCloudFormationStackSetAdministrationRole Rolle im Administratorkonto (primär), indem Sie den folgenden CLI Befehl ausführen:

    $cdk deploy CdkStackSetAdminRole --profile administrator
  2. Erstellen Sie die IAM AWSCloudFormationStackSetExecutionRole Rolle in allen Zielkonten, auf denen Sie die Stack-Instances ausführen möchten. Führen Sie die folgenden CLI Befehle aus, um diese Rolle zu erstellen:

    $cdk deploy CdkStackSetExecRole \ --parameters AdministratorAccountId=<administrator-account-ID> \ --profile administrator $cdk deploy CdkStackSetExecRole \ --parameters AdministratorAccountId=<administrator-account-ID> \ --profile target

Weitere Informationen finden Sie in der AWS CloudFormation Dokumentation unter Gewähren von selbstverwalteten Berechtigungen.

DevOps Ingenieur

Löschen Sie vorhandene Stapel.

Wenn Sie bereits die erste Option verwendet haben, um DevOps Guru für alle Stack-Ressourcen zu aktivieren, können Sie den alten Stack mit dem folgenden Befehl löschen:

$cdk destroy CdkDevopsGuruStackMultiAccReg --profile administrator

Sie können den  RegionIds Parameter auch ändern, wenn Sie den Stack erneut bereitstellen, um den Fehler Stacks already exist zu vermeiden.

DevOps Ingenieur

Aktualisieren Sie den AWS CDK Stack mit einer Stack-Liste.

  1. Bearbeiten Sie die /amazon-devopsguru-cdk-samples/lib/cdk-devopsguru-multi-acc-reg-spec-stack.ts-Datei.

  2. Listen Sie unter ResourcesCloudFormation,StackNames, die Stacks auf, für die Sie DevOps Guru aktivieren möchten. Zu Demonstrationszwecken gibt der Parameter den CdkInfrastructureStack Stack an. Sie können diesen Eintrag jedoch nach Ihren Anforderungen bearbeiten.

  3. Speichern und schließen Sie die Datei.

  4. Um die Stack-Vorlage zu synthetisieren und zu aktualisieren, führen Sie folgenden Befehl aus:

     $cdk synth
Dateningenieur

Stellen Sie den AWS CDK Stack bereit, um DevOps Guru für bestimmte Stack-Ressourcen über mehrere Konten hinweg zu aktivieren.

Der AWS CDK CdkDevopsGuruStackMultiAccRegSpecStacks Stack ermöglicht DevOps Guru den Zugriff auf bestimmte Stack-Ressourcen über mehrere Konten hinweg. Führen Sie den folgenden Befehl aus, um den Stack bereitzustellen:

$cdk deploy CdkDevopsGuruStackMultiAccRegSpecStacks \ --profile administrator \ --parameters AdministratorAccountId=<administrator-account-ID> \ --parameters TargetAccountId=<target-account-ID> \ --parameters RegionIds="<region-1>,<region-2>"
Anmerkung

Wenn Sie diesen Stack bereits für Option 1 bereitgestellt haben, ändern Sie den RegionIds Parameter (stellen Sie sicher, dass Sie aus verfügbaren Regionen wählen), um den Fehler Stacks already exist zu vermeiden.

DevOps Ingenieur
AufgabeBeschreibungErforderliche Fähigkeiten

Stellen Sie das Beispiel für einen serverlosen Infrastrukturstapel bereit.

Der AWS CDK CdkInfrastructureStack Stack stellt serverlose Komponenten wie API Gateway, Lambda und eine DynamoDB-Tabelle bereit, um die Erkenntnisse von Guru zu demonstrieren. DevOps Führen Sie den folgenden Befehl aus, um den Stack bereitzustellen: 

$cdk deploy CdkInfrastructureStack --profile administrator
DevOps Ingenieur

Fügen Sie Beispieldatensätze in DynamoDB ein.

Führen Sie den folgenden Befehl aus, um die DynamoDB-Tabelle mit Beispieldatensätzen zu füllen. Geben Sie den richtigen Pfad für das Skript an. populate-shops-dynamodb-table.json

$aws dynamodb batch-write-item \ --request-items file://scripts/populate-shops-dynamodb-table.json \ --profile administrator

Die Ausgabe des Befehls sieht wie folgt aus:

{ "UnprocessedItems": {} }
DevOps Ingenieur

Überprüfen Sie die eingefügten Datensätze in DynamoDB.

Um zu überprüfen, ob die DynamoDB-Tabelle die Beispieldatensätze aus der populate-shops-dynamodb-table.json Datei enthält, greifen Sie auf die URL for the zu ListRestApiEndpointMonitorOperatorAPI, die als Ausgabe des AWS CDK Stacks veröffentlicht wird. Sie finden dies auch auf URL der Registerkarte Ausgaben der AWS CloudFormation Konsole für den CdkInfrastructureStack Stack. Die AWS CDK Ausgabe würde etwa wie folgt aussehen:

CdkInfrastructureStack.CreateRestApiMonitorOperatorEndpointD1D00045 = https://oure17c5vob.execute-api.<your-region>.amazonaws.com/prod/ CdkInfrastructureStack.ListRestApiMonitorOperatorEndpointABBDB8D8 = https://cdff8icfrn4.execute-api.<your-region>.amazonaws.com/prod/
DevOps Ingenieur

Warten Sie, bis die Ressourcen das Baselining abgeschlossen haben.

Dieser serverlose Stack hat einige Ressourcen. Wir empfehlen, dass Sie 2 Stunden warten, bevor Sie die nächsten Schritte ausführen. Wenn Sie diesen Stack in einer Produktionsumgebung bereitgestellt haben, kann es bis zu 24 Stunden dauern, bis das Baselining abgeschlossen ist. Dies hängt von der Anzahl der Ressourcen ab, die Sie in DevOps Guru für die Überwachung ausgewählt haben.

DevOps Ingenieur

Stellen Sie den AWS CDK Infrastruktur-Stack bereit

AufgabeBeschreibungErforderliche Fähigkeiten

Stellen Sie das Beispiel für einen serverlosen Infrastrukturstapel bereit.

Der AWS CDK CdkInfrastructureStack Stack stellt serverlose Komponenten wie API Gateway, Lambda und eine DynamoDB-Tabelle bereit, um die Erkenntnisse von Guru zu demonstrieren. DevOps Führen Sie den folgenden Befehl aus, um den Stack bereitzustellen: 

$cdk deploy CdkInfrastructureStack --profile administrator
DevOps Ingenieur

Fügen Sie Beispieldatensätze in DynamoDB ein.

Führen Sie den folgenden Befehl aus, um die DynamoDB-Tabelle mit Beispieldatensätzen zu füllen. Geben Sie den richtigen Pfad für das Skript an. populate-shops-dynamodb-table.json

$aws dynamodb batch-write-item \ --request-items file://scripts/populate-shops-dynamodb-table.json \ --profile administrator

Die Ausgabe des Befehls sieht wie folgt aus:

{ "UnprocessedItems": {} }
DevOps Ingenieur

Überprüfen Sie die eingefügten Datensätze in DynamoDB.

Um zu überprüfen, ob die DynamoDB-Tabelle die Beispieldatensätze aus der populate-shops-dynamodb-table.json Datei enthält, greifen Sie auf die URL for the zu ListRestApiEndpointMonitorOperatorAPI, die als Ausgabe des AWS CDK Stacks veröffentlicht wird. Sie finden dies auch auf URL der Registerkarte Ausgaben der AWS CloudFormation Konsole für den CdkInfrastructureStack Stack. Die AWS CDK Ausgabe würde etwa wie folgt aussehen:

CdkInfrastructureStack.CreateRestApiMonitorOperatorEndpointD1D00045 = https://oure17c5vob.execute-api.<your-region>.amazonaws.com/prod/ CdkInfrastructureStack.ListRestApiMonitorOperatorEndpointABBDB8D8 = https://cdff8icfrn4.execute-api.<your-region>.amazonaws.com/prod/
DevOps Ingenieur

Warten Sie, bis die Ressourcen das Baselining abgeschlossen haben.

Dieser serverlose Stack hat einige Ressourcen. Wir empfehlen, dass Sie 2 Stunden warten, bevor Sie die nächsten Schritte ausführen. Wenn Sie diesen Stack in einer Produktionsumgebung bereitgestellt haben, kann es bis zu 24 Stunden dauern, bis das Baselining abgeschlossen ist. Dies hängt von der Anzahl der Ressourcen ab, die Sie in DevOps Guru für die Überwachung ausgewählt haben.

DevOps Ingenieur
AufgabeBeschreibungErforderliche Fähigkeiten

Aktualisieren Sie den AWS CDK Infrastruktur-Stack.

Um DevOps Guru Insights auszuprobieren, können Sie einige Konfigurationsänderungen vornehmen, um ein typisches Betriebsproblem zu reproduzieren.

  1. Bearbeiten Sie die /amazon-devopsguru-cdk-samples/lib/infrastructure-stack.ts-Datei.

  2. Ändern Sie in DDB Table diesem Abschnitt die Lesekapazität für die DynamoDB-Tabelle von 5 auf 1.

  3. Speichern und schließen Sie die Datei.

  4. Führen Sie die folgenden Befehle aus, um den aktualisierten AWS CDK Infrastruktur-Stack zu synthetisieren und bereitzustellen:

    $cdk synth $cdk deploy CdkInfrastructureStack --profile administrator
DevOps Ingenieur

Injizieren Sie HTTP Anfragen auf demAPI.

Injizieren Sie eingehenden Datenverkehr in Form von HTTP Anfragen auf dem: ListRestApiMonitorOperatorEndpointxxxx API

  1. Bearbeiten Sie das Python-Skript/amazon-devopsguru-cdk-samples/scripts/sendAPIRequest.py.

  2. Aktualisieren Sie die url Variable mit dem API Link fürListRestApiMonitorOperatorEndpointxxxx. Sie finden dies URL in der Ausgabe des Befehls AWS CDK deploy oder in der AWS Cloudformation-Konsole auf der Registerkarte Ausgaben für den Stack.

  3. Speichern und schließen Sie die Datei.

  4. Führen Sie das Python-Skript mit dem folgenden Befehl aus:

    $python sendAPIRequest.py
  5. Stellen Sie sicher, dass Sie den Statuscode 200 erhalten.

  6. Möglicherweise müssen Sie das Skript über mehrere (vorzugsweise vier) Terminals ausführen, um eine hohe Datenverkehrsrate zu erreichen.

  7. Nachdem das Skript etwa 10 Minuten in einer Schleife ausgeführt wurde, können Sie auf der DevOps Guru-Konsole einen Einblick in die Betriebsabläufe erhalten.

DevOps Ingenieur

Sehen Sie sich DevOps Guru Insights an.

Unter Standardbedingungen zeigt das DevOps Guru-Dashboard im Zähler für laufende Einblicke Null an. Wenn es eine Anomalie erkennt, gibt es eine Warnung in Form eines Einblicks aus. Wählen Sie im Navigationsbereich Insights aus, um die Details der Anomalie anzuzeigen, einschließlich einer Übersicht, aggregierter Kennzahlen, relevanter Ereignisse und Empfehlungen. Weitere Informationen zur Überprüfung von Erkenntnissen finden Sie im Blogbeitrag Gewinnen betrieblicher Erkenntnisse AIOps mit Amazon DevOps Guru.

DevOps Ingenieur

Generieren Sie Einblicke in DevOps Guru

AufgabeBeschreibungErforderliche Fähigkeiten

Aktualisieren Sie den AWS CDK Infrastruktur-Stack.

Um DevOps Guru Insights auszuprobieren, können Sie einige Konfigurationsänderungen vornehmen, um ein typisches Betriebsproblem zu reproduzieren.

  1. Bearbeiten Sie die /amazon-devopsguru-cdk-samples/lib/infrastructure-stack.ts-Datei.

  2. Ändern Sie in DDB Table diesem Abschnitt die Lesekapazität für die DynamoDB-Tabelle von 5 auf 1.

  3. Speichern und schließen Sie die Datei.

  4. Führen Sie die folgenden Befehle aus, um den aktualisierten AWS CDK Infrastruktur-Stack zu synthetisieren und bereitzustellen:

    $cdk synth $cdk deploy CdkInfrastructureStack --profile administrator
DevOps Ingenieur

Injizieren Sie HTTP Anfragen auf demAPI.

Injizieren Sie eingehenden Datenverkehr in Form von HTTP Anfragen auf dem: ListRestApiMonitorOperatorEndpointxxxx API

  1. Bearbeiten Sie das Python-Skript/amazon-devopsguru-cdk-samples/scripts/sendAPIRequest.py.

  2. Aktualisieren Sie die url Variable mit dem API Link fürListRestApiMonitorOperatorEndpointxxxx. Sie finden dies URL in der Ausgabe des Befehls AWS CDK deploy oder in der AWS Cloudformation-Konsole auf der Registerkarte Ausgaben für den Stack.

  3. Speichern und schließen Sie die Datei.

  4. Führen Sie das Python-Skript mit dem folgenden Befehl aus:

    $python sendAPIRequest.py
  5. Stellen Sie sicher, dass Sie den Statuscode 200 erhalten.

  6. Möglicherweise müssen Sie das Skript über mehrere (vorzugsweise vier) Terminals ausführen, um eine hohe Datenverkehrsrate zu erreichen.

  7. Nachdem das Skript etwa 10 Minuten in einer Schleife ausgeführt wurde, können Sie auf der DevOps Guru-Konsole einen Einblick in die Betriebsabläufe erhalten.

DevOps Ingenieur

Sehen Sie sich DevOps Guru Insights an.

Unter Standardbedingungen zeigt das DevOps Guru-Dashboard im Zähler für laufende Einblicke Null an. Wenn es eine Anomalie erkennt, gibt es eine Warnung in Form eines Einblicks aus. Wählen Sie im Navigationsbereich Insights aus, um die Details der Anomalie anzuzeigen, einschließlich einer Übersicht, aggregierter Kennzahlen, relevanter Ereignisse und Empfehlungen. Weitere Informationen zur Überprüfung von Erkenntnissen finden Sie im Blogbeitrag Gewinnen betrieblicher Erkenntnisse AIOps mit Amazon DevOps Guru.

DevOps Ingenieur
AufgabeBeschreibungErforderliche Fähigkeiten

Ressourcen bereinigen und löschen.

Nachdem Sie dieses Muster durchgegangen sind, sollten Sie die von Ihnen erstellten Ressourcen entfernen, um weitere Kosten zu vermeiden. Führen Sie die folgenden Befehle aus:

$cdk destroy CdkDevopsGuruStackMultiAccReg --profile administrator $cdk destroy CdkDevopsguruStackOrgUnit --profile administrator $cdk destroy CdkDevopsGuruStackMultiAccRegSpecStacks --profile administrator $cdk destroy CdkInfrastructureStack --profile administrator $cdk destroy CdkStackSetAdminRole --profile administrator $cdk destroy CdkStackSetExecRole --profile administrator $cdk destroy CdkStackSetExecRole --profile target
DevOps Ingenieur

Bereinigen

AufgabeBeschreibungErforderliche Fähigkeiten

Ressourcen bereinigen und löschen.

Nachdem Sie dieses Muster durchgegangen sind, sollten Sie die von Ihnen erstellten Ressourcen entfernen, um weitere Kosten zu vermeiden. Führen Sie die folgenden Befehle aus:

$cdk destroy CdkDevopsGuruStackMultiAccReg --profile administrator $cdk destroy CdkDevopsguruStackOrgUnit --profile administrator $cdk destroy CdkDevopsGuruStackMultiAccRegSpecStacks --profile administrator $cdk destroy CdkInfrastructureStack --profile administrator $cdk destroy CdkStackSetAdminRole --profile administrator $cdk destroy CdkStackSetExecRole --profile administrator $cdk destroy CdkStackSetExecRole --profile target
DevOps Ingenieur

Zugehörige Ressourcen

DatenschutzNutzungsbedingungen für die WebsiteCookie-Einstellungen
© 2025, Amazon Web Services, Inc. oder Tochtergesellschaften. Alle Rechte vorbehalten.