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 im AWS CloudFormation Benutzerhandbuch.
Das cfn-init
Hilfsskript liest Vorlagen-Metadaten aus dem AWS::CloudFormation::Init
Schlüssel und verhält sich entsprechend, um:
-
Ruft Metadaten ab und analysiert 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.
Anmerkung
Wenn cfn-init
Sie eine bestehende Datei aktualisieren, erstellt es eine Sicherungskopie der Originaldatei im selben Verzeichnis mit der Erweiterung.bak. 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|-s
stack.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
cfn-init
benötigt keine Anmeldeinformationen, sodass Sie die --credential-file
Optionen--access-key
, --secret-key
--role
, oder 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 | Beschreibung | 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 Proxy (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 das Debuggen von Fällen, in denen AnmerkungUm Initialisierungsereignisse zu debuggen, sollten Sie die Option aktivieren. |
Nein |
|
Zeigt eine Hilfsnachricht an und wird beendet. |
Nein |
Beispiele
Amazon Linux-Beispiele
Die folgenden Beispiele zeigen die UserData
Eigenschaft einer EC2 Instance, die das der WebServerInstance
Ressource zugeordnete InstallAndRun
Configset 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::Join
-Funktion.
UserData: !Base64 'Fn::Join': - '' - - | #!/bin/bash -xe - '' - yum install -y aws-cfn-bootstrap - '/opt/aws/bin/cfn-init -v ' - ' --stack ' - !Ref 'AWS::StackName' - ' --resource WebServerInstance ' - ' --configsets InstallAndRun ' - ' --region ' - !Ref 'AWS::Region' - |+
JSON
UserData
-Eigenschaft mit der intrinsischen Fn::Sub
-Funktion.
{ "UserData": { "Fn::Base64": { "Fn::Sub": [ "#!/bin/bash -x\n# Install the files and packages from the metadata\n/opt/aws/bin/cfn-init -v --stack ${AWS::StackName} --resource MyInstance --region ${AWS::Region}\n\n# Signal the status from cfn-init\n/opt/aws/bin/cfn-signal -e $? --stack ${AWS::StackName} --resource MyInstance --region ${AWS::Region}\n", {} ] } } }
YAML
UserData
-Eigenschaft mit der intrinsischen Fn::Sub
-Funktion.
UserData: !Base64 'Fn::Sub': - > #!/bin/bash -x # Install the files and packages from the metadata /opt/aws/bin/cfn-init -v --stack ${AWS::StackName} --resource MyInstance --region ${AWS::Region} # Signal the status from cfn-init /opt/aws/bin/cfn-signal -e $? --stack ${AWS::StackName} --resource MyInstance --region ${AWS::Region} - {}
Zugehörige Ressourcen
Sie können auch unser GitHub Repository besuchen, um Beispielvorlagen herunterzuladen, die verwendencfn-init
, einschließlich der folgenden Vorlagen.
Informationen zu Windows-Vorlagen finden Sie unter Arbeiten mit Microsoft Windows-Stack-Vorlagen im AWS CloudFormation Benutzerhandbuch.