CreationPolicy Attribut - AWS CloudFormation

Dies ist das neue CloudFormation Template Reference Guide. Bitte aktualisieren Sie Ihre Lesezeichen und Links. Hilfe zu den ersten CloudFormation Schritten finden Sie im AWS CloudFormation Benutzerhandbuch.

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.

CreationPolicy Attribut

Ordnen Sie das CreationPolicy Attribut einer Ressource zu, um zu verhindern, dass ihr Status create complete erreicht, bis CloudFormation eine bestimmte Anzahl von Erfolgssignalen empfangen wird oder der Timeout-Zeitraum überschritten ist. Um eine Ressource zu signalisieren, können Sie das cfn-signal Hilfsskript oder die SignalResourceAPI verwenden. CloudFormation veröffentlicht gültige Signale für die Stack-Ereignisse, sodass Sie die Anzahl der gesendeten Signale verfolgen können.

Die Erstellungsrichtlinie wird nur aufgerufen, wenn die zugehörige Ressource CloudFormation erstellt wird. Derzeit sind die einzigen CloudFormation Ressourcen, die Erstellungsrichtlinien unterstützen, folgende:

Verwenden Sie das Attribut CreationPolicy, wenn vor der Stack-Erstellung auf Ressourcenkonfigurationsoptionen gewartet werden soll. Wenn Sie beispielsweise Softwareanwendungen auf einer EC2 Instance installieren und konfigurieren, sollten diese Anwendungen ausgeführt werden, bevor Sie fortfahren. In diesen Fällen können Sie der Instance ein CreationPolicy-Attribut hinzufügen und nach der Installation und Konfiguration der Anwendungen der Instance ein Erfolgssignal senden. Ein detailliertes Beispiel finden Sie unter Deployment Applications on Amazon EC2 with CloudFormation im AWS CloudFormation Benutzerhandbuch.

WorkSpaces Richtlinie zur Erstellung von Anwendungen

AppStream Amazon-Konfiguration für eine Erstellungsrichtlinie.

Syntax

JSON

{ "CreationPolicy": { "StartFleet": "Boolean" } }

YAML

CreationPolicy: StartFleet: Boolean
StartFleet

Startet die angegebene Flotte.

Required: No

Erstellungseigenschaften für Amazon EC2 Auto Scaling

Konfiguration von Amazon EC2 Auto Scaling für eine Erstellungsrichtlinie.

Syntax

JSON

"CreationPolicy" : { "AutoScalingCreationPolicy" : { "MinSuccessfulInstancesPercent" : Integer }, "ResourceSignal" : { "Count" : Integer, "Timeout" : String } }

YAML

CreationPolicy: AutoScalingCreationPolicy: MinSuccessfulInstancesPercent: Integer ResourceSignal: Count: Integer Timeout: String

Erstellungseigenschaften für Amazon EC2 Auto Scaling

Konfiguration von Amazon EC2 Auto Scaling für eine Erstellungsrichtlinie.

AutoScalingCreationPolicy

Gibt für eine neue Amazon-EC2-Auto-Scaling-Gruppe die Anzahl der Instances an, die den Erfolg signalisieren müssen, bevor der Status der Gruppe auf CREATE_COMPLETE festgelegt wird.

MinSuccessfulInstancesPercent

Gibt den prozentualen Anteil an Instances in Amazon EC2 Auto Scaling an, die den Erfolg signalisieren müssen, bevor der Status der Gruppe auf CREATE_COMPLETE festgelegt wird. Sie können einen Wert von 0 bis angeben100. CloudFormation rundet auf das nächste Zehntel Prozent. Wenn Sie beispielsweise fünf Instances mit einem minimalen erfolgreichen Prozentsatz von 50 erstellen, müssen drei Instances Erfolg signalisieren. Wenn eine Instanz innerhalb der in der Timeout Eigenschaft angegebenen Zeit kein Signal sendet, wird CloudFormation davon ausgegangen, dass die Instanz nicht erstellt wurde.

Standardwert: 100

Typ: Ganzzahl

Required: No

ResourceSignal

When CloudFormation erstellt die zugehörige Ressource und konfiguriert die Anzahl der erforderlichen Erfolgssignale und die CloudFormation Wartezeit auf diese Signale.

Count

Die Anzahl der Erfolgssignale, die empfangen CloudFormation werden müssen, bevor der Ressourcenstatus auf festgelegt wird. CREATE_COMPLETE Wenn die Ressource vor Ablauf des Timeout-Zeitraums ein Fehlersignal oder nicht die angegebene Anzahl von Signalen empfängt, CloudFormation schlägt die Ressourcenerstellung fehl und der Stack wird zurückgesetzt.

Standardwert: 1

Typ: Ganzzahl

Required: No

Timeout

Die Zeitspanne, in der auf CloudFormation die in der Eigenschaft angegebene Anzahl von Signalen gewartet wird. Count Der Timeout-Zeitraum beginnt nach der CloudFormation Stabilisierung der Ressource, und der Timeout läuft frühestens zu dem von Ihnen angegebenen Zeitpunkt ab, kann aber auch kurz danach eintreten. Die maximale Zeitspanne, die Sie angeben können, beträgt 12 Stunden.

Der Wert muss im Format ISO8601 Dauer in der Form: angegeben werdenPT#H#M#S, wobei jeder Wert für die Anzahl der Stunden, Minuten und Sekunden # steht. Um die besten Ergebnisse zu erzielen, geben Sie eine ausreichend lange Zeitspanne an, sodass genügend Zeit zum Starten der Instances gegeben ist. Ein kürzeres Zeitlimit können zu einem Rollback führen.

Standard: PT5M (5 Minuten)

Typ: Zeichenfolge

Required: No

Beispiele

Auto Scaling-Gruppe

Im folgenden Beispiel wird gezeigt, wie Sie einer Amazon-EC2-Auto-Scaling-Gruppe eine Erstellungsrichtlinie hinzufügen. Die Erstellungsrichtlinie erfordert drei Signale und hat ein Zeitüberschreitungslimit von 15 Minuten. Verwenden Sie das Hilfsskript cfn-signal, um zu signalisieren, dass ein Instance-Erstellungsprozess erfolgreich abgeschlossen wurde.

Damit Instances auf eine Elastic-Load-Balancing-Zustandsprüfung warten, bevor sie Erfolg melden, fügen Sie mit dem Hilfsskript cfn-init eine Zustandsprüfungsüberprüfung hinzu. Ein Beispiel finden Sie in den verify_instance_health Beispielvorlagen für fortlaufende Amazon EC2 Auto Scaling Scaling-Updates in unserem GitHub Repository.

JSON

"AutoScalingGroup": { "Type": "AWS::AutoScaling::AutoScalingGroup", "Properties": { "VPCZoneIdentifier":[ "subnetIdAz1", "subnetIdAz2", "subnetIdAz3" ], "LaunchTemplate":{ "LaunchTemplateId":{ "Ref":"logicalName" }, "Version":{ "Fn::GetAtt":[ "logicalName", "LatestVersionNumber" ] } }, "MinSize": "1", "MaxSize": "4" }, "CreationPolicy": { "ResourceSignal": { "Count": "3", "Timeout": "PT15M" } } }

YAML

AutoScalingGroup: Type: AWS::AutoScaling::AutoScalingGroup Properties: VPCZoneIdentifier: - subnetIdAz1 - subnetIdAz2 - subnetIdAz3 LaunchTemplate: LaunchTemplateId: !Ref logicalName Version: !GetAtt logicalName.LatestVersionNumber MinSize: '1' MaxSize: '4' CreationPolicy: ResourceSignal: Count: '3' Timeout: PT15M

WaitCondition

Das folgende Beispiel zeigt, wie eine Erstellungsrichtlinie zu einer Wartebedingung für CloudFormation Ressourcen außerhalb von Amazon EC2 hinzugefügt wird.

Um die Ressource WaitCondition zu signalisieren, verwenden Sie die API SignalResource. Diese API ist für die Arbeit mit WaitCondition-Ressourcen konzipiert, die Sie mit einer CreationPolicy konfigurieren.

JSON

"WaitCondition" : { "Type" : "AWS::CloudFormation::WaitCondition", "CreationPolicy" : { "ResourceSignal" : { "Timeout" : "PT15M", "Count" : "5" } } }

YAML

WaitCondition: Type: AWS::CloudFormation::WaitCondition CreationPolicy: ResourceSignal: Timeout: PT15M Count: 5