Utilisation des versions de paramètre - AWS Systems Manager

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 des versions de paramètre

Chaque fois que vous modifiez la valeur d'un paramètre, Parameter Store, une des fonctionnalités de AWS Systems Manager, crée une nouvelle version du paramètre et conserve les versions précédentes. Lorsque vous créez un paramètre, Parameter Store lui affecte la version 1. Lorsque vous modifiez la valeur du paramètre, Parameter Store augmente automatiquement le numéro de version d'une unité. Vous pouvez afficher les détails, y compris les valeurs, de toutes les versions de l'historique d'un paramètre.

Vous pouvez également spécifier la version d'un paramètre à utiliser dans les commandes API et les documents SSM, par exemple : ssm:MyParameter:3. Vous pouvez spécifier un nom et un numéro de version spécifiques pour un paramètre dans les appels d'API et les documents SSM. Si vous ne spécifiez pas de numéro de version, le système utilise automatiquement la dernière version. Si vous spécifiez le numéro d'une version qui n'existe pas, le système renvoie une erreur au lieu de revenir à la version la plus récente ou à la version par défaut du paramètre.

Vous pouvez également utiliser les versions de paramètre pour savoir le nombre de fois un paramètre a été modifié sur une période donnée. Les versions de paramètres fournissent également une couche de protection si une valeur de paramètre est accidentellement modifiée.

Vous pouvez créer et conserver jusqu'à 100 versions d'un paramètre. Lorsque 100 versions d'un paramètre ont été créées, à chaque nouvelle création d'une version, la version la plus ancienne du paramètre est supprimée de l'historique pour faire place à la nouvelle version.

Cette règle s'applique sauf lorsqu'il existe déjà 100 versions de paramètres dans l'historique et qu'une étiquette est affectée à la version la plus ancienne d'un paramètre. Dans ce cas, cette version n'est pas supprimée de l'historique et la demande de création d'une nouvelle version de paramètre échoue. Cela vise à empêcher la suppression de versions de paramètres auxquelles des étiquettes critiques ont été affectées. Pour continuer à créer de nouveaux paramètres, déplacez d'abord l'étiquette de la version la plus ancienne du paramètre vers une version plus récente pour l'utiliser dans vos opérations. Pour obtenir des informations sur le déplacement d'étiquettes de paramètres, consultez Déplacer une étiquette de paramètre (console) et Déplacer une étiquette de paramètre (AWS CLI).

Les procédures suivantes vous montrent comment modifier un paramètre, puis vérifier qu'une nouvelle version a été créée. Vous pouvez utiliser les commandes get-parameter et get-parameters pour afficher les versions de paramètres. Pour obtenir des exemples sur l'utilisation de ces commandes, consultez GetParameter et GetParameters dans la Référence des API AWS Systems Manager

Créer une nouvelle version d'un paramètre (console)

Vous pouvez utiliser la console Systems Manager pour créer une nouvelle version d'un paramètre et afficher l'historique des versions d'un paramètre.

Pour créer une nouvelle version d'un paramètre
  1. Ouvrez la console AWS Systems Manager à l'adresse https://console.aws.amazon.com/systems-manager/.

  2. Dans le panneau de navigation, sélectionnez Parameter Store.

    -ou-

    Si la page d'accueil AWS Systems Manager s'ouvre en premier, sélectionnez l'icône de menu ( 
    The menu icon
  ) pour ouvrir le panneau de navigation, puis sélectionnez Parameter Store.

  3. Sélectionnez le nom d'un paramètre que vous avez créé précédemment. Pour plus d'informations sur la création d'un nouveau paramètre, consultez Création de paramètres Systems Manager.

  4. Sélectionnez Edit (Modifier).

  5. Dans la boîte de dialogue Value (Valeur), saisissez une nouvelle valeur, puis sélectionnez Save changes (Enregistrer les modifications).

  6. Sélectionnez le nom du paramètre que vous venez de mettre à jour. Dans l'onglet Présentation, vérifiez que le numéro de version a été incrémenté de 1, et vérifiez la nouvelle valeur.

  7. Pour afficher l'historique de toutes les versions d'un paramètre, sélectionnez l'onglet Historique .

Référence d'une version de paramètre

Vous pouvez référencer des versions de paramètres spécifiques dans les commandes, les appels d'API et les documents SSM en utilisant le format suivant : ssm:parameter-name:version-number.

Dans l'exemple suivant, la run-instances command Amazon Elastic Compute Cloud (Amazon EC2) utilise la version 3 du paramètre golden-ami.

Linux & macOS
aws ec2 run-instances \ --image-id resolve:ssm:/golden-ami:3 \ --count 1 \ --instance-type t2.micro \ --key-name my-key-pair \ --security-groups my-security-group
Windows
aws ec2 run-instances ^ --image-id resolve:ssm:/golden-ami:3 ^ --count 1 ^ --instance-type t2.micro ^ --key-name my-key-pair ^ --security-groups my-security-group
Note

L'utilisation de resolve et d'une valeur de paramètre ne fonctionne qu'avec l'option --image-id et un paramètre qui contient une Amazon Machine Image (AMI) comme valeur. Pour de plus amples informations, veuillez consulter Prise en charge de paramètres natifs pour les ID d'Amazon Machine Image.

Voici un exemple pour spécifier la version 2 d'un paramètre nommé MyRunCommandParameter dans un document SSM.

YAML
--- schemaVersion: '2.2' description: Run a shell script or specify the commands to run. parameters: commands: type: String description: "(Required) Specify a shell script or a command to run." displayType: textarea default: "{{ssm:MyRunCommandParameter:2}}" mainSteps: - action: aws:runShellScript name: RunScript inputs: runCommand: - "{{commands}}"
JSON
{ "schemaVersion": "2.2", "description": "Run a shell script or specify the commands to run.", "parameters": { "commands": { "type": "String", "description": "(Required) Specify a shell script or a command to run.", "displayType": "textarea", "default": "{{ssm:MyRunCommandParameter:2}}" } }, "mainSteps": [ { "action": "aws:runShellScript", "name": "RunScript", "inputs": { "runCommand": [ "{{commands}}" ] } } ] }