Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Utilisation de Custom JSON
Important
Le AWS OpsWorks Stacks le service a pris fin le 26 mai 2024 et a été désactivé tant pour les nouveaux clients que pour les clients existants. Nous recommandons vivement aux clients de migrer leurs charges de travail vers d'autres solutions dès que possible. Si vous avez des questions sur la migration, contactez le AWS Support L'équipe sur AWS Re:post ou via
Plusieurs AWS OpsWorks Les actions Stacks vous permettent de spécifier des options personnaliséesJSON, qui AWS OpsWorks Stacks s'installe sur des instances et peut être utilisé par des recettes.
Vous pouvez définir une option personnalisée JSON dans les situations suivantes :
-
Lorsque vous créez, mettez à jour ou clonez une pile.
AWS OpsWorks Stacks installe la personnalisation JSON sur toutes les instances pour tous les événements du cycle de vie ultérieurs.
-
Lorsque vous exécutez une commande déploiement ou de pile.
AWS OpsWorks Stacks transmet la personnalisation JSON aux instances uniquement pour cet événement.
L'objet personnalisé JSON doit être représenté par un JSON objet valide et mis en forme comme tel. Par exemple :
{ "att1": "value1", "att2": "value2" ... }
AWS OpsWorks Stacks stocke des produits personnalisés JSON aux emplacements suivants :
Sur les instances Linux :
-
/var/chef/runs/
run-ID
/attribs.json -
/var/chef/runs/
run-ID
/nodes/hostname
.json
Sur les instances Windows :
-
drive
:\chef\runs\run-ID
\attribs.json -
drive
:\chef\runs\run-ID
\nodes\hostname
.json
Note
Dans Chef 11.10 et versions antérieures pour Linux, la personnalisation se JSON trouve dans le chemin suivant sur les instances Linux, les instances Windows ne sont pas disponibles et il n'existe aucun attribs.json
fichier. Les journaux sont stockés dans le même dossier ou répertoire que leJSON. Pour plus d'informations sur la personnalisation JSON dans Chef 11.10 et les versions antérieures pour Linux, voir Remplacer les attributs par des journaux personnalisés JSON et Chef Logs.
/var/lib/aws/opsworks/chef/
hostname
.json
Dans les chemins précédents, run-ID
est un identifiant unique qui AWS OpsWorks Stacks attribue à chaque Chef exécuté sur une instance, et hostname
est le nom d'hôte de l'instance.
Pour accéder aux recettes personnalisées JSON à partir de Chef, utilisez node
la syntaxe Chef standard.
Par exemple, supposons que vous souhaitiez définir des paramètres simples pour une application que vous souhaitez déployer, par exemple si l'application est visible au départ et les couleurs initiales de premier plan et d'arrière plan de l'application. Supposons que vous définissiez ces paramètres d'application avec un JSON objet comme suit :
{ "state": "visible", "colors": { "foreground": "light-blue", "background": "dark-gray" } }
Pour déclarer la coutume JSON pour une pile :
-
Sur la page de la pile, choisissez Paramètres de pile, puis Modifier.
-
Pour Custom Chef JSON, tapez l'JSONobjet, puis choisissez Enregistrer.
Note
Vous pouvez déclarer la personnalisation JSON au niveau du déploiement, de la couche et de la pile. Vous pouvez le faire si vous souhaitez que certaines personnalisations JSON ne soient visibles que pour un déploiement ou une couche individuels. Vous pouvez également, par exemple, remplacer temporairement la valeur personnalisée JSON déclarée au niveau de la pile par la valeur personnalisée JSON déclarée au niveau de la couche. Si vous déclarez une valeur personnalisée JSON à plusieurs niveaux, la valeur personnalisée JSON déclarée au niveau du déploiement remplace toute valeur personnalisée JSON déclarée à la fois au niveau de la couche et au niveau de la pile. La JSON valeur personnalisée déclarée au niveau de la couche remplace toute valeur personnalisée JSON déclarée uniquement au niveau de la pile.
Pour utiliser le plugin AWS OpsWorks Console Stacks JSON pour spécifier la personnalisation d'un déploiement, sur la page Déployer l'application, choisissez Avancé. Tapez la JSON personnalisation dans le JSON champ Custom Chef, puis choisissez Enregistrer.
Pour utiliser le plugin AWS OpsWorks Console Stacks JSON pour spécifier la personnalisation d'une couche, sur la page Couches, choisissez Paramètres pour la couche souhaitée. Tapez la personnalisation JSON dans le JSON champ Personnalisé, puis choisissez Enregistrer.
Pour plus d’informations, consultez Modification de OpsWorks la configuration d'une couche et Déploiement d'applications.
Lorsque vous exécutez une commande de déploiement ou de pile, les recettes peuvent récupérer ces valeurs personnalisées en utilisant node
la syntaxe Chef standard, qui correspond directement à la hiérarchie de l'JSONobjet personnalisé. Par exemple, le code de recette suivant écrit des messages dans le journal Chef concernant les JSON valeurs personnalisées précédentes :
Chef::Log.info("********** The app's initial state is '#{node['state']}' **********") Chef::Log.info("********** The app's initial foreground color is '#{node['colors']['foreground']}' **********") Chef::Log.info("********** The app's initial background color is '#{node['colors']['background']}' **********")
Cette approche peut être utile pour transmettre des données aux recettes. AWS OpsWorks Stacks ajoute ces données à l'instance, et les recettes peuvent récupérer les données en utilisant la node
syntaxe standard de Chef.
Note
JSONLa version personnalisée est limitée à 120 Ko. Si vous avez besoin de plus de capacité, nous vous recommandons de stocker certaines données sur Amazon Simple Storage Service (Amazon S3). Vos recettes personnalisées peuvent ensuite utiliser le AWSCLI