Reverter uma operação de importação - AWS CloudFormation

Reverter uma operação de importação

Para reverter uma operação de importação, especifique uma política de exclusão Retain para o recurso que você deseja remover do modelo para garantir que ele seja preservado ao excluí-lo da pilha.

Reverter uma operação de importação usando a AWS Management Console

  1. Especifique uma DeletionPolicy Retain para os recursos que você deseja remover da pilha. No modelo de exemplo a seguir, GamesTable é o destino desta operação de reversão.

    exemplo JSON
    { "AWSTemplateFormatVersion": "2010-09-09", "Description": "Import test", "Resources": { "ServiceTable":{ "Type":"AWS::DynamoDB::Table", "Properties":{ "TableName":"Service", "AttributeDefinitions":[ { "AttributeName":"key", "AttributeType":"S" } ], "KeySchema":[ { "AttributeName":"key", "KeyType":"HASH" } ], "ProvisionedThroughput":{ "ReadCapacityUnits":5, "WriteCapacityUnits":1 } } }, "GamesTable": { "Type": "AWS::DynamoDB::Table", "DeletionPolicy": "Retain", "Properties": { "TableName": "Games", "AttributeDefinitions": [ { "AttributeName": "key", "AttributeType": "S" } ], "KeySchema": [ { "AttributeName": "key", "KeyType": "HASH" } ], "ProvisionedThroughput": { "ReadCapacityUnits": 5, "WriteCapacityUnits": 1 } } } } }
  2. Abra o console do AWS CloudFormation para executar uma atualização de pilha para aplicar a política de exclusão.

    1. Na página Stacks (Pilhas) com a pilha selecionada, escolha Update (Atualizar) e selecione Update stack (standard) (Atualizar pilha (padrão)).

    2. Em Prepare template (Preparar modelo), escolha Replace current template (Substituir modelo atual).

    3. Em Specify template (Especificar modelo), forneça o modelo de origem atualizado com o atributo DeletionPolicy na GamesTable e escolha Next (Próximo).

      • Escolha Amazon S3 URL (URL do Amazon S3) e especifique o URL para o modelo de origem atualizado na caixa de texto.

      • Escolha Upload a template file (Fazer upload de um arquivo de modelo) e procure o arquivo de modelo de origem atualizado.

    4. Na página Specify stack details (Especificar detalhes da pilha) nenhuma alteração é necessária. Escolha Next (Próximo).

    5. Na página Configure stack options (Configurar opções de pilha) nenhuma alteração é necessária. Escolha Next (Próximo).

    6. Na página Review (Revisar) stack_name revise suas alterações. Se o seu modelo contém recursos do IAM, selecione I acknowledge that this template may create IAM resources (Eu reconheço que este modelo pode criar recursos do IAM) para especificar que você deseja usar recursos do IAM no modelo. Para obter mais informações sobre o uso de recursos do IAM em modelos, consulte Controlar o acesso com o AWS Identity and Access Management. Depois, atualize sua pilha de origem criando um conjunto de alterações ou atualize sua pilha de origem diretamente.

  3. Remova o recurso, os parâmetros relacionados e as saídas do modelo de pilha. Neste exemplo, o modelo agora se parece com o seguinte.

    exemplo JSON
    { "AWSTemplateFormatVersion": "2010-09-09", "Description": "Import test", "Resources": { "ServiceTable":{ "Type":"AWS::DynamoDB::Table", "Properties":{ "TableName":"Service", "AttributeDefinitions":[ { "AttributeName":"key", "AttributeType":"S" } ], "KeySchema":[ { "AttributeName":"key", "KeyType":"HASH" } ], "ProvisionedThroughput":{ "ReadCapacityUnits":5, "WriteCapacityUnits":1 } } } } }
  4. Repita a etapa 2 para excluir o recurso (GamesTable) e os parâmetros relacionados e as saídas da pilha.

Reverter uma operação de importação usando a AWS CLI

  1. Especifique uma DeletionPolicy Retain para os recursos que você deseja remover da pilha. No modelo de exemplo a seguir, GamesTable é o destino desta operação de reversão.

    exemplo JSON
    { "AWSTemplateFormatVersion": "2010-09-09", "Description": "Import test", "Resources": { "ServiceTable":{ "Type":"AWS::DynamoDB::Table", "Properties":{ "TableName":"Service", "AttributeDefinitions":[ { "AttributeName":"key", "AttributeType":"S" } ], "KeySchema":[ { "AttributeName":"key", "KeyType":"HASH" } ], "ProvisionedThroughput":{ "ReadCapacityUnits":5, "WriteCapacityUnits":1 } } }, "GamesTable": { "Type": "AWS::DynamoDB::Table", "DeletionPolicy": "Retain", "Properties": { "TableName": "Games", "AttributeDefinitions": [ { "AttributeName": "key", "AttributeType": "S" } ], "KeySchema": [ { "AttributeName": "key", "KeyType": "HASH" } ], "ProvisionedThroughput": { "ReadCapacityUnits": 5, "WriteCapacityUnits": 1 } } } } }
  2. Atualize a pilha para aplicar a política de exclusão ao recurso.

    update-stack --stack-name "stack-name"
  3. Remova o recurso, os parâmetros relacionados e as saídas do modelo de pilha. Neste exemplo, o modelo agora se parece com o seguinte.

    exemplo JSON
    { "AWSTemplateFormatVersion": "2010-09-09", "Description": "Import test", "Resources": { "ServiceTable":{ "Type":"AWS::DynamoDB::Table", "Properties":{ "TableName":"Service", "AttributeDefinitions":[ { "AttributeName":"key", "AttributeType":"S" } ], "KeySchema":[ { "AttributeName":"key", "KeyType":"HASH" } ], "ProvisionedThroughput":{ "ReadCapacityUnits":5, "WriteCapacityUnits":1 } } } } }
  4. Atualize a pilha para excluir o recurso (GamesTable) e os parâmetros relacionados, além das saídas da pilha.

    update-stack --stack-name "stack-name"