Como trabalhar com versões de parâmetros no Parameter Store - AWS Systems Manager

Como trabalhar com versões de parâmetros no Parameter Store

Cada vez que você edita o valor de um parâmetro, o Parameter Store, um recurso do AWS Systems Manager, cria uma versão do parâmetro e retém as versões anteriores. Quando você cria um parâmetro, o Parameter Store atribui a versão 1 a esse parâmetro. Quando você altera o valor do parâmetro, o Parameter Store incrementa automaticamente em um o número da versão. Você pode visualizar os detalhes, incluindo os valores, de todas as versões no histórico de um parâmetro.

Você também pode especificar a versão de um parâmetro a ser usado em comandos da API e documentos do SSM; por exemplo: ssm:MyParameter:3. Você pode especificar o nome de um parâmetro e um número de versão específico em chamadas de API e em documentos do SSM. Se não especificar um número de versão, o sistema usará automaticamente a versão mais recente. Se você especificar o número para uma versão que não existe, o sistema retornará um erro em vez de retornar para a versão mais recente ou padrão do parâmetro.

Também é possível usar versões de parâmetros para ver quantas vezes um parâmetro mudou ao longo de um período. As versões de parâmetros também fornecem uma camada de proteção quando o valor de um parâmetro é alterado acidentalmente.

Você pode criar e manter um máximo de 100 versões de um parâmetro. Depois de criar 100 versões de um parâmetro, cada vez que você criar uma nova versão, a versão mais antiga do parâmetro será removida do histórico para abrir espaço para a nova versão.

Uma exceção a isso é quando já existem 100 versões de parâmetro no histórico e um rótulo de parâmetro é atribuído à versão mais antiga de um parâmetro. Nesse caso, essa versão não é removida do histórico e a solicitação para criar uma nova versão do parâmetro falha. Essa proteção é para evitar que versões de parâmetros com rótulos de missão crítica atribuídos a eles sejam excluídas. Para continuar criando novos parâmetros, primeiro mova o rótulo da versão mais antiga do parâmetro para um mais recente para uso em suas operações. Para obter informações sobre como mover rótulos de parâmetros, consulte Mover um rótulo de parâmetro usando o console e Mover um rótulo de parâmetro usando a AWS CLI.

Os procedimentos a seguir mostram como editar um parâmetro e, em seguida, verificar se uma nova versão foi criada. Você pode usar oget-parametereget-parameterspara visualizar versões de parâmetros. Para obter exemplos sobre como usar esses comandos, consulte GetParameter e GetParameters na Referência da API do AWS Systems Manager

Criar uma nova versão de um parâmetro usando o console

É possível usar o console do Systems Manager para criar uma versão de um parâmetro e visualizar o histórico de versões de um parâmetro.

Para criar uma versão de uma parâmetro
  1. Abra o console do AWS Systems Manager em https://console.aws.amazon.com/systems-manager/.

  2. No painel de navegação, escolha Parameter Store.

  3. Escolha o nome do parâmetro que você criou anteriormente. Para obter mais informações sobre como criar um novo parâmetro, consulte Criar parâmetros do Parameter Store no Systems Manager.

  4. Selecione a opção Editar.

  5. Na caixa Value (Valor), digite um novo valor e escolha Save changes (Salvar alterações).

  6. Escolha o nome do parâmetro que você acabou de atualizar. Na guia Overview (Visão geral), verifique se o número da versão aumentou com um incremento de 1 e examine o novo valor.

  7. Para exibir o histórico de todas as versões de um parâmetro, escolha a guia History (Histórico).

Fazer referência à versão de um parâmetro

É possível fazer referência a versões de parâmetros específicos em comandos, chamadas de API e documentos do SSM usando o seguinte formato: ssm:parameter-name:version-number.

No exemplo a seguir, o Amazon Elastic Compute Cloud (Amazon EC2)run-instances commandO usa a versão 3 do parâmetrogolden-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
nota

O uso de resolve e um valor de parâmetro funciona somente com a opção --image-id e um parâmetro que contém uma Amazon Machine Image (AMI) como seu valor. Para ter mais informações, consulte Como usar o suporte a parâmetros nativos no Parameter Store para IDs de imagem de máquina da Amazon.

Veja a seguir um exemplo para especificar a versão 2 de um parâmetro nomeado MyRunCommandParameter em um documento 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}}" ] } } ] }