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.
Priorité des attributs
Important
Le AWS OpsWorks Stacks service a atteint sa fin de vie 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 l' AWS Support équipe sur AWS Re:Post
Si un attribut est défini de façon unique, Chef l'intègre simplement dans l'objet de nœud. Toutefois, n'importe quelle source d'attribut peut définir un attribut, il est donc possible pour le même attribut d'avoir plusieurs définitions avec des valeurs différentes. Par exemple, le livre de recettes intégré apache2
définit node[:apache][:keepalive]
, mais vous pouvez également définir cet attribut dans le JSON personnalisé ou dans un livre de recettes personnalisé. Si un attribut possède plusieurs définitions, elles sont évaluées dans un ordre qui est décrit plus loin et l'objet de nœud reçoit la définition avec la priorité la plus élevée.
Un attribut est défini comme suit :
node.
type
[:attribute
][:sub_attribute
][:...
]=value
Si un attribut possède plusieurs définitions, le type détermine quelle définition est prioritaire, et cette définition est incorporée dans l'objet du nœud. AWS OpsWorks Stacks utilise les types d'attributs suivants :
-
default —Il s'agit du type le plus courant, et cela signifie essentiellement « utiliser cette valeur si l'attribut n'a pas déjà été défini ». Si toutes les définitions d'un attribut sont de type
default
, la première définition dans l'ordre d'évaluation a priorité et les valeurs suivantes sont ignorées. Notez que AWS OpsWorks Stacks définit toutes les définitions d'attributs de configuration et de déploiement de la pile sur ledefault
type. -
normal —Les attributs de ce type remplacent tous
default
normal
les attributs définis précédemment dans l'ordre d'évaluation. Par exemple, si le premier attribut provient d'un livre de recettes intégré et possède un typedefault
et si un deuxième attribut a été défini par l'utilisateur avec un typenormal
, la deuxième définition sera prioritaire. -
set —Il s'agit d'un type obsolète que vous pourriez voir dans les anciens livres de cuisine. Il a été remplacé par
normal
, qui a la même priorité.
Chef prend en charge plusieurs types d'attribut supplémentaires, dont un type automatic
qui est prioritaire sur toutes les autres définitions d'attributs. Les définitions d'attributs générées par l'outil Ohai de Chef ont toutes le type automatic
et sont donc en lecture seule. Ce n'est généralement pas un problème, car il n'y a aucune raison de les remplacer et ils sont distincts des attributs de AWS OpsWorks Stacks. Toutefois, veillez à nommer vos attributs personnalisés des livres de recettes différemment des attributs Ohai. Pour plus d'informations, consultez À propos des attributs
Note
L'outil Ohai est un exécutable que vous pouvez exécuter à partir de la ligne de commande. Pour lister les attributs Ohai d'une instance, connectez-vous à l'instance et exécutez ohai
dans une fenêtre de terminal. Sachez qu'elle produit une très longue sortie.
Voici les étapes qui intègrent les différentes définitions d'attributs à l'objet de nœud :
-
Fusionnez les attributs personnalisés de configuration avec les attributs de configuration et de déploiement de la pile.
Les attributs JSON personnalisés peuvent être définis pour la pile ou pour un déploiement particulier. Ils sont les premiers dans l'ordre d'évaluation et ont le type
normal
. Si un ou plusieurs attributs de configuration de la pile sont aussi définis dans le JSON personnalisé, les valeurs du JSON personnalisé ont priorité. Sinon, AWS OpsWorks Stacks intègre simplement les attributs personnalisés de JSON dans la configuration de la pile. -
Fusionnez les attributs de déploiement personnalisés JSON avec les attributs de déploiement et de configuration de la pile.
Les attributs de déploiement personnalisés JSON ont le type
normal
, ce qui signifie qu'ils ont la priorité sur le JSON de configuration de pile intégré et personnalisé et sur le JSON de déploiement intégré. -
Fusionnez les attributs de configuration et de déploiement de pile dans l'objet de nœud de l'instance.
-
Fusionnez les attributs des livres de recettes intégrés de l'instance dans l'objet de nœud.
Les attributs intégrés des livres de recettes ont tous le type
default
. Si le ou les attributs intégrés du livre de recettes sont également définis dans les attributs de configuration et de déploiement de la pile, généralement parce que vous les avez définis avec du code JSON personnalisé, les définitions de configuration de la pile ont priorité sur les définitions du livre de recettes intégrées. Tous les autres attributs intégrés des livres de recettes sont simplement intégrés dans l'objet de nœud. -
Fusionnez les attributs des livres de recettes personnalisés de l'instance dans l'objet de nœud.
Les attributs personnalisés des livres de recettes ont généralement le type
normal
oudefault
. Des attributs uniques sont intégrés dans l'objet de nœud. Si des attributs de livre de recettes personnalisés sont également définis aux étapes 1 à 3 (généralement parce que vous les avez définis avec du JSON personnalisé), la priorité dépend du type de l'attribut de livre de recettes personnalisé :-
Les attributs définis aux étapes 1 à 3 ont priorité sur les attributs personnalisés du livre de recettes
default
. -
Les
normal
attributs personnalisés du livre de cuisine ont priorité sur les définitions des étapes 1 à 3.
-
Important
N'utilisez pas les attributs personnalisés default
des livres de recettes pour remplacer les attributs intégrés des livres de recettes ou les attributs de configuration de la pile. Dans la mesure où les attributs personnalisés des livres de recettes sont évalués en dernier, les attributs default
ont la priorité la plus basse et ne peuvent rien remplacer.