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 Stack-Bereitstellungszeit verstehen
Wenn Sie einen Stack erstellen, aktualisieren oder löschen, stellt er CloudFormation jede Ressource in Ihrer Vorlage bereit und meldet, dass der Stack-Vorgang abgeschlossen ist, wenn Ihre Ressourcen für den Datenverkehr bereit sind. In diesem Thema wird beschrieben, CloudFormation wie ein Stack bereitgestellt wird, was sich darauf auswirkt, wie lange ein Stack-Vorgang dauert, und wie Sie die Bereitstellungszeit verkürzen können.
Themen
Wie wird CloudFormation ein Stack bereitgestellt
CloudFormation liest die Abhängigkeiten zwischen Ressourcen in Ihrer Vorlage. Eine Ressource, die überRef, oder, auf eine andere Ressource verweistDependsOn, wird nach der Ressource bereitgestellt, auf die sie verweist. Fn::GetAtt Ressourcen, die nicht voneinander abhängig sind, werden parallel bereitgestellt.
CloudFormation Wendet für jede Ressource die Ressourcenkonfiguration an und bestätigt dann, dass die Ressource für den Datenverkehr bereit ist. CloudFormation fährt fort, sobald jede Ressource bereit ist, sodass abhängige Ressourcen so früh wie möglich gestartet werden. Dies hat zur Folge, dass Stacks mit längeren Abhängigkeitsketten die größte Verbesserung verzeichnen. Wenn jede Ressource im Stack bereit ist, CloudFormation meldet es, dass der Stack-Vorgang abgeschlossen ist.
Dieses Verhalten gilt automatisch für Stack-Operationen. Sie müssen Ihre Vorlagen nicht ändern oder Parameter festlegen.
Was beeinflusst die Bereitstellungszeit
- Abhängigkeitsketten
-
Die längste Kette von Ressourcen, die voneinander abhängen, legt die Mindestzeit für einen Stack-Vorgang fest. Ressourcen, die nicht Teil dieser Kette sind, werden parallel bereitgestellt und erhöhen in der Regel nicht die Gesamtzeit.
- Ressourcen, deren Bereitstellung länger dauert
-
Workloads, die Ressourcen wie Amazon RDS-Datenbank-Instances, Elastic Load Balancing Load Balancer, NAT-Gateways oder CloudFront Amazon-Distributionen enthalten, verbringen den größten Teil ihrer Bereitstellungszeit damit, darauf zu warten, dass diese Ressourcen für den Datenverkehr bereit sind.
- Ausgaben, die auf Ressourcenattribute verweisen
-
Wenn eine Stack-Ausgabe auf ein Ressourcenattribut verweist, z. B. mit
Fn::GetAtt, CloudFormation wartet, bis der Attributwert verfügbar ist, bevor der Stack-Vorgang abgeschlossen wird. Diese Wartezeit kann den Vorgang verlängern.
Möglichkeiten zur Verkürzung der Bereitstellungszeit
-
Verwenden Sie den Expressmodus für die Entwicklungsiteration. Der Expressmodus schließt die Stack-Operationen ab, sobald die Ressourcenkonfiguration CloudFormation angewendet wird, und die Ressourcen werden weiterhin im Hintergrund bereit. Weitere Informationen finden Sie unter Express-Modus.
-
Gruppieren Sie Ressourcen danach, wie oft sie sich ändern. Platzieren Sie Ressourcen, deren Bereitstellung länger dauert, z. B. Datenbanken, in separaten Stapeln von Ressourcen, die Sie häufig aktualisieren. Aktualisierungen des häufig geänderten Stacks beinhalten dann nicht die länger laufenden Ressourcen.
-
Entfernen Sie Abhängigkeiten, die Sie nicht benötigen. Deklarieren Sie
DependsOnnur, wenn eine Ressource auf eine andere Ressource warten muss. Weniger Abhängigkeiten ermöglichen CloudFormation die parallel Bereitstellung von mehr Ressourcen. -
Verweisen Sie in Ausgaben nur dann auf Ressourcenattribute, wenn Sie sie benötigen. Ausgaben, die auf Ressourcenattribute verweisen, können eine Stapeloperation verlängern, bis diese Werte verfügbar sind.