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 CloudFormationBenutzerhandbuch.
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.
cfn-init
In einer CloudFormation Vorlage können Sie AWS::CloudFormation::Init innerhalb des Metadata Abschnitts einer EC2 Amazon-Ressource Initialisierungsaufgaben definieren. Weitere Informationen finden Sie unter AWS::CloudFormation::Init.
Das Hilfsskript cfn-init liest die Metadaten der Vorlage aus dem Schlüssel AWS::CloudFormation::Init und handelt entsprechend:
-
Rufen Sie Metadaten ab und analysieren Sie sie von CloudFormation
-
Pakete installieren
-
Dateien auf die Festplatte zu schreiben
-
Enable/disable and start/stop-Services
Das cfn-init Hilfsskript wird normalerweise aus den Benutzerdaten einer EC2 Amazon-Instance oder einer Startvorlage ausgeführt.
Wenn Sie mit der Verwendung von Hilfsskripten noch nicht vertraut sind, empfehlen wir Ihnen, zunächst das EC2 Tutorial Bereitstellen von Anwendungen auf Amazon im AWS CloudFormation Benutzerhandbuch zu absolvieren.
Anmerkung
Wenn Sie cfn-init verwenden, um eine bestehende Datei zu aktualisieren, wird eine Sicherungskopie der Originaldatei im selben Verzeichnis mit der Erweiterung .bak erstellt. Wenn Sie beispielsweise / aktualisieren, werden bei der Aktion zwei Dateien erzeugt: path/to/file_name/ enthält den ursprünglichen Inhalt der Datei, path/to/file_name.bak/ den aktualisierten Inhalt.path/to/file_name
Syntax
cfn-init --stack|-sstack.name.or.id\ --resource|-rlogical.resource.id\ --regionregion\ --access-keyaccess.key\ --secret-keysecret.key\ --rolerolename\ --credential-file|-fcredential.file\ --configsets|-cconfig.sets\ --url|-uservice.url\ --http-proxyHTTP.proxy\ --https-proxyHTTPS.proxy\ --verbose|-v
Anmerkung
Für cfn-init sind keine Berechtigungsnachweise erforderlich, so dass Sie die Optionen --access-key, --secret-key, --role oder --credential-file nicht verwenden müssen. Wenn jedoch keine Anmeldeinformationen angegeben werden, prüft CloudFormation auf Stack-Mitgliedschaft und schränkt den Geltungsbereich des Aufrufs desjenigen Stacks ein, zu dem die Instance gehört. Weitere Informationen finden Sie unter Berechtigungen für Helferobjektskripte.
Optionen
| Name | Description | Erforderlich |
|---|---|---|
|
|
Stackname oder Stack-ID. Typ: Zeichenfolge Standard: Keiner Beispiel: |
Ja |
|
|
Die logische Ressourcen-ID der Ressource, die die Metadaten enthält. Typ: Zeichenfolge Beispiel: |
Ja |
|
|
Der zu verwendende CloudFormation regionale Endpunkt. Typ: Zeichenfolge Standardwert: Beispiel: |
Nein |
|
|
AWS Zugriffsschlüssel für ein Konto mit Typ: Zeichenfolge |
Nein |
|
|
AWS geheimer Zugriffsschlüssel, der dem angegebenen AWS Zugriffsschlüssel entspricht. Typ: Zeichenfolge |
Nein |
|
|
Der Name einer IAM-Rolle, die mit dieser Instance verknüpft ist. Typ: Zeichenfolge Bedingun: Der Dateiparameter Anmeldeinformationen hat Vorrang vor diesem Parameter. |
Nein |
|
|
Eine Datei mit einem geheimen Zugriffsschlüssel und einem Zugriffsschlüssel. Der Dateiparameter Anmeldeinformationen hat Vorrang vor den Parametern Rolle, Zugriffschlüssel und geheimer Zugriffschlüssel. Typ: Zeichenfolge |
Nein |
|
|
Eine durch Kommas getrennte Liste der auszuführenden configsets (in Reihenfolge). Typ: Zeichenfolge Standardwert: |
Nein |
|
|
Der zu verwendende CloudFormation Endpunkt. Typ: Zeichenfolge |
Nein |
|
|
Ein HTTP-Proxys (Nicht-SSL). Verwenden Sie das folgende Format: Typ: Zeichenfolge |
Nein |
|
|
Ein HTTPS-Proxy. Verwenden Sie das folgende Format: Typ: Zeichenfolge |
Nein |
|
|
Ausführliche Ausgabe. Dies ist nützlich für die Fehlersuche in Fällen, in denen die Initialisierung von AnmerkungUm Initialisierungsereignisse zu debuggen, sollten Sie |
Nein |
|
Zeigt eine Hilfsnachricht an und wird beendet. |
Nein |
Beispiele
Amazon Linux Beispiele
Die folgenden Beispiele zeigen die UserData Eigenschaft einer EC2 Instanz, die das der WebServerInstance Ressource zugeordnete InstallAndRun Konfigurationsset ausführt.
Um die neueste Version aufzunehmen, fügen Sie yum install -y aws-cfn-bootstrap zu UserData hinzu.
JSON
UserData-Eigenschaft mit der intrinsischen Fn::Join-Funktion.
{ "UserData": { "Fn::Base64": { "Fn::Join": [ "", [ "#!/bin/bash -xe\n", "", "yum install -y aws-cfn-bootstrap", "/opt/aws/bin/cfn-init -v ", " --stack ", { "Ref": "AWS::StackName" }, " --resource WebServerInstance ", " --configsets InstallAndRun ", " --region ", { "Ref": "AWS::Region" }, "\n" ] ] } } }
YAML
UserData-Eigenschaft mit der intrinsischen Fn::Sub-Funktion.
UserData: !Base64 Fn::Sub: |- #!/bin/bash -xe yum update -y aws-cfn-bootstrap # Install the files and packages from the metadata /opt/aws/bin/cfn-init -v --stack ${AWS::StackName} --resource WebServerInstance --configsets InstallAndRun --region ${AWS::Region}
Zugehörige Ressourcen
Ein Tutorial mit einer Beispielvorlage finden Sie unter Deployment Applications on Amazon EC2 im AWS CloudFormation Benutzerhandbuch.
Ein Windows Beispiel finden Sie im Benutzerhandbuch unter WindowsBootstrapping-basierte CloudFormation Stacks.AWS CloudFormation
Sie können auch unser GitHub Repository besuchen, um Beispielvorlagen herunterzuladen, die verwendet werdencfn-init, einschließlich der folgenden Vorlagen.
Beispiele für LAMP-Stack-Vorlagen, die verwendet cfn-init werden, finden Sie unter ec2-lamp-server