Schritt 8: Aktualisieren des Rezeptbuchs, um Dateien zu erstellen und zu kopieren - AWS OpsWorks

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.

Schritt 8: Aktualisieren des Rezeptbuchs, um Dateien zu erstellen und zu kopieren

Wichtig

Das Tool AWS OpsWorks Stacks Der Dienst hat am 26. Mai 2024 das Ende seiner Lebensdauer erreicht und wurde sowohl für neue als auch für bestehende Kunden deaktiviert. Wir empfehlen Kunden dringend, ihre Workloads so bald wie möglich auf andere Lösungen zu migrieren. Wenn Sie Fragen zur Migration haben, wenden Sie sich an AWS Support Team ein AWS Re:post oder durch AWS Premium-Support.

Aktualisieren Sie Ihr Rezeptbuch, indem Sie ein Rezept hinzufügen, das zwei Dateien zur Instance hinzufügt. Die erste Ressource des Rezepts erstellt eine Datei vollständig mit Rezeptcode. Dies ähnelt der Ausführung der Linux-Befehle cat, echo bzw. touch oder der Windows-Befehle echo bzw. fsutil. Die Methode eignet sich, wenn Sie wenige, kleine oder einfache Dateien haben. Die zweite Ressource des Rezepts kopiert eine Datei aus dem Rezeptbuch in ein anderes Verzeichnis der Instance. Dies ähnelt der Ausführung des Linux-Befehls cp oder des Windows-Befehls copy. Diese Methode eignet sich, wenn Sie viele, große oder komplexe Dateien haben.

Schließen Sie Schritt 7: Aktualisieren des Rezeptbuchs, um ein Verzeichnis zu erstellen ab, um sicherzustellen, dass das übergeordnete Verzeichnis der Dateien bereits vorhanden ist, ehe Sie diesen Schritt durchführen.

So aktualisieren Sie das Rezeptbuch auf der Instance und führen das neue Rezept aus:
  1. Erstellen Sie auf Ihrer lokalen Workstation im Verzeichnis opsworks_cookbook_demo ein Unterverzeichnis namens files.

  2. Erstellen Sie im Unterverzeichnis files eine Datei mit dem Name hello.txt und dem folgenden Text: Hello, World!

  3. Erstellen Sie im Unterverzeichnis recipes im Verzeichnis opsworks_cookbook_demo eine Datei namens create_files.rb mit dem folgenden Code. Weitere Informationen finden Sie unter file und cookbook_file.

    file "Create a file" do content "<html>This is a placeholder for the home page.</html>" group "root" mode "0755" owner "ec2-user" path "/tmp/create-directory-demo/index.html" end cookbook_file "Copy a file" do group "root" mode "0755" owner "ec2-user" path "/tmp/create-directory-demo/hello.txt" source "hello.txt" end

    Die file-Ressource erstellt eine Datei im angegebenen Pfad. Die cookbook_file-Ressource kopiert die Datei aus dem Verzeichnis files, das Sie gerade im Rezeptbuch erstellt haben, in ein anderes Verzeichnis auf der Instance (Chef erwartet ein Unterverzeichnis mit dem Standardnamen files, aus dem Dateien kopiert werden).

  4. Führen Sie am Terminal oder an der Eingabeaufforderung den Befehl tar aus, um eine neue Version der Datei opsworks_cookbook_demo.tar.gz zu erstellen, die das Verzeichnis opsworks_cookbook_demo und seinen aktualisierten Inhalt enthält.

  5. Laden Sie die aktualisierte Datei opsworks_cookbook_demo.tar.gz in Ihren S3-Bucket hoch.

  6. Folgen Sie den Anweisungen in Schritt 5: Aktualisieren des Rezeptbuchs auf der Instance und Ausführen des Rezepts, um das Rezeptbuch auf der Instance zu aktualisieren und das Rezept auszuführen. Geben Sie im Schritt „Rezept ausführen” für Recipes to execute (Auszuführende Rezepte) opsworks_cookbook_demo::create_files ein.

So testen Sie das Rezept:
  1. Melden Sie sich bei der Instance an, sofern Sie noch nicht angemeldet sind.

  2. Führen Sie an der Eingabeaufforderung nacheinander die folgenden Befehle aus, um das Hinzufügen der neuen Dateien zu bestätigen:

    sudo cat /tmp/create-directory-demo/index.html sudo cat /tmp/create-directory-demo/hello.txt

    Der Inhalt der Datei wird angezeigt:

    <html>This is a placeholder for the home page.</html> Hello, World!

Im nächsten Schritt aktualisieren Sie das Rezeptbuch, um einen Befehl auf der Instance auszuführen.