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.
Wechsel der Stack-Einstellungen von Attributen zu Data Bags
Wichtig
Der AWS OpsWorks Stacks 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 das AWS Support Team auf AWS re:POST
AWS OpsWorks Stacks bietet eine Vielzahl von Stapeleinstellungen für Ihre Chef-Rezepte. Diese Stack-Einstellungen umfassen Werte, wie:
-
Quell-URLs der Stack-Rezeptbücher
-
Layer-Volume-Konfigurationen
-
Instance-Hostnamen
-
Elastic Load Balancing DNS-Namen
-
Quell-URLs der Anwendungen
-
Benutzernamen
Aus Rezepten auf Stack-Einstellungen zu verweisen, sorgt für einen stabileren Rezeptcode und eine geringere Fehleranfälligkeit als festkodierte Stack-Einstellungen direkt in den Rezepten. In diesem Abschnitt wird beschrieben, wie Sie auf diese Stack-Einstellungen zugreifen und wie Sie den Wechsel von Attributen in Chef 11.10 und früheren Versionen für Linux zu Data Bags in Chef 12 Linux vollziehen.
In Chef 11.10 und früheren Versionen für Linux stehen Stack-Einstellungen als Chef-Attributenode
-Chef-Objekt oder über die Chef-Suche. Diese Attribute werden auf AWS OpsWorks Stacks-Instanzen in einer Reihe von JSON-Dateien im /var/lib/aws/opsworks/chef
Verzeichnis gespeichert. Weitere Informationen finden Sie unter Stack-Konfigurations- und Bereitstellungsattribute: Linux.
In Chef 12 Linux sind Stack-Einstellungen als Chef-Data Bags verfügbar/var/chef/runs/
Verzeichnis gespeichert, wobei run-ID
/data_bagsRun-ID eine eindeutige ID
ist, die AWS OpsWorks Stacks jedem Chef-Lauf auf einer Instanz zuweist. Stack-Einstellungen sind nicht mehr als Chef-Attribute verfügbar, sodass auf Stack-Einstellungen nicht mehr über das Chef-Objekt node
zugegriffen werden kann. Weitere Informationen hierzu finden Sie unter AWS OpsWorks Referenz für Stacks Data Bag.
In Chef 11.10 und früheren Versionen für Linux verwendet der folgende Rezept-Code zum Beispiel das Chef-Objekt node
, um Attribute abzurufen, die den Kurznamen und die Quell-URL einer Anwendung repräsentieren. Dann schreibt er mithilfe des Chef-Protokolls diese zwei Attributwerte:
Chef::Log.info ("********** The app's short name is '#{node['opsworks']['applications'].first['slug_name']}' **********") Chef::Log.info("********** The app's URL is '#{node['deploy']['simplephpapp']['scm']['repository']}' **********")
In Chef 12 Linux verwendet der folgende Rezept-Code den Suchindex aws_opsworks_app
, um die Inhalte des ersten Data Bag-Elements im Data Bag aws_opsworks_app
abzurufen. Der Code schreibt dann zwei Nachrichten in das Chef-Protokoll, eine mit dem Kurznamen der Data Bag-Inhalte der Anwendung und eine andere mit der Quell-URL der Data Bag-Inhalte der Anwendung:
app = search("aws_opsworks_app").first Chef::Log.info("********** The app's short name is '#{app['shortname']}' **********") Chef::Log.info("********** The app's URL is '#{app['app_source']['url']}' **********")
Wenn Sie den Rezept-Code, der auf Stack-Einstellungen von Chef 11.10 und früheren Versionen für Linux zugreift, auf Chef 12 für Linux migrieren wollen, müssen Sie den Code wie folgt ändern:
-
Greifen Sie auf Chef-Data Bags statt auf Chef-Attribute zu.
-
Verwenden Sie die Chef-Suche anstelle des Chef-Objekts
node
. -
Verwenden Sie AWS OpsWorks Stacks-Datentaschennamen wie
aws_opsworks_app
, anstatt AWS OpsWorks Stacks-Attributnamen wie und zu verwenden.opsworks
deploy
Weitere Informationen hierzu finden Sie unter AWS OpsWorks Referenz für Stacks Data Bag.