Direkt zum Inhalt

Warum erhalte ich einen MaxNumberOfConfigurationRecordersExceededException-Fehler, wenn ich einen AWS Config-Konfigurations-Recorder erstelle?

Lesedauer: 3 Minute
0

Wenn ich einen AWS Config-Konfigurations-Recorder erstelle, erhalte ich einen MaxNumberOfConfigurationRecordersExceededException-Fehler.

Kurzbeschreibung

AWS Config verwendet einen Konfigurations-Recorder, um Änderungen an der Ressourcenkonfiguration aufzuzeichnen. AWS Config erlaubt nur einen Konfigurations-Recorder pro AWS-Region in einem Konto. Der Fehler MaxNumberOfConfigurationRecordersExceededException weist darauf hin, dass du keinen neuen Konfigurations-Recorder erstellen kannst, da in deinem Konto für die Region bereits einer vorhanden ist. Der Fehler tritt unabhängig davon auf, ob du die AWS Config-Konsole, das AWS Command Line Interface (AWS CLI) oder AWS CloudFormation verwendest, um den Recorder zu erstellen.

Lösung

Hinweis: Wenn du beim Ausführen von AWS CLI-Befehlen Fehlermeldungen erhältst, findest du weitere Informationen dazu unter Problembehandlung bei der AWS CLI. Stelle außerdem sicher, dass du die neueste Version der AWS CLI-Version verwendest.

Um den Fehler MaxNumberOfConfigurationRecordersExceededException zu beheben und einen neuen Konfigurations-Recorder zu erstellen, musst du den vorhandenen Konfigurations-Recorder ermitteln und löschen.

Hinweis: Du kannst einen Konfigurations-Recorder nicht von der Konsole löschen. Du musst programmgesteuert Löschungen durchführen.

Stelle zunächst sicher, dass die richtigen AWS Identity and Access Management (IAM, Identitäts- und Zugriffsmanagement)-Berechtigungen vorhanden sind, um die erforderlichen Befehle auszuführen. Anschließend kannst du die AWS CLI oder CloudFormation verwenden, um den vorhandenen Konfigurations-Recorder zu ermitteln und zu löschen.

IAM-Berechtigungen

Um einen Konfigurationsrekorder zu beschreiben und zu löschen, füge die folgenden IAM-Berechtigungen hinzu:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "VisualEditor0",
            "Effect": "Allow",
            "Action": [
                "config:DescribeConfigurationRecorders",
                "config:DeleteConfigurationRecorder"
            ],
            "Resource": "*"
        }
    ]
}

Um einen Konfigurations-Recorder zu starten und zu stoppen, füge die folgenden IAM-Berechtigungen hinzu:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "VisualEditor0",
            "Effect": "Allow",
            "Action": [
                "config:PutConfigurationRecorder",
                "iam:PassRole",
                "config:DescribeConfigurationRecorders",
                "config:StopConfigurationRecorder",
                "config:StartConfigurationRecorder",
                "config:DeleteConfigurationRecorder"
            ],
            "Resource": "*"
        }
    ]
}

Ermitteln und Löschen eines Konfigurations-Recorders bei AWS CLI

Führe die folgenden Schritte aus.

Ermitteln des Namens des vorhandenen Konfigurations-Recorders

Um den vorhandenen Konfigurations-Recorder in einer bestimmten Region zu ermitteln, führe den Befehl describe-configuration-recorders aus:

$aws configservice describe-configuration-recorders --region RegionID

Hinweis: Ersetze RegionID durch deine Region.

Überprüfe die Ausgabe. Der Name des vorhandenen Konfigurations-Recorders wird in der Ausgabe neben name aufgeführt.

Löschen des vorhandenen Konfigurations-Recorders

Um den vorhandenen Konfigurations-Recorder zu löschen, führe den Befehl delete-configuration-recorder aus:

$aws configservice delete-configuration-recorder --configuration-recorder-name RecorderName --region RegionID

Hinweis: Ersetze RecorderName durch den Namen deines Konfigurations-Recorders und RegionID durch deine Regions-ID. Wenn du den Recorder erfolgreich gelöscht hast, gibt der Befehl delete-configuration-recorder keine Ausgabe zurück.

Verwendung von API-Aufrufen zum Starten und Stoppen des Recorders

Führe den folgenden Befehl aus, um einen Konfigurations-Recorder zu starten:

$aws configservice start-configuration-recorder --configuration-recorder-name RecorderName

Hinweis: Ersetze RecorderName durch den Namen deines Konfigurations-Recorders.

Führe den folgenden Befehl aus, um einen Konfigurations-Recorder zu stoppen:

$aws configservice stop-configuration-recorder --configuration-recorder-name RecorderName

Hinweis: Ersetze RecorderName durch den Namen deines Konfigurations-Recorders.

Ermitteln und Löschen eines Konfigurations-Recorders bei CloudFormation

Wenn du eine CloudFormation StackSet-Vorlage verwendest, führe die folgenden Aufgaben aus, um AWS Config zu aktivieren und um so einen Konfigurations-Recorder zu ermitteln und zu löschen.

Um Codelogik zum Ermitteln und Löschen eines Konfigurations-Recorders zu schreiben, verwende eine von AWS Lambda unterstützte benutzerdefinierte Ressource, um Folgendes auszuführen:

Nachdem du den Konfigurations-Recorder gelöscht hast, kannst du das Modul cfn-response module für benutzerdefinierte Ressourcen verwenden, um einen neuen Konfigurations-Recorder zu erstellen. Anschließend kannst du die StartConfigurationRecorder-API ausführen, um den Recorder zu starten.

Ähnliche Informationen

Erstellung benutzerdefinierter CloudFormation-Ressourcen mit Python, AWS Lambda und crhelper

AWS OFFICIALAktualisiert vor einem Jahr