Eine Ressource wird aktualisiert - Cloud Control API

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.

Eine Ressource wird aktualisiert

Verwenden Sie den update-resource Befehl, um Aktualisierungen an einer vorhandenen Ressource vorzunehmen. Dazu gehören Ressourcen, die ursprünglich nicht über die Cloud Control API bereitgestellt wurden.

Wichtig

Wir raten dringend davon ab, die Cloud Control API zu verwenden, um Ressourcen zu aktualisieren, die von anderen Diensten aktiv verwaltet werden. Dies kann zu unerwarteten Ergebnissen führen. Verwenden Sie die Cloud Control-API beispielsweise nicht, um Ressourcen zu aktualisieren, die derzeit Teil eines AWS CloudFormation Stacks sind.

Um eine bestehende Ressource zu aktualisieren, müssen Sie die ID der Ressource angeben. Weitere Hinweise zum Ermitteln der ID einer Ressource finden Sie unterUnter Verwendung des primären Bezeichners einer Ressource.

Beim Aktualisieren einer Ressource werden die Eigenschaftswerte der Ressource geändert. Die Eigenschaften einer Ressource sind in ihrem Ressourcentypschema definiert. Dazu gehören, ob die Eigenschaft erforderlich ist, gültige Werte und andere Eigenschaftseinschränkungen. Weitere Informationen zum Anzeigen von Definitionen von Ressourceneigenschaften finden Sie unterSchemas für Ressourcentypen anzeigen.

Das Patch-Dokument erstellen

Um eine Ressource zu aktualisieren, definieren Sie die Aktualisierungen zunächst als eine Liste von Patch-Vorgängen, die in einem JSON-Patch-Dokument enthalten sind. Dieses Patch-Dokument muss dem im RFC 6902 — JavaScript Object Notation (JSON) -Patch definierten Standard entsprechen.

Jeder Patch-Vorgang definiert eine einzelne Aktualisierung einer bestimmten Ressourceneigenschaft. Die folgenden Eigenschaften sind erforderlich:

  • op: Der Operationstyp. Die Cloud Control API unterstützt alle in RFC 6902 definierten Operationen:add,,, remove replacemove, copy und. test

  • path: Der Pfad zur Ressourceneigenschaft, relativ zum properties Abschnitt des Ressourcenschemas.

Je nach Vorgang können zusätzliche Eigenschaften erforderlich sein. Einzelheiten finden Sie in RFC 6902.

Wenn Sie den update-resource Befehl verwenden, können Sie das Patch-Dokument direkt als Zeichenfolge oder einen Speicherort angeben.

Im folgenden Beispiel wird die Aufbewahrungsrichtlinie einer AWS::Logs::LogGroupRessource mit CloudControlApiLogGroup dem Namen 90 Tage aktualisiert.

$ aws cloudcontrol update-resource --type-name AWS::Logs::LogGroup \ --identifier CloudControlApiLogGroup \ --patch-document '[{"op":"test","path":"RetentionInDays","value":90}]'

Wie aktualisiert die Cloud Control API Ressourcen

Um eine Ressource zu aktualisieren, ruft die Cloud Control API zunächst den aktuellen Status der Ressource ab und aktualisiert die Ressource dann in einem zweistufigen Prozess:

  • Die Cloud Control-API kombiniert die in der Aktualisierungsanforderung angegebenen Patch-Operationen mit dem aktuellen Status der Ressource, um den gewünschten Status der Ressource nach der Aktualisierung zu generieren. Operationen werden nacheinander in der Reihenfolge angewendet, in der sie im Patch-Dokument erscheinen. Jeder Vorgang in der Sequenz wird auf den aktuellen Status der Ressource angewendet. Der resultierende Ressourcenstatus wird zum Ziel des nächsten Vorgangs.

    Zu diesem Zeitpunkt schlägt die gesamte Aktualisierungsanforderung fehl, wenn:

    • Ein in der Anfrage enthaltener Patch-Vorgang ist ungültig.

    • Ein Patch-Vorgang dieses op Typs test schlägt fehl.

    In solchen Fällen schlägt die gesamte Aktualisierungsanforderung fehl und die Cloud Control API nimmt keine Aktualisierungen an der Ressource vor.

  • Die Cloud Control API ruft dann den Update-Handler des Ressourcentyps auf, um die Ressource zu aktualisieren.

    Wenn der Aktualisierungshandler zu irgendeinem Zeitpunkt fehlschlägt, setzt die Cloud Control-API die Ressource nicht in ihren vorherigen Zustand zurück.

Stellen Sie sich zum Beispiel das folgende Patch-Dokument vor, das für die Aktualisierung einer AWS::Logs::LogGroupRessource definiert ist. Das Dokument enthält zwei Patch-Operationen. Der erste Vorgang ist vom Typ test und überprüft, ob die Aufbewahrungsrichtlinie für die Ressource auf 3653 Tage festgelegt ist. Wenn das der Fall ist, besteht die Ressource den Test und die Cloud Control API fährt mit dem nächsten Vorgang fort. Dieser Vorgang ersetzt den aktuellen Wert der Aufbewahrungsrichtlinie durch 180 Tage. Wenn die Aufbewahrungsrichtlinie der Ressource auf einen anderen Wert als 3653 Tage festgelegt ist, schlägt der erste test Vorgang fehl und die Cloud Control API führt den zweiten replace Vorgang nie aus.

[ { "op": "test", "path": "/RetentionInDays", "value":3653 }, { "op": "replace", "path": "/RetentionInDays", "value":180 } ]

Nachverfolgung des Fortschritts einer Anfrage zur Aktualisierung einer Ressource

Der update-resource Befehl gibt ein ProgressEvent Objekt zurück, mit dem Sie den aktuellen Status Ihrer Ressourcenbetriebsanforderung verfolgen können. Weitere Informationen finden Sie unter Nachverfolgen des Fortschritts von Anfragen zu Ressourcenoperationen.