As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
AWSPremiumSupport-ResizeNitroInstance
Descrição
O runbook AWSPremiumSupport-ResizeNitroInstance
fornece uma solução automatizada para redimensionar instâncias do Amazon Elastic Compute Cloud (Amazon EC2) criadas no sistema Nitro.
Para reduzir o risco potencial de perda de dados e tempo de inatividade, o runbook verifica o seguinte:
-
Comportamento da interrupção da instância.
-
Se a instância fizer parte de um grupo do Amazon EC2 Auto Scaling e estiver no modo
standby
. -
Estado da instância e locação.
-
O tipo de instância para o qual você deseja alterar é compatível com o número de interfaces de rede atualmente conectadas à sua instância.
-
A arquitetura do processador e o tipo de virtualização do tipo de instância atual e de destino são os mesmos.
-
Se a instância estiver em execução, ela está passando todas as verificações de status.
-
O tipo de instância que você selecionou não está disponível na mesma zona de disponibilidade.
Se o Amazon EC2 não passar nas verificações de status após alterar o tipo de instância, o runbook reverte automaticamente para o tipo de instância anterior.
Por padrão, esse runbook não alterará o tipo de instância se estiver em execução e os volumes de armazenamento de instância estiverem anexados. O runbook também não alterará o tipo de instância se a instância fizer parte de uma pilha do AWS CloudFormation. Se você quiser alterar qualquer um desses comportamentos, especifique yes
para os parâmetros AllowInstanceStoreInstances
e AllowCloudFormationInstances
.
O runbook fornece duas maneiras diferentes de especificar o tipo de instância para a qual você deseja alterar:
-
Para automações simples direcionadas a uma única instância, especifique o tipo de instância para a qual você deseja alterar usando o parâmetro
TargetInstanceTypeFromParameter
. -
Para executar automações em grande escala para alterar o tipo de instância de várias instâncias, especifique o tipo de instância usando o parâmetro
TargetInstanceTypeFromTagValue
. Para obter informações sobre como executar automações em grande escala, consulte Executar automações em grande escala.
Se você não especificar um valor para nenhum dos parâmetros, ocorrerá uma falha na automação.
Importante
O acesso aos runbooks da AWSPremiumSupport-*
requer uma assinatura do Enterprise ou Business Support. Para obter mais informações, consulte Comparar PlanosAWS Support
Considerações
-
Recomendamos fazer backup da sua instância antes de usar este runbook.
-
Para obter informações sobre compatibilidade para alterar os tipos de instância, consulte Compatibilidade para alterar o tipo de instância.
-
Se a automação falhar e voltar para o tipo de instância original, consulte Solucionar problemas de alteração de tipo de instância.
-
A alteração do tipo de instância exige que o runbook interrompa sua instância. Quando uma instância é interrompida ou encerrada, os dados nos volumes de armazenamento da instância são perdidos. Além disso, todos os endereços IPv4 públicos atribuídos automaticamente são liberados. Para obter informações sobre o que acontece quando você interrompe uma instância do Mac, consulte Interromper e encerrar sua instância.
-
Ao usar o parâmetro
SkipInstancesWithTagKey
, você pode ignorar instâncias que têm uma chave de tag específica do Amazon EC2 aplicada.
Execute esta automação (console)
Tipo de documento
Automation
Proprietário
Amazon
Plataformas
Linux, Windows
Parâmetros
-
AutomationAssumeRole
Tipo: sequência
Descrição: (opcional) o nome do recurso da Amazon (ARN) do perfil do AWS Identity and Access Management (IAM) que permite que o Systems Manager Automation realize ações em seu nome. Se nenhum perfil for especificado, o Systems Manager Automation usa as permissões do usuário que inicia este runbook.
-
Reconhecer
Tipo: sequência
Descrição: (obrigatório) digite
yes
para confirmar que sua instância será interrompida se estiver em execução no momento. -
AllowInstanceStoreInstances
Tipo: sequência
Valores válidos: não | sim
Padrão: não
Descrição: (opcional) se você especificar
yes
, você permite que o runbook seja executado em instâncias que têm volumes de armazenamento de instâncias anexados. -
AllowCloudFormationInstances
Tipo: sequência
Valores válidos: não | sim
Padrão: não
Descrição: (opcional) se você especificar
yes
, o runbook é executado em instâncias que fazem parte de uma pilha do AWS CloudFormation. -
DryRun
Tipo: sequência
Valores válidos: não | sim
Padrão: não
Descrição: (opcional) se você especificar
yes
, o runbook valida os requisitos de redimensionamento sem fazer alterações no tipo de instância. -
InstanceId
Tipo: sequência
Descrição: (obrigatório) o ID da instância do Amazon EC2 cujo tipo você deseja alterar.
-
SkipInstancesWithTagKey
Tipo: sequência
Descrição: (opcional) A automação ignora uma instância de destino se a chave de tag especificada for aplicada à instância.
-
SleepTime
Tipo: sequência
Padrão: 3
Descrição: (opcional) o número de segundos que esse runbook deve repousar após a conclusão.
-
TagInstance
Tipo: sequência
Descrição: (opcional) marque as instâncias com a chave e o valor de sua escolha usando o seguinte formato:
Key=ChangingType,Value=True
. Essa opção permite rastrear instâncias que foram alvo desse runbook. As chaves e os valores de tags diferenciam maiúsculas de minúsculas. -
TargetInstanceTypeFromParameter
Tipo: sequência
Descrição: (opcional) o tipo de instância para o qual você deseja alterar sua instância. Deixe esse parâmetro vazio se quiser usar o valor da chave de tag fornecida no parâmetro
TargetInstanceTypeFromTagValue
. -
TargetInstanceTypeFromTagValue
Tipo: sequência
Descrição: (opcional) a chave de tag aplicada às suas instâncias de destino cujo valor contém o tipo de instância para a qual você deseja alterar. Se você não especificar um valor para esse parâmetro, ele substitui qualquer valor que você especificar para esse parâmetro
TargetInstanceTypeFromParameter
.
Permissões obrigatórias do IAM
O parâmetro AutomationAssumeRole
requer as seguintes ações para usar o runbook com êxito.
-
autoscaling:DescribeAutoScalingInstances
-
cloudformation:DescribeStackResources
-
ssm:GetAutomationExecution
-
ssm:DescribeAutomationExecutions
-
ec2:DescribeInstanceAttribute
-
ec2:DescribeInstances
-
ec2:DescribeInstanceStatus
-
ec2:DescribeInstanceTypeOfferings
-
ec2:DescribeInstanceTypes
-
ec2:DescribeTags
-
ec2:ModifyInstanceAttribute
-
ec2:StartInstances
-
ec2:StopInstances
Etapas do documento
-
aws:assertAwsResourceProperty
: garante que a instância do Amazon EC2 não seja marcada com a chave de tag de recurso especificada no parâmetroSkipInstancesWithTagKey
. Se a chave de tag for encontrada aplicada à instância, a etapa falhará e a automação será encerrada. -
aws:assertAwsResourceProperty
: confirma que o status da instância de destino do Amazon EC2 érunning
,pending
,stopped
oustopping
. Caso contrário, a automação termina. -
aws:executeAwsApi
: reúne propriedades da instância do Amazon EC2. -
aws:executeAwsApi
: reúne detalhes sobre o tipo de instância atual do Amazon EC2. -
aws:branch
: verifica se o tipo de instância atual e o tipo de instância especificado no parâmetroTargetInstanceTypeFromParameter
são iguais. Se forem iguais, a automação termina. -
aws:assertAwsResourceProperty
: garante que a instância esteja em execução no sistema Nitro. -
aws:branch
: garante que o tipo de volume raiz da instância do Amazon EC2 seja um volume do Amazon Elastic Block Store (Amazon EBS). -
aws:assertAwsResourceProperty
: confirma se o comportamento de desligamento da instância éstop
, e nãoterminate
. -
aws:branch
: garante que a instância do Amazon EC2 não seja uma instância spot. -
aws:branch
: garante que a locação da instância do Amazon EC2 seja padrão e não um host dedicado ou uma instância dedicada. -
aws:executeScript
: confirma que há apenas uma automação desse runbook direcionada ao ID da instância atual. Se outra automação já estiver em andamento visando a mesma instância, a automação retornará um erro e terminará. -
aws:branch
: ramifica a automação com base no estado da instância do Amazon EC2.-
Se
stopped
oustopping
, a automação executaaws:waitForAwsResourceProperty
até que a instância do Amazon EC2 seja totalmente interrompida. -
Se
running
oupending
, a automação executaaws:waitForAwsResourceProperty
até que a instância do Amazon EC2 passe as verificações de status.
-
-
aws:assertAwsResourceProperty
: confirma que a instância do Amazon EC2 não faz parte de um grupo do Auto Scaling chamando a operação da APIDescribeAutoScalingInstances
. Se a instância faz parte de um grupo do Auto Scaling, garante que a instância do Amazon EC2 esteja no modostandby
. -
aws:branch
: ramifica a automação dependendo se você deseja que a automação verifique se a instância do Amazon EC2 faz parte de uma pilha do AWS CloudFormation.-
aws:executeScript
: garante que a instância do Amazon EC2 não faça parte de uma pilha do AWS CloudFormation chamando a operação da APIDescribeStackResources
.
-
-
aws:executeAwsApi
: retorna uma lista de tipos de instância com o mesmo tipo de arquitetura de processador, tipo de virtualização, e que suporta o número de interfaces de rede atualmente conectadas à instância de destino. -
aws:executeAwsApi
: obtém o valor do tipo de instância de destino da chave de tag especificada no parâmetroTargetInstanceTypeFromTagValue
. -
aws:executeScript
: confirma que os tipos de instâncias atual e de destino são compatíveis. Garante que o tipo de instância de destino esteja disponível na mesma sub-rede. Verifica se a entidade principal que iniciou o runbook tem permissões para alterar o tipo de instância e parar e iniciar a instância se ela estiver em execução. -
aws:branch
: ramifica a automação com base no valor do parâmetroDryRun
estar definido comoyes
. Seyes
, a automação termina. -
aws:branch
: verifica se o tipo de instância original e de destino são iguais. Se forem iguais, a automação termina. -
aws:executeAwsApi
: obtém o estado atual da instância. -
aws:changeInstanceState
: interrompe a instância do Amazon EC2. -
aws:changeInstanceState
: força a instância a parar se ela estiver presa no estadostopping
. -
aws:executeAwsApi
: altera o tipo de instância para o tipo de instância de destino. -
aws:sleep
: espera três segundos após alterar o tipo de instância para uma eventual consistência. -
aws:branch
: ramifica a automação com base no estado anterior da instância. Se foirunning
, a instância é iniciada.-
aws:changeInstanceState
: inicia a instância do Amazon EC2 se ela estava em execução antes de alterar o tipo de instância. -
aws:waitForAwsResourceProperty
: espera que a instância do Amazon EC2 passe nas verificações de status. Se a instância não passar nas verificações de status, altere-a de volta para seu tipo original.-
aws:changeInstanceState
: interrompe a instância do Amazon EC2 antes de alterá-la para seu tipo original. -
aws:changeInstanceState
: força a instância do Amazon EC2 a parar antes de alterá-la para o tipo de instância original, caso ela fique presa em um estado de parada. -
aws:executeAwsApi
: altera a instância do Amazon EC2 para seu tipo original. -
aws:sleep
: espera três segundos após alterar o tipo de instância para uma eventual consistência. -
aws:changeInstanceState
: inicia a instância do Amazon EC2 se ela estava em execução antes de alterar o tipo de instância. -
aws:waitForAwsResourceProperty
: espera que a instância do Amazon EC2 passe nas verificações de status.
-
-
-
aws:sleep
: espera antes de terminar o runbook.