

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á.

# Políticas de manutenção de instância
<a name="ec2-auto-scaling-instance-maintenance-policy"></a>

Você pode configurar uma política de manutenção de instâncias para seu grupo do Auto Scaling para atender aos requisitos específicos de capacidade durante eventos que fazem com que as instâncias sejam substituídas, como uma atualização da instância ou o processo de verificação de integridade. 

Por exemplo, suponha que você tenha um grupo do Auto Scaling com um pequeno número de instâncias. É aconselhável evitar possíveis interrupções decorrentes do encerramento e substituição de uma instância quando as verificações de integridade indicarem uma instância com defeito. Com uma política de manutenção de instâncias, você pode garantir que o Amazon EC2 Auto Scaling primeiro execute uma nova instância e depois espere que ela esteja totalmente pronta antes de encerrar a instância não íntegra. 

Uma política de manutenção de instâncias também ajuda a minimizar possíveis interrupções nos casos em que várias instâncias são substituídas ao mesmo tempo. Você define os parâmetros de porcentagem de integridade mínima e máxima para a política, e seu grupo do Auto Scaling só pode aumentar e diminuir a capacidade dentro desse intervalo mínimo-máximo ao substituir instâncias. Um intervalo maior aumenta o número de instâncias que podem ser substituídas ao mesmo tempo.

**Topics**
+ [Política de manutenção de instância para o grupo do Auto Scaling](instance-maintenance-policy-overview-and-considerations.md)
+ [Definir uma política de manutenção de instâncias no seu grupo do Auto Scaling](set-instance-maintenance-policy-on-group.md)

# Política de manutenção de instância para o grupo do Auto Scaling
<a name="instance-maintenance-policy-overview-and-considerations"></a>

Este tópico dá uma visão geral das opções disponíveis e descreve o que deve ser considerado ao criar uma política de manutenção de instâncias.

**Topics**
+ [Visão geral](#instance-maintenance-policy-overview)
+ [Principais conceitos](#instance-maintenance-policy-core-concepts)
+ [Aquecimento da instância](#instance-maintenance-policy-instance-warm-up)
+ [Período de carência da verificação de integridade](#instance-maintenance-policy-health-check-grace-period)
+ [Dimensionar o grupo do Auto Scaling](#instance-maintenance-policy-scaling-limits)
+ [Cenários de exemplo](#instance-maintenance-policy-scenarios)

## Visão geral
<a name="instance-maintenance-policy-overview"></a>

Quando você cria uma política de manutenção de instâncias para seu grupo do Auto Scaling, a política afeta os eventos do Amazon EC2 Auto Scaling que fazem com que as instâncias sejam substituídas. Isso resulta em comportamentos de substituição mais consistentes dentro do mesmo grupo do Auto Scaling. Também permite otimizar seu grupo quanto à disponibilidade ou ao custo, dependendo de suas necessidades.

No console, as seguintes opções de configuração estão disponíveis:
+ **Iniciar antes de encerrar**: uma nova instância deve ser provisionada primeiro antes que uma instância existente possa ser encerrada. Essa abordagem é uma boa opção para aplicações que favorecem a disponibilidade em detrimento da redução de custos.
+ **Encerrar e iniciar**: novas instâncias são provisionadas ao mesmo tempo em que suas instâncias existentes são encerradas. Essa abordagem é uma boa opção para aplicações que favorecem a redução de custos em relação à disponibilidade. Também é uma boa opção para aplicações que não devem lançar mais capacidade do que a disponível atualmente, mesmo ao substituir instâncias.
+ **Política personalizada** – essa opção permite que você configure sua política com um intervalo mínimo e máximo personalizado para o nível de capacidade que você deseja disponibilizar ao substituir instâncias. Essa abordagem pode ajudar a alcançar o equilíbrio certo entre custo e disponibilidade.

O padrão para um grupo do Auto Scaling é não ter uma política de manutenção de instâncias, o que faz com que ele responda aos eventos de manutenção de instâncias com os comportamentos padrão. Os comportamentos padrão estão descritos na tabela a seguir.


**Comportamentos padrão do evento de manutenção de instâncias**  

|  Event  |  Description  |  Comportamento padrão do   | 
| --- | --- | --- | 
|  Falhas de verificação de integridade  |  Acontece automaticamente quando as instâncias falham nas verificações de integridade. O Amazon EC2 Auto Scaling substitui instâncias que apresentam falhas de verificação de integridade. Para entender as causas das falhas de verificação de integridade, consulte [Verificações de integridade para instâncias em um grupo do Auto Scaling](ec2-auto-scaling-health-checks.md).  |  Encerrar e iniciar.  | 
|  Atualização de instância  |  O que acontece quando você inicia uma atualização de instância. Dependendo de sua configuração, uma atualização de instância substitui instâncias uma de cada vez, várias por vez ou todas de uma vez. Para obter mais informações, consulte [Use uma atualização de instância para atualizar instâncias em um grupo do Auto Scaling](asg-instance-refresh.md).  |  Encerrar e iniciar.  | 
|  Vida útil máxima da instância  |  Acontece automaticamente quando as instâncias atingem a vida útil máxima que você especifica para seu grupo do Auto Scaling. O Amazon EC2 Auto Scaling substitui instâncias que atingem sua vida útil máxima. Para obter mais informações, consulte [Substituir instâncias do Auto Scaling com base na vida útil máxima da instância](asg-max-instance-lifetime.md).  |  Encerrar e iniciar.  | 
|  Rebalanceamento  |  Acontece automaticamente se houver mudanças subjacentes que façam com que o grupo fique desbalanceado. O Amazon EC2 Auto Scaling reequilibra o grupo nas seguintes situações: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/autoscaling/ec2/userguide/instance-maintenance-policy-overview-and-considerations.html)  |  Iniciar antes de encerrar. O Amazon EC2 Auto Scaling pode exceder os limites de tamanho do seu grupo em até 10% da *capacidade máxima*. Porém, se você estiver usando o rebalanceamento de capacidade, ele só poderá exceder esses limites em até 10% da *capacidade desejada*.  | 

O Amazon EC2 Auto Scaling continuará usando como padrão o encerramento e o lançamento nas seguintes situações. Portanto, quando uma dessas situações ocorre, a capacidade do seu grupo pode ser menor que o limite inferior da sua política de manutenção da instância.
+ Quando uma instância é encerrada inesperadamente, por exemplo, devido à ação humana. O Amazon EC2 Auto Scaling substitui imediatamente instâncias que não estão mais em execução. Para obter mais informações, consulte [Verificações de integridade do Amazon EC2](health-checks-overview.md#instance-health-detection).
+ Quando o Amazon EC2 reinicia, interrompe ou desativa uma instância como parte de um evento programado antes que o Amazon EC2 Auto Scaling possa iniciar a instância substituta. Para obter mais informações sobre eventos programados, consulte [Eventos programados para suas instâncias](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/monitoring-instances-status-check_sched.html) no *Guia do usuário do Amazon EC2 para instâncias de Linux*.
+ Quando o Amazon EC2 Spot Service inicia uma interrupção de Instância spot e uma Instância Spot é encerrada à força.

Com as instâncias spot, se você habilitou o rebalanceamento de capacidade em seu grupo do Auto Scaling, talvez a instância já tenha uma instância pendente de um pool spot diferente que lançamos antes de iniciarmos a interrupção spot. Para ver mais detalhes sobre como funciona o rebalanceamento de capacidade, consulte [Rebalanceamento de capacidade no Auto Scaling para substituir instâncias spot em risco](ec2-auto-scaling-capacity-rebalancing.md).

Porém, como não é garantido que as Instâncias spot permaneçam disponíveis e possam ser encerradas com um aviso de interrupção da Instância spot de dois minutos, o limite inferior da sua política de manutenção de instâncias pode ser excedido se as instâncias forem interrompidas antes do lançamento de suas novas instâncias. 

## Principais conceitos
<a name="instance-maintenance-policy-core-concepts"></a>

Antes de começar, familiarize-se com os seguintes conceitos e termos básicos:

**Capacidade desejada**  
A *capacidade desejada* é a capacidade do grupo do Auto Scaling no momento da criação. É também a capacidade que o grupo tenta manter quando não há condições de escalabilidade associadas ao grupo. 

**Políticas de manutenção de instâncias**  
Uma *política de manutenção de instâncias* controla se uma instância é provisionada primeiro antes do encerramento de uma instância em eventos de manutenção de instâncias. Também determina até que ponto seu grupo do Auto Scaling pode ir abaixo e acima da capacidade desejada para substituir várias instâncias ao mesmo tempo. 

**Porcentagem máxima de integridade**  
A *porcentagem máxima de integridade* é a porcentagem da capacidade desejada que seu grupo do Auto Scaling pode aumentar ao substituir instâncias. Ela representa a porcentagem máxima do grupo que pode estar em serviço e íntegra, ou pendente, para suportar sua workload. No console, você pode definir a porcentagem máxima de integridade ao usar a opção **Iniciar antes de encerrar** ou a opção **Política personalizada**. Os valores válidos são 100 a 200%.

**Percentual mínimo de integridade**  
A *porcentagem mínima de integridade* é a porcentagem da capacidade desejada para se manter em serviço, íntegra e pronta para ser usada a fim de suportar sua workload ao substituir instâncias. Uma instância é considerada íntegra e pronta para uso depois de concluir com êxito sua primeira verificação de integridade e após o término do tempo de aquecimento especificado. No console, você pode definir a porcentagem mínima de integridade ao usar a opção **Encerrar e iniciar** ou a opção **Política personalizada**. Os valores válidos são 0 a 100%.   
Para substituir instâncias mais rapidamente, você pode especificar uma porcentagem mínima íntegra baixa. Porém, se não houver instâncias íntegras suficientes em execução, a disponibilidade pode ser reduzida. Recomendamos selecionar um valor razoável para manter a disponibilidade em situações em que várias instâncias serão substituídas.

## Aquecimento da instância
<a name="instance-maintenance-policy-instance-warm-up"></a>

Se suas instâncias precisarem de tempo para inicializar depois de entrarem no estado`InService`, ative o aquecimento padrão da instância para seu grupo do Auto Scaling. Com o aquecimento padrão da instância, você pode evitar que as instâncias sejam contabilizadas na porcentagem mínima de integridade antes de estarem prontas. Isso garante que o Amazon EC2 Auto Scaling considere quanto tempo é necessário para ter capacidade suficiente para suportar a workload antes de encerrar as instâncias existentes.

Como benefício adicional, você pode melhorar as CloudWatch métricas da Amazon usadas para escalabilidade dinâmica ao ativar o aquecimento padrão da instância. Se seu grupo de Auto Scaling tiver alguma política de escalabilidade, quando o grupo for expandido, ele usará o mesmo período de aquecimento padrão para evitar que as instâncias sejam contabilizadas nas CloudWatch métricas antes de concluírem a inicialização.

Para obter mais informações, consulte [Definir o aquecimento padrão da instância para um grupo do Auto Scaling](ec2-auto-scaling-default-instance-warmup.md).

## Período de carência da verificação de integridade
<a name="instance-maintenance-policy-health-check-grace-period"></a>

O Amazon EC2 Auto Scaling determina se a instância está íntegra com base no status das verificações de integridade que o grupo do Auto Scaling usa. Para obter mais informações, consulte [Verificações de integridade para instâncias em um grupo do Auto Scaling](ec2-auto-scaling-health-checks.md). 

Para garantir que essas verificações de integridade comecem o mais rápido possível, não defina um período de carência da verificação de integridade do grupo muito alto, mas alto o suficiente para que suas verificações de integridade do Elastic Load Balancing consigam determinar se um destino está disponível para lidar com solicitações. Para obter mais informações, consulte [Definir um período de carência da verificação de integridade para um grupo do Auto Scaling](health-check-grace-period.md).

## Dimensionar o grupo do Auto Scaling
<a name="instance-maintenance-policy-scaling-limits"></a>

Uma política de manutenção de instâncias só se aplica a eventos de manutenção de instâncias e não impede que o grupo seja escalado manual ou automaticamente.

Quando há políticas de escalabilidade ou ações programadas anexadas ao seu grupo do Auto Scaling, elas podem ser executadas paralelamente enquanto os eventos de manutenção da instância estão ocorrendo. Nesse caso, eles poderiam aumentar ou diminuir a capacidade desejada do grupo, mas somente dentro dos limites de escalabilidade que você definiu. Para obter mais informações sobre esses limites, consulte [Definir limites de escalabilidade para seu grupo do Auto Scaling](asg-capacity-limits.md).

## Cenários de exemplo
<a name="instance-maintenance-policy-scenarios"></a>

Em um cenário típico, a política de manutenção da instância e a capacidade desejada podem ser mais ou menos assim:
+ Porcentagem mínima de integridade = 90%
+ Porcentagem máxima de integridade = 120%
+ Capacidade desejada = 100

Durante qualquer evento de manutenção de instância, seu grupo do Auto Scaling pode ter no mínimo 90 instâncias e no máximo 120. Depois do evento, o grupo volta a ter 100 instâncias. 

Quando você usa uma política de manutenção de instância com um grupo do Auto Scaling que tem um pool ativo, as porcentagens de integridade mínima e máxima são aplicadas separadamente ao grupo do Auto Scaling e ao pool ativo. 

Por exemplo, suponha que esta seja sua configuração:
+ Porcentagem mínima de integridade = 90%
+ Porcentagem máxima de integridade = 120%
+ Capacidade desejada = 100
+ Tamanho do pool ativo = 10

Se você iniciar uma atualização de instância para reciclar as instâncias do grupo, o Amazon EC2 Auto Scaling substituirá primeiro as instâncias no grupo do Auto Scaling e depois as instâncias no pool ativo. Embora o Amazon EC2 Auto Scaling ainda esteja trabalhando na substituição de instâncias no grupo do Auto Scaling, o grupo pode ter no mínimo 90 instâncias e no máximo 120. Depois de terminar com o grupo, o Amazon EC2 Auto Scaling pode trabalhar na substituição de instâncias no pool ativo. Enquanto isso acontece, o pool ativo pode ter no mínimo 9 instâncias e no máximo 12.

# Definir uma política de manutenção de instâncias no seu grupo do Auto Scaling
<a name="set-instance-maintenance-policy-on-group"></a>

É possível criar uma política de manutenção de instâncias ao criar um grupo do Auto Scaling. Também é possível criá-la para grupos existentes.

Ao definir uma política de manutenção de instância no seu grupo do Auto Scaling, não é mais necessário especificar valores de parâmetros de porcentagem mínima e máxima de integridade para o recurso de atualização da instância a não ser que queira substituir a política de manutenção de instâncias.

No console, o Amazon EC2 Auto Scaling fornece opções para ajudar você a começar. 

**Topics**
+ [Definir uma política de manutenção de instâncias](set-instance-maintenance-policy.md)
+ [Remover uma política de manutenção de instância](remove-instance-maintenance-policy.md)

# Definir uma política de manutenção de instâncias
<a name="set-instance-maintenance-policy"></a>

Para definir uma política de manutenção de instâncias em um grupo do Auto Scaling, use um dos seguintes métodos:

------
#### [ Console ]

**Para definir uma política de manutenção de instâncias em um novo grupo (console)**

1. Siga as instruções em [Criar um grupo do Auto Scaling usando um modelo de execução](create-asg-launch-template.md) e conclua cada etapa do procedimento, até a etapa 11.

1. Em **Configurar tamanho do grupo e políticas de escalabilidade**, em **Capacidade desejada**, insira o número inicial de instâncias a serem executadas. 

1. Na seção **Escalabilidade**, em **Limites de escalabilidade**, se o novo valor para **Capacidade desejada** for maior que **Capacidade mínima desejada** e **Capacidade máxima desejada**, a **Capacidade máxima desejada** será automaticamente aumentada para o novo valor da capacidade desejada. Você pode alterar esses limites conforme necessário.

1. Em **Escalabilidade automática**, escolha se você deseja criar uma política de escalabilidade de rastreamento de destino. Você também pode criar essa política depois de criar seu grupo do Auto Scaling.

   Se você escolher a **política de escalabilidade de rastreamento de destino**, siga as instruções em [Criar uma política de dimensionamento com monitoramento do objetivo](policy_creating.md) para criar a política.

1. Na seção **Política de manutenção de instâncias**, escolha uma das opções disponíveis: 
   + **Iniciar antes de encerrar**: uma nova instância deve ser provisionada primeiro antes que uma instância existente possa ser encerrada. Essa é uma boa opção para aplicações que favorecem a disponibilidade em detrimento da redução de custos.
   + **Encerrar e iniciar**: novas instâncias são provisionadas ao mesmo tempo em que as instâncias existentes são encerradas. Esta é uma boa opção para aplicações que favorecem a economia de custos em detrimento da disponibilidade. Também é uma boa opção para aplicações que não devem lançar mais capacidade do que a disponível atualmente.
   + **Política personalizada**: essa opção permite que você configure sua política com um intervalo mínimo e máximo personalizado para o nível de capacidade que você deseja disponibilizar ao substituir instâncias. Isso pode ajudar a alcançar o equilíbrio certo entre custo e disponibilidade.

1. Em **Definir porcentagem de integridade**, insira valores para um ou ambos os campos a seguir. Os campos habilitados variam de acordo com a opção escolhida na etapa anterior.
   + **Mínimo**: define a porcentagem mínima de integridade necessária para continuar com a substituição de instâncias.
   + **Máximo**: define a porcentagem máxima de integridade possível ao substituir instâncias.

1. Expanda a seção **Exibir capacidade durante as substituições com base na seção de capacidade desejada** para confirmar como os valores de **Mínimo** e **Máximo** são aplicados ao seu grupo. Os valores exatos usados dependem do valor de capacidade desejado, que mudará se o grupo for ampliado.

1. Continue com as etapas em [Criar um grupo do Auto Scaling usando um modelo de execução](create-asg-launch-template.md).

------
#### [ AWS CLI ]

**Para definir uma política de manutenção de instância em um novo grupo (AWS CLI)**  
Adicione a `--instance-maintenance-policy` opção ao [create-auto-scaling-group](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/create-auto-scaling-group.html)comando. O exemplo a seguir define uma política de manutenção de instâncias em um novo grupo do Auto Scaling chamado `my-asg`.

```
aws autoscaling create-auto-scaling-group \
  --launch-template LaunchTemplateName=my-launch-template,Version='1' \
  --auto-scaling-group-name my-asg \
  --min-size 1 \
  --max-size 10 \
  --desired-capacity 5 \
  --default-instance-warmup 20 \
  --instance-maintenance-policy '{
      "MinHealthyPercentage": 90,
      "MaxHealthyPercentage": 120       
    }' \
  --vpc-zone-identifier "subnet-5e6example,subnet-613example,subnet-c93example"
```

------

------
#### [ Console ]

**Para definir uma política de manutenção de instância em um grupo existente (console)**

1. Abra o console do Amazon EC2 em [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)e escolha **Auto Scaling Groups** no painel de navegação.

1. Na barra de navegação na parte superior da tela, escolha a mesma Região da AWS na qual você criou o grupo do Auto Scaling.

1. Marque a caixa de seleção ao lado do grupo do Auto Scaling.

   Um painel dividido é aberto na parte inferior da página. 

1. Na guia **Detalhes**, escolha **Política de manutenção de instâncias**, **Editar**.

1. Para definir uma política de manutenção de instância no grupo, escolha uma das opções disponíveis: 
   + **Iniciar antes de encerrar**: uma nova instância deve ser provisionada primeiro antes que uma instância existente possa ser encerrada. Essa é uma boa opção para aplicações que favorecem a disponibilidade em detrimento da redução de custos.
   + **Encerrar e iniciar**: novas instâncias são provisionadas ao mesmo tempo em que as instâncias existentes são encerradas. Esta é uma boa opção para aplicações que favorecem a economia de custos em detrimento da disponibilidade. Também é uma boa opção para aplicações que não devem lançar mais capacidade do que a disponível atualmente.
   + **Política personalizada**: essa opção permite que você configure sua política com um intervalo mínimo e máximo personalizado para o nível de capacidade que você deseja disponibilizar ao substituir instâncias. Isso pode ajudar a alcançar o equilíbrio certo entre custo e disponibilidade.

1. Em **Definir porcentagem de integridade**, insira valores para um ou ambos os campos a seguir. Os campos habilitados variam de acordo com a opção escolhida na etapa anterior.
   + **Mínimo**: define a porcentagem mínima de integridade necessária para continuar com a substituição de instâncias.
   + **Máximo**: define a porcentagem máxima de integridade possível ao substituir instâncias.

1. Expanda a seção **Exibir capacidade durante as substituições com base na seção de capacidade desejada** para confirmar como os valores de **Mínimo** e **Máximo** são aplicados ao seu grupo. Os valores exatos usados dependem do valor de capacidade desejado, que mudará se o grupo for ampliado.

1. Selecione **Atualizar**.

------
#### [ AWS CLI ]

**Para definir uma política de manutenção de instância em um grupo existente (AWS CLI)**  
Adicione a `--instance-maintenance-policy` opção ao [update-auto-scaling-group](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/update-auto-scaling-group.html)comando. O exemplo a seguir define uma política de manutenção de instância no grupo do Auto Scaling especificado.

```
aws autoscaling update-auto-scaling-group --auto-scaling-group-name my-asg \
  --instance-maintenance-policy '{
      "MinHealthyPercentage": 90,
      "MaxHealthyPercentage": 120       
    }'
```

------

# Remover uma política de manutenção de instância
<a name="remove-instance-maintenance-policy"></a>

Se você quiser parar de usar uma política de manutenção de instâncias com seu grupo do Auto Scaling, você pode removê-la. 

------
#### [ Console ]

**Para remover uma política de manutenção de instância (console)**

1. Abra o console do Amazon EC2 em [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)e escolha **Auto Scaling Groups** no painel de navegação.

1. Na barra de navegação na parte superior da tela, escolha a mesma Região da AWS na qual você criou o grupo do Auto Scaling.

1. Marque a caixa de seleção ao lado do grupo do Auto Scaling.

   Um painel dividido é aberto na parte inferior da página. 

1. Na guia **Detalhes**, escolha **Política de manutenção de instâncias**, **Editar**.

1. Escolha **Nenhuma política de manutenção de instâncias**.

1. Escolha **Atualizar**.

------
#### [ AWS CLI ]

**Para remover uma política de manutenção de instâncias (AWS CLI)**  
Adicione a `--instance-maintenance-policy` opção ao [update-auto-scaling-group](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/update-auto-scaling-group.html)comando. O exemplo a seguir remove a política de manutenção de instâncias do grupo do Auto Scaling especificado. 

```
aws autoscaling update-auto-scaling-group --auto-scaling-group-name my-asg \
  --instance-maintenance-policy '{
      "MinHealthyPercentage": -1,
      "MaxHealthyPercentage": -1       
    }'
```

------