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.
Erkennen von Abweichungen auf einem gesamten CloudFormation Stack
Das Durchführen einer Abweichungserkennung für einen Stack ermittelt, ob der Stack von seiner erwarteten Vorlagenkonfiguration abgewichen ist, und gibt detaillierte Informationen über den Abweichungsstatus jeder Ressource im Stack zurück, die die Abweichungserkennung unterstützt.
So erkennen Sie eine Abweichung für einen gesamten Stack mithilfe der AWS Management Console
Öffnen Sie die - AWS CloudFormation Konsole unter https://console.aws.amazon.com/cloudformation
. -
Wählen Sie in der Liste der Stacks den Stack aus, für den Sie die Abweichungserkennung durchführen möchten. Wählen Sie im Stack-Detailbereich die Option Stack actions (Stack-Aktionen) und dann Detect drift (Abweichung erkennen) aus.
CloudFormation zeigt eine Informationsleiste an, die angibt, dass die Abweichungserkennung für den ausgewählten Stack initiiert wurde.
-
Warten Sie, bis den Abweichungserkennungsvorgang CloudFormation abgeschlossen hat. Wenn der Abweichungserkennungsvorgang abgeschlossen ist, CloudFormation aktualisiert den Abweichungsstatus und die letzte Abweichungsprüfungszeit für Ihren Stack. Diese Felder werden im Abschnitt Overview (Übersicht) des Bereichs Stack info (Stack-Informationen) der Stack-Detailseite aufgeführt.
Der Vorgang der Abweichungserkennung kann mehrere Minuten dauern, abhängig von der Anzahl der im Stack enthaltenen Ressourcen. Sie können nur einen einzigen Abweichungserkennungsvorgang für einen bestimmten Stack gleichzeitig ausführen. CloudFormation setzt den Abweichungserkennungsvorgang fort, auch wenn Sie die Informationsleiste schließen.
-
Überprüfen Sie die Ergebnisse der Abweichungserkennung für den Stack und seine Ressourcen. Wenn Sie Ihren Stack ausgewählt haben, wählen Sie im Menü Stack actions (Stack-Aktionen) die Option View drift results (Abweichungsergebnisse anzeigen) aus.
CloudFormation listet den Gesamtabweichungsstatus des Stacks zusätzlich zum letzten Mal auf, als die Abweichungserkennung für den Stack oder eine seiner einzelnen Ressourcen initiiert wurde. Ein Stack gilt als abgewichen, wenn eine oder mehrere seiner Ressourcen abgewichen sind.
Im Abschnitt Ressourcenabweichungsstatus CloudFormation listet jede Stack-Ressource, ihren Abweichungsstatus und das letzte Mal auf, wenn die Abweichungserkennung für die Ressource initiiert wurde. Die logische ID und die physische ID jeder Ressource werden angezeigt, um Ihnen bei der Identifizierung zu helfen. Darüber hinaus CloudFormation zeigt für Ressourcen mit dem Status MODIFIED Details zur Ressourcenabweichung an.
Sie können die Ressourcen basierend auf ihrem Abweichungsstatus mithilfe der Spalte Drift status (Abweichungsstatus) sortieren.
-
So zeigen Sie die Details zu einer geänderten Ressource an
-
Wenn Sie die geänderten Ressourcen ausgewählt haben, wählen Sie View drift details (Abweichungsdetails anzeigen) aus.
CloudFormation zeigt die Abweichungsdetailseite für diese Ressource an. Diese Seite führt den erwarteten und aktuellen Eigenschaftswert der Ressource sowie alle Unterschiede zwischen den beiden auf.
Zum Hervorheben eines Unterschieds wählen Sie im Abschnitt Differences (Unterschiede) den Eigenschaftsnamen aus.
-
Zusätzliche Eigenschaften werden in der Spalte Current (Aktuell) des Abschnitts Details grün hinterlegt.
-
Gelöschte Eigenschaften werden in der Spalte Expected (Erwartet) des Abschnitts Details rot markiert.
-
Eigenschaften, deren Wert geändert wurde, sind in den beiden Spalten Expected (Erwartet) und Current (Aktuell) gelb markiert.
-
-
-
So erkennen Sie eine Abweichung für einen gesamten Stack mithilfe der AWS CLI
Verwenden Sie die folgenden aws cloudformation
Befehle AWS CLI, um eine Abweichung für einen gesamten Stack mithilfe der zu erkennen:
-
detect-stack-drift
, um einen Abweichungserkennungsvorgang für einen Stack einzuleiten. -
describe-stack-drift-detection-status
, um den Status des Stapelabweichungserkennungs-Vorgangs zu überwachen. -
describe-stack-resource-drifts
, um die Details der Stapelabweichungserkennung zu überprüfen.
-
Verwenden Sie die
detect-stack-drift
, um eine Abweichung für einen gesamten Stack zu erkennen. Geben Sie den Stack-Namen oder ARN an. Sie können auch die logischen IDs aller bestimmten Ressourcen angeben, die Sie als Filter für diese Abweichungserkennung verwenden möchten.$
aws cloudformation detect-stack-drift --stack-name
my-stack-with-resource-drift
{ "StackDriftDetectionId": "624af370-311a-11e8-b6b7-500cexample" }
-
Da die Erkennung der Stack-Abweichung lange dauern kann, verwenden Sie
describe-stack-drift-detection-status
, um den Status des Vorgangs zu überwachen. Dieser Befehl übernimmt die ID der Stack-Abweichungserkennung, die vom Befehldetect-stack-drift
zurückgegeben wird.Im folgenden Beispiel haben wir die vom obigen Beispiel
detect-stack-drift
zurückgegebene Stack-Abweichungserkennungs-ID verwendet und als Parameter andescribe-stack-drift-detection-status
übergeben. Der Parameter gibt Vorgangsdetails zurück, die zeigen, dass der Abweichungserkennungs-Vorgang abgeschlossen ist, eine einzelne Stack-Ressource abgewichen ist und dass der gesamte Stack als Ergebnis als abgewichen gilt.$
aws cloudformation describe-stack-drift-detection-status --stack-drift-detection-id
624af370-311a-11e8-b6b7-500cexample
{ "StackId": "arn:aws:cloudformation:us-east-1:099908667365:stack/my-stack-with-resource-drift/489e5570-df85-11e7-a7d9-50example", "StackDriftDetectionId": "624af370-311a-11e8-b6b7-500cexample", "StackDriftStatus": "DRIFTED", "Timestamp": "2018-03-26T17:23:22.279Z", "DetectionStatus": "DETECTION_COMPLETE", "DriftedStackResourceCount": 1 }
-
Wenn die Stapelabweichungserkennung abgeschlossen ist, verwenden Sie den Befehl
describe-stack-resource-drifts
, um die Ergebnisse zu überprüfen, einschließlich der tatsächlichen und erwarteten Eigenschaftswerte für Ressourcen, die abgewichen sind.Das folgende Beispiel verwendet den Parameter
stack-resource-drift-status-filters
, um Informationen zur Stack-Abweichung für die Ressourcen abzurufen, die geändert oder gelöscht wurden. Die Anfrage gibt Informationen über die eine Ressource zurück, die geändert wurde, einschließlich Details über zwei ihrer Eigenschaften, deren Werte geändert wurden. Es wurden keine Ressourcen gelöscht.$
aws cloudformation describe-stack-resource-drifts --stack-name
my-stack-with-resource-drift
--stack-resource-drift-status-filters MODIFIED DELETED{ "StackResourceDrifts": [ { "StackId": "arn:aws:cloudformation:us-east-1:099908667365:stack/my-stack-with-resource-drift/489e5570-df85-11e7-a7d9-50example", "ActualProperties": "{\"ReceiveMessageWaitTimeSeconds\":0,\"DelaySeconds\":120,\"RedrivePolicy\":{\"deadLetterTargetArn\":\"arn:aws:sqs:us-east-1:099908667365:my-stack-with-resource-drift-DLQ-1BCY7HHD5QIM3\",\"maxReceiveCount\":12},\"MessageRetentionPeriod\":345600,\"MaximumMessageSize\":262144,\"VisibilityTimeout\":60,\"QueueName\":\"my-stack-with-resource-drift-Queue-494PBHCO76H4\"}", "ResourceType": "AWS::SQS::Queue", "Timestamp": "2018-03-26T17:23:34.489Z", "PhysicalResourceId": "https://sqs.us-east-1.amazonaws.com/099908667365/my-stack-with-resource-drift-Queue-494PBHCO76H4", "StackResourceDriftStatus": "MODIFIED", "ExpectedProperties": "{\"ReceiveMessageWaitTimeSeconds\":0,\"DelaySeconds\":20,\"RedrivePolicy\":{\"deadLetterTargetArn\":\"arn:aws:sqs:us-east-1:099908667365:my-stack-with-resource-drift-DLQ-1BCY7HHD5QIM3\",\"maxReceiveCount\":10},\"MessageRetentionPeriod\":345600,\"MaximumMessageSize\":262144,\"VisibilityTimeout\":60,\"QueueName\":\"my-stack-with-resource-drift-Queue-494PBHCO76H4\"}", "PropertyDifferences": [ { "PropertyPath": "/DelaySeconds", "ActualValue": "120", "ExpectedValue": "20", "DifferenceType": "NOT_EQUAL" }, { "PropertyPath": "/RedrivePolicy/maxReceiveCount", "ActualValue": "12", "ExpectedValue": "10", "DifferenceType": "NOT_EQUAL" } ], "LogicalResourceId": "Queue" } ] }