

# Início e interrupção de instâncias do Amazon EC2
<a name="Stop_Start"></a>

Você pode interromper e reiniciar a instância se o volume raiz for um volume do Amazon EBS. Quando você interrompe uma instância, ela é desligada. Quando você inicia uma instância, ela é normalmente migrada para um novo computador host subjacente e recebe um novo endereço IPv4 público.

Uma parada de instância pode ser iniciada pelo usuário (quando você interrompe manualmente a instância) ou iniciada pela AWS (em resposta a um evento de parada programada quando a AWS detecta uma falha irreparável do host subjacente da sua instância).

Para interrupções iniciadas pelo usuário, recomendamos usar o console do Amazon EC2, a CLI ou a API em vez de executar o comando de interrupção do sistema operacional na instância. Ao usar o Amazon EC2, se a instância não for desligada de maneira limpa em alguns minutos, o Amazon EC2 realizará um desligamento forçado. Além disso, o AWS CloudTrail cria um registro de API de quando a instância foi interrompida.

Este tópico descreve como realizar uma interrupção iniciada pelo usuário. Para obter informações sobre uma interrupção realizada pelo AWS, consulte [Gerenciamento das instâncias do Amazon EC2 agendadas para interrupção ou desativação](schedevents_actions_retire.md).

Quando você interrompe uma instância, ela não é excluída. Se você decidir que não necessita mais de uma instância, pode encerrá-la. Para obter mais informações, consulte [Encerramento de instâncias do Amazon EC2](terminating-instances.md). Se você quiser hibernar uma instância para salvar o conteúdo da memória da instância (RAM), consulte [Hibernar sua instância do Amazon EC2](Hibernate.md). Para obter distinções entre as ações do ciclo de vida da instância, consulte. [Diferenças entre os estados de instâncias](ec2-instance-lifecycle.md#lifecycle-differences)

**Topics**
+ [Como funciona](how-ec2-instance-stop-start-works.md)
+ [Métodos para parar uma instância](instance-stop-methods.md)
+ [Parar e iniciar manualmente](#starting-stopping-instances)
+ [Parar e iniciar automaticamente](#stop-start-ec2-instances-on-a-schedule)
+ [Localizar instâncias em execução e interrompidas](#find-running-and-stopped-instances-in-globalview)
+ [Encontrar os horários de execução inicial e mais recente](#find-initial-launch-time)
+ [Habilitar a proteção contra interrupção](ec2-stop-protection.md)

# Como funciona a inicialização e a interrupção de uma instância do EC2
<a name="how-ec2-instance-stop-start-works"></a>

Quando você interrompe uma instância do Amazon EC2, as alterações são registradas no nível do sistema operacional (SO) da instância, alguns recursos são perdidos e outros persistem. Quando você inicia uma instância, as alterações são registradas no nível da instância.

**Topics**
+ [O que acontece quando você interrompe uma instância](#what-happens-stop)
+ [O que acontece quando você inicia uma instância](#what-happens-start)
+ [Teste a resposta da aplicação para interromper e iniciar](#test-stop-start-instance)
+ [Custos relacionados ao início e à interrupção de uma instância](#ec2-stop-start-costs)

## O que acontece quando você interrompe uma instância
<a name="what-happens-stop"></a>

Veja a seguir o que normalmente acontece quando você interrompe uma instância usando o método de parada padrão. Observe que alguns aspectos podem variar dependendo do [método de parada](instance-stop-methods.md) usado.

**Alterações registradas no nível do sistema operacional**
+ A solicitação da API envia um evento de pressionamento de botão ao convidado.
+ Vários serviços do sistema são interrompidos como resultado do evento de pressionamento de botão. O desligamento normal do sistema operacional é acionado pelo evento de pressionamento do botão de desligamento de ACPI do hipervisor.
+ O desligamento de ACPI é iniciado.
+ A instância será desligada quando o processo de desligamento normal do sistema operacional terminar. Não existe um tempo de desligamento configurável para o SO.
+ Se o sistema operacional da instância não for desligado de forma limpa em alguns minutos, um desligamento forçado será executado.
+ A execução da instância é interrompida.
+ O estado da instância muda para `stopping` e depois para `stopped`.
+ [Auto Scaling] Se a instância estiver em um grupo do Auto Scaling, quando ela estiver em qualquer estado do Amazon EC2 diferente de `running` ou se o status das verificações de status mudar para `impaired`, o Amazon EC2 Auto Scaling considerará a instância como não íntegra e a substituirá. Para obter mais informações, consulte [Health checks for instances in an Auto Scaling group](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-health-checks.html) no *Amazon EC2 Auto Scaling User Guide*.
+ [Instâncias do Windows] Quando você interrompe e inicia uma instância do Windows, o agente de inicialização executa tarefas na instância, como alterar as letras das unidades de quaisquer volumes do Amazon EBS anexados. Para obter mais informações sobre esses padrões e como é possível alterá-los, consulte [Usar o agente do EC2Launch v2 para realizar tarefas durante a execução da instância EC2 Windows](ec2launch-v2.md).

**Recursos perdidos**
+ Dados armazenados na RAM.
+ Dados armazenados nos volumes de armazenamento de instância.
+ O endereço IPv4 público que o Amazon EC2 atribuiu automaticamente à instância quando ela foi iniciada. Para manter um endereço IPv4 público que nunca muda, é possível associar um [endereço IP elástico](elastic-ip-addresses-eip.md) à instância.

**Recursos que persistem**
+ Qualquer volume raiz e de dados do Amazon EBS que esteja anexado.
+ Dados armazenados em volumes do Amazon EBS.
+ Qualquer [interface de rede](using-eni.md) anexada.

  Uma interface de rede inclui os seguintes recursos, que também persistem:
  + Endereços IPv4 privados.
  + Endereços IPv6.
  + O endereço IP elástico a ser associado à instância. Observe que, quando a instância for interrompida, você será [cobrado pelos endereços IP elásticos associados](elastic-ip-addresses-eip.md#eip-pricing).

O diagrama a seguir ilustra o que é perdido e o que persiste quando uma instância do Amazon EC2 é interrompida. O diagrama é dividido em três partes: a primeira parte, chamada **Instância do EC2 em execução**, mostra a instância no estado `running` com seus recursos. A segunda parte, chamada **Instância do EC2 parada**, mostra a instância no estado `stopped` com os recursos que persistem. A terceira parte, chamada **Perdido**, mostra os recursos que são perdidos quando a instância é interrompida.

![\[O endereço IPv4 público, a RAM e os dados de armazenamento da instância são perdidos quando uma instância é interrompida.\]](http://docs.aws.amazon.com/pt_br/AWSEC2/latest/UserGuide/images/stop-instance.png)


Para obter informações sobre o que acontece quando você interrompe uma instância do Mac, consulte [Parar ou terminar a instância do Mac no Amazon EC2](mac-instance-stop.md).

## O que acontece quando você inicia uma instância
<a name="what-happens-start"></a>
+ Na maioria dos casos, a instância é migrada para um novo computador host subjacente (embora em alguns casos, como quando uma instância está alocada a um host em uma configuração de [Host dedicado](dedicated-hosts-understanding.md), ela permaneça no host atual).
+ Os volumes e interfaces de rede do EBS associados são reconectados à instância.
+ O Amazon EC2 atribui um novo endereço IPv4 público à instância se ela estiver configurada para receber um endereço IPv4 público, a menos que tenha uma interface de rede secundária ou um endereço IPv4 privado secundário associado a um endereço IP elástico.
+ Se você interrompe uma instância em um placement group e depois a inicia novamente, ela ainda é executada no placement group. Contudo, ocorrerá uma falha no início se não houver capacidade suficiente para a instância. Se você receber um erro de capacidade ao iniciar uma instância em um grupo de posicionamento que já tenha instâncias em execução, interrompa todas as instâncias no grupo de posicionamento e inicie-as novamente. Iniciar as instâncias pode migrá-las para o hardware com capacidade para todas as instâncias solicitadas.

## Teste a resposta da aplicação para interromper e iniciar
<a name="test-stop-start-instance"></a>

É possível usar o AWS Fault Injection Service para testar como suas aplicações respondem quando sua instância é interrompida e iniciada. Para saber mais, consulte o [Guia do usuário do AWS Fault Injection Service](https://docs.aws.amazon.com/fis/latest/userguide/what-is.html).

## Custos relacionados ao início e à interrupção de uma instância
<a name="ec2-stop-start-costs"></a>

Os custos a seguir estão associados à interrupção e inicialização de uma instância.

**Interrupção**: assim que o estado de uma instância muda para `shutting-down` ou `terminated`, as cobranças pela instância deixam de ser feitas. Você não é cobrado pelas taxas de uso ou transferência de dados para instâncias interrompidas. No entanto, cobranças são aplicáveis para armazenar volumes de armazenamento do Amazon EBS. 

**Inicialização**: toda vez que você inicia uma instância interrompida, cobramos o mínimo de um minuto pelo uso. Após um minuto, você será cobrado apenas pelos segundos que usar. Por exemplo, se você executar uma instância por 20 segundos e, em seguida, interrompê-la, será cobrado por um minuto completo. Se você executar uma instância por 3 minutos e 40 segundos, você será cobrado exatamente por 3 minutos e 40 segundos de uso.

# Métodos para parar uma instância
<a name="instance-stop-methods"></a>

Há quatro maneiras de realizar uma parada iniciada pelo usuário: parada padrão, parada com ignorar o desligamento do sistema operacional, parada forçada e parada forçada com ignorar o desligamento do sistema operacional. A tabela a seguir compara as principais diferenças entre os métodos de parada:


| Método de parada | Objetivo principal | Caso de uso | Comando da CLI | 
| --- | --- | --- | --- | 
| Parada padrão | Desligamento normal da instância com tentativa de desligamento normal do sistema operacional. | Parada típica de uma instância. |  <pre>aws ec2 stop-instances \<br />--instance-id i-1234567890abcdef0</pre>  | 
| Parada com ignorar o desligamento do sistema operacional | Ignora o desligamento normal do sistema operacional ao parar uma instância. | Quando ignorar o desligamento normal do sistema operacional é necessário. | <pre>aws ec2 stop-instances \<br />--instance-id i-1234567890abcdef0 \<br />--skip-os-shutdown</pre> | 
| Forçar a parada | Resolve instâncias travadas. Tenta primeiro uma parada padrão; se a instância não para, interrompe a instância à força. | Quando a instância está travada no estado stopping. | <pre>aws ec2 stop-instances \<br />--instance-id i-1234567890abcdef0 \<br />--force</pre> | 
| Forçar a parada com ignorar o desligamento do sistema operacional | Força a parada e ignora o desligamento normal do sistema operacional ao parar uma instância. | Quando forçar a parada e ignorar o desligamento normal do sistema operacional são necessários. | <pre>aws ec2 stop-instances \<br />--instance-id i-1234567890abcdef0 \<br />--force \<br />--skip-os-shutdown</pre> | 

Para obter instruções sobre como usar cada método, consulte:
+ [Parar uma instância com um desligamento normal do sistema operacional](Stop_Start.md#stop-instance-with-graceful-os-shutdown)
+ [Parar uma instância e ignorar o desligamento normal do sistema operacional](Stop_Start.md#stop-instance-bypass-graceful-os-shutdown)
+ [Forçar a interrupção de uma instância](TroubleshootingInstancesStopping.md#force-stop-instance)

**Topics**
+ [Parada padrão](#ec2-instance-default-stop)
+ [Parada com ignorar o desligamento do sistema operacional](#ec2-instance-stop-with-skip-os-shutdown)
+ [Forçar a parada](#ec2-instance-force-stop)
+ [Forçar a parada com ignorar o desligamento do sistema operacional](#ec2-instance-force-stop-with-skip-os-shutdown)

As seções a seguir fornecem informações mais detalhadas sobre os quatro métodos diferentes de parada iniciada pelo usuário.

## Parada padrão
<a name="ec2-instance-default-stop"></a>

O método de parada padrão é a maneira padrão de parar uma instância. Quando você emite o comando StopInstances, a instância faz a transição do estado `running` para `stopping` e, finalmente, para `stopped`, conforme ilustrado no diagrama a seguir:

![\[Fluxo de parada padrão\]](http://docs.aws.amazon.com/pt_br/AWSEC2/latest/UserGuide/images/stop-instance-flow-1.png)


**Objetivo:** desligamento normal da instância com tentativa de desligamento normal do sistema operacional.

**Impacto nos dados:** preserva os dados no volume raiz e nos volumes de dados do EBS. Os dados no volume de armazenamento de instância são perdidos.

**Quando usar:** a primeira tentativa de parada em paradas típicas.

**nota**  
Se você já tentou realizar uma parada com ignorar desligamento do sistema operacional, uma tentativa subsequente de parada padrão durante a mesma sessão de transição de estado não executará um desligamento normal do sistema operacional. Ignorar o desligamento normal do sistema operacional é uma ação irreversível para a sessão atual da instância.

## Parada com ignorar o desligamento do sistema operacional
<a name="ec2-instance-stop-with-skip-os-shutdown"></a>

Quando é necessário ignorar o desligamento normal do sistema operacional, o método de parada com ignorar desligamento do sistema operacional pode ser usado para parar uma instância e ignorar o desligamento normal do sistema operacional, conforme ilustrado no diagrama a seguir:

![\[Fluxo de parar com ignorar desligamento do sistema operacional\]](http://docs.aws.amazon.com/pt_br/AWSEC2/latest/UserGuide/images/stop-instance-flow-3.png)


**Atenção**  
Ignorar o desligamento normal do sistema operacional pode resultar em perda ou corrompimento de dados (por exemplo, conteúdo da memória não transferido para o disco ou perda de E/S em andamento) ou em scripts de desligamento ignorados.

**Objetivo:** ignorar o desligamento normal do sistema operacional ao parar uma instância.

**Impacto nos dados:** pode resultar em perda ou corrompimento de dados. O conteúdo da memória pode não ser transferido para o disco e as operações de E/S em andamento podem ser perdidas. Pode ignorar scripts de desligamento.

**Quando usar:** quando é necessário ignorar o desligamento normal do sistema operacional. Se usada enquanto uma parada padrão com desligamento normal do sistema operacional estiver em andamento, o desligamento normal do sistema operacional será ignorado.

**nota**  
Ignorar o desligamento normal do sistema operacional é uma ação irreversível para a sessão de transição de estado atual da instância. Uma tentativa de parada padrão subsequente durante esta sessão não tentará um desligamento normal do sistema operacional. 

## Forçar a parada
<a name="ec2-instance-force-stop"></a>

O método de forçar a parada é usado para lidar com instâncias que estão presas no estado `stopping`. Normalmente, uma instância fica paralisada devido a um problema de hardware subjacente (indicado por uma falha na [verificação do status do sistema](monitoring-system-instance-status-check.md#system-status-checks)).

O método de parada forçada primeiro tenta realizar uma parada padrão. Se a instância permanecer presa no estado `stopping`, o parâmetro `force` encerrará a instância à força e fará a transição da instância para o estado `stopped`, conforme indicado no diagrama a seguir:

![\[Fluxo de parada forçada\]](http://docs.aws.amazon.com/pt_br/AWSEC2/latest/UserGuide/images/stop-instance-flow-2.png)


**Objetivo:** lida com instâncias bloqueadas no estado `stopping`. Tenta primeiro uma parada padrão. Se a instância não for interrompida, ela será desligada à força.

**Impacto nos dados:** tenta primeiro uma parada padrão, mas se a parada forçada continuar, isso pode causar perda ou corrompimento de dados. Em casos raros, resulta em gravações pós-parada em volumes do EBS ou em outros recursos compartilhados.

**Quando usar:** segunda tentativa de parada quando uma instância permanece travada após uma parada padrão. Para obter mais informações, consulte [Solucionar problemas de interrupção de instâncias do Amazon EC2](TroubleshootingInstancesStopping.md).

## Forçar a parada com ignorar o desligamento do sistema operacional
<a name="ec2-instance-force-stop-with-skip-os-shutdown"></a>

Quando forçar a parada e ignorar o desligamento normal do sistema operacional são necessários, o método de forçar a parada com ignorar desligamento do sistema operacional pode ser usado para levar uma instância ao estado `stopped`, conforme ilustrado no diagrama a seguir:

![\[Fluxo de forçar a parada com ignorar o desligamento do sistema operacional\]](http://docs.aws.amazon.com/pt_br/AWSEC2/latest/UserGuide/images/stop-instance-flow-4.png)


**Objetivo:** combina forçar a parada com ignorar o desligamento normal do sistema operacional ao parar uma instância.

**Impacto nos dados:** ignorar o desligamento do sistema operacional pode resultar em perda ou corrompimento de dados. O conteúdo da memória pode não ser transferido para o disco e as operações de E/S em andamento podem ser perdidas. Pode ignorar scripts de desligamento. Se a parada forçada ocorrer, ela poderá causar perda ou corrompimento adicional de dados. Em casos raros, resulta em gravações pós-parada nos volumes do EBS ou em outros recursos compartilhados.

**Quando usar:** quando você quer ter certeza de que sua instância será interrompida e deseja ignorar o desligamento normal do sistema operacional. Se usada enquanto uma parada padrão com desligamento normal do sistema operacional estiver em andamento, o desligamento normal do sistema operacional será ignorado.

## Início e interrupção manuais das instâncias
<a name="starting-stopping-instances"></a>

É possível iniciar e parar instâncias baseadas no Amazon EBS (instâncias com volumes-raiz do EBS). Não é possível iniciar e parar instâncias com um volume-raiz de armazenamento de instância.

Ao usar o método padrão para parar uma instância, uma tentativa de desligamento normal do sistema operacional (SO) é feita. É possível ignorar o desligamento normal do sistema operacional; no entanto, isso pode colocar em risco a integridade dos dados. 

**Atenção**  
Quando você interrompe uma instância, os dados em todos os volumes de armazenamento de instâncias são apagados. Antes de interromper uma instância, verifique se você copiou todos os dados necessários dos volumes de armazenamento de instância para um armazenamento persistente, como o Amazon EBS ou o Amazon S3.

[Instâncias do Linux] Usar o comando **halt** do sistema operacional de uma instância não inicia um desligamento. Se você usar o comando **halt**, a instância não será encerrada; em vez disso, ela colocará a CPU em `HLT`, o que suspende a operação da CPU. A instância permanece em execução.

Você pode iniciar um desligamento usando os comandos **shutdown** ou **poweroff** do sistema operacional. Quando você usa um comando do sistema operacional, a instância é interrompida por padrão. É possível alterar esse comportamento. Para obter mais informações, consulte [Alterar comportamento de desligamento iniciado da instância](Using_ChangingInstanceInitiatedShutdownBehavior.md).

**nota**  
Se você interrompeu uma instância baseada no Amazon EBS e ela aparentar estar "presa" no estado `stopping`, será possível interrompê-la à força. Para obter mais informações, consulte [Solucionar problemas de interrupção de instâncias do Amazon EC2](TroubleshootingInstancesStopping.md).

**Topics**
+ [Parar uma instância com um desligamento normal do sistema operacional](#stop-instance-with-graceful-os-shutdown)
+ [Parar uma instância e ignorar o desligamento normal do sistema operacional](#stop-instance-bypass-graceful-os-shutdown)
+ [Iniciar uma instância](#start-ec2-instance)

### Parar uma instância com um desligamento normal do sistema operacional
<a name="stop-instance-with-graceful-os-shutdown"></a>

É possível parar uma instância usando o método de parada padrão, que inclui uma tentativa de desligamento normal do sistema operacional. Para obter mais informações, consulte [Parada padrão](instance-stop-methods.md#ec2-instance-default-stop).

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

**Para parar uma instância usando o método padrão**

1. Abra o console do Amazon EC2 em [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/).

1. No painel de navegação à esquerda, escolha **Instâncias** e, em seguida, selecione a instância.

1. Escolha **Estado da instância** e **Parar instância**. Se a opção estiver desabilitada, significa que a instância já está interrompida ou que o volume raiz é um armazenamento de instância.

1. Quando a confirmação for solicitada, escolha **Parar**. Pode demorar alguns minutos para que a instância pare.

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

**Para parar uma instância usando o método padrão**  
Use o comando [stop-instances](https://docs.aws.amazon.com/cli/latest/reference/ec2/stop-instances.html).

```
aws ec2 stop-instances --instance-ids i-1234567890abcdef0
```

------
#### [ PowerShell ]

**Para parar uma instância usando o método padrão**  
Use o cmdlet [Stop-EC2Instance](https://docs.aws.amazon.com/powershell/latest/reference/items/Stop-EC2Instance.html). 

```
Stop-EC2Instance -InstanceId i-1234567890abcdef0
```

------

### Parar uma instância e ignorar o desligamento normal do sistema operacional
<a name="stop-instance-bypass-graceful-os-shutdown"></a>

É possível ignorar o desligamento normal do sistema operacional ao parar uma instância. Para obter mais informações, consulte [Parada com ignorar o desligamento do sistema operacional](instance-stop-methods.md#ec2-instance-stop-with-skip-os-shutdown).

**Atenção**  
Ignorar o desligamento normal do sistema operacional pode resultar em perda ou corrompimento de dados (por exemplo, conteúdo da memória não transferido para o disco ou perda de E/S em andamento) ou em scripts de desligamento ignorados.

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

**Para parar uma instância e ignorar o desligamento normal do sistema operacional**

1. Abra o console do Amazon EC2 em [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/).

1. No painel de navegação, escolha **Instances** e selecione a instância.

1. Escolha **Instance state (Estado da instância)** e **Stop instance (Interromper instância)**.

1. Em **Ignorar desligamento do sistema operacional**, marque a caixa de seleção **Ignorar desligamento do sistema operacional**. Se você não vir essa opção no console, isso significa que ela ainda não está disponível no console na região atual. No entanto, você pode acessar esse recurso usando a AWS CLI ou o SDK, ou até mesmo experimentar outra região no console.

1. Escolha **Parar**.

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

**Para parar uma instância e ignorar o desligamento normal do sistema operacional**  
Use o comando [stop-instances](https://docs.aws.amazon.com/cli/latest/reference/ec2/stop-instances.html) com `--skip-os-shutdown`.

```
aws ec2 stop-instances \
    --instance-ids i-1234567890abcdef0 \
    --skip-os-shutdown
```

------
#### [ PowerShell ]

**Para parar uma instância e ignorar o desligamento normal do sistema operacional**  
Use o cmdlet [Stop-EC2Instance](https://docs.aws.amazon.com/powershell/latest/reference/items/Stop-EC2Instance.html) com `-SkipOsShutdown $true`.

```
Stop-EC2Instance `
    -InstanceId i-1234567890abcdef0 `
    -SkipOsShutdown $true
```

------

### Iniciar uma instância
<a name="start-ec2-instance"></a>

Você pode iniciar uma instância parada.

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

**Para iniciar uma instância**

1. Abra o console do Amazon EC2 em [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/).

1. No painel de navegação à esquerda, selecione **Instâncias**.

1. Selecione a instância e escolha **Estado da instância** e **Iniciar instância**.

   Pode demorar alguns minutos para que a instância entre no estado `running`.

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

**Para iniciar uma instância**  
Use o comando [start-instances](https://docs.aws.amazon.com/cli/latest/reference/ec2/start-instances.html).

```
aws ec2 start-instances --instance-ids i-1234567890abcdef0
```

------
#### [ PowerShell ]

**Para iniciar uma instância**  
Use o cmdlet [Start-EC2Instance](https://docs.aws.amazon.com/powershell/latest/reference/items/Start-EC2Instance.html).

```
Start-EC2Instance -InstanceId i-1234567890abcdef0
```

------

## Parar e iniciar instâncias automaticamente
<a name="stop-start-ec2-instances-on-a-schedule"></a>

É possível automatizar a interrupção e o início de instâncias com os seguintes serviços: 

**Instance Scheduler na AWS**  
É possível usar o Instance Scheduler na AWS para automatizar o início e a interrupção de instâncias do EC2. Para obter mais informações, consulte [How do I use Instance Scheduler with CloudFormation to schedule EC2 instances?](https://repost.aws/knowledge-center/stop-start-instance-scheduler) (Como uso o Instance Scheduler com o CloudFormation para agendar instâncias do EC2?) Observe que [se aplicam outras cobranças](https://docs.aws.amazon.com/solutions/latest/instance-scheduler-on-aws/cost.html). 

**AWS Lambda e uma regra do Amazon EventBridge**  
É possível usar o Lambda e uma regra do EventBridge para interromper e iniciar suas instâncias em um agendamento. Para obter mais informações, consulte [Como usar o Lambda para interromper e iniciar instâncias do Amazon EC2 em intervalos regulares?](https://repost.aws/knowledge-center/start-stop-lambda-eventbridge)

**Amazon EC2 Auto Scaling**  
Para garantir que você tenha o número correto de instâncias do Amazon EC2 disponíveis para lidar com a carga de uma aplicação, crie grupos do Auto Scaling. O Amazon EC2 Auto Scaling garante que sua aplicação sempre tenha a capacidade certa para lidar com a demanda de tráfego e economiza custos ao iniciar instâncias somente quando elas são necessárias. Observe que o Amazon EC2 Auto Scaling encerra, em vez de interromper, instâncias desnecessárias. Para configurar grupos do Auto Scaling, consulte [Começar a usar o Amazon EC2 Auto Scaling](https://docs.aws.amazon.com/autoscaling/ec2/userguide/get-started-with-ec2-auto-scaling.html).

## Localizar todas as instâncias em execução e interrompidas
<a name="find-running-and-stopped-instances-in-globalview"></a>

É possível localizar todas as instâncias em execução e interrompidas em todas as Regiões da AWS em uma única página na [Visualização Global do Amazon EC2](https://console.aws.amazon.com/ec2globalview/home). Isso é útil especialmente para inventariar e localizar instâncias esquecidas. Para obter informações sobre como usar o Visualização Global , consulte [Visualizar recursos entre regiões usando a Visualização Global da AWS](global-view.md).

Como alternativa, você pode executar um comando ou cmdlet em cada região na qual tenha instâncias.

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

**Para obter o número de instâncias do EC2 em uma região**  
Use o seguinte comando [describe-instances](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-instances.html) para contar as instâncias na região atual. Você precisa executar esse comando em cada região na qual tenha instâncias.

```
aws ec2 describe-instances \
    --region us-east-2 \
    --query "length(Reservations[].Instances[])"
```

O seguinte é um exemplo de saída.

```
27
```

**Para obter um resumo de informações sobre suas instâncias do EC2 em uma região**  
Use o seguinte comando [describe-instances](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-instances.html). Você precisa executar esse comando em cada região na qual tenha instâncias.

```
aws ec2 describe-instances \
    --region us-east-2 \
    --query "Reservations[].Instances[].[InstanceId,InstanceType,PrivateIpAddress]" \
    --output table
```

O seguinte é um exemplo de saída.

```
---------------------------------------------------------
|                   DescribeInstances                   |
+---------------------+---------------+-----------------+
|  i-0e3e777f4362f1bf7|  t2.micro     |  10.0.12.9      |
|  i-09453945dcf1529e9|  t2.micro     |  10.0.143.213   |
|  i-08fd74f3f1595fdbd|  m7i.4xlarge  |  10.0.1.103     |
+---------------------+---------------+-----------------+
```

------
#### [ PowerShell ]

**Para obter o número de instâncias do EC2 em uma região**  
Use o cmdlet [Get-EC2Instance](https://docs.aws.amazon.com/powershell/latest/reference/items/Get-EC2Instance.html).

```
(Get-EC2Instance -Region us-east-2).Instances.Length
```

O seguinte é um exemplo de saída.

```
27
```

**Para obter um resumo de informações sobre suas instâncias do EC2 em uma região**  
Use o cmdlet [Get-EC2Instance](https://docs.aws.amazon.com/powershell/latest/reference/items/Get-EC2Instance.html). Você precisa executar esse comando em cada região na qual tenha instâncias.

```
(Get-EC2Instance).Instances | Select InstanceId, InstanceType, PrivateIpAddress
```

O seguinte é um exemplo de saída.

```
InstanceId          InstanceType PrivateIpAddress
----------          ------------ ----------------
i-0e3e777f4362f1bf7 t2.micro     10.0.12.9
i-09453945dcf1529e9 t2.micro     10.0.143.213
i-08fd74f3f1595fdbd m7i.4xlarge  10.0.1.103
```

------

## Encontrar os horários de execução inicial e mais recente
<a name="find-initial-launch-time"></a>

Quando você descreve uma instância, o horário de execução dela é o mais recente. Depois que você interrompe e inicia uma instância, o horário de execução reflete o horário de início da nova instância. Para descobrir o horário de execução inicial de uma instância, mesmo depois de interrompê-la e iniciá-la, consulte a hora em que a interface de rede primária foi anexada à instância.

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

**Para localizar o horário mais recente de inicialização**  
Selecione a instância e encontre **Hora de inicialização** em **Detalhes da instância** na guia **Detalhes**.

**Para encontrar a hora inicial de inicialização**  
Selecione a instância e encontre a interface de rede primária (o índice do dispositivo é 0) em **Interfaces de rede** na guia **Rede**.

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

**Para encontrar os horários inicial e mais recente de inicialização**  
Use o seguinte comando [describe-instances](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-instances.html) para exibir o horário inicial de inicialização e o horário mais recente de inicialização da instância especificada.

```
aws ec2 describe-instances \
    --instance-id i-1234567890abcdef0 \
    --query 'Reservations[].Instances[].{InstanceID:InstanceId,InitialLaunch:NetworkInterfaces[0].Attachment.AttachTime,LastLaunch:LaunchTime}'
```

O seguinte é um exemplo de saída.

```
[
    {
        "InstanceID": "i-1234567890abcdef0",
        "InitialLaunch": "2024-04-19T00:47:08+00:00",
        "LastLaunch": "2024-05-27T06:24:06+00:00"
    }
]
```

------
#### [ PowerShell ]

**Para localizar o horário mais recente de inicialização**  
Use o cmdlet [Get-EC2Instance](https://docs.aws.amazon.com/powershell/latest/reference/items/Get-EC2Instance.html).

```
(Get-EC2Instance -InstanceId i-1234567890abcdef0).Instances.LaunchTime
```

O seguinte é um exemplo de saída.

```
Monday, May 27, 2024 6:24:06 AM
```

**Para encontrar a hora inicial de inicialização**  
Use o cmdlet [Get-EC2Instance](https://docs.aws.amazon.com/powershell/latest/reference/items/Get-EC2Instance.html).

```
(Get-EC2Instance -InstanceId i-1234567890abcdef0).Instances.NetworkInterfaces.Attachment.AttachTime
```

O seguinte é um exemplo de saída.

```
Friday, April 19, 2024 12:47:08 AM
```

------

# Habilitar a proteção contra interrupção para as instâncias do EC2
<a name="ec2-stop-protection"></a>

Para impedir que uma instância seja interrompida acidentalmente, habilite a proteção contra interrupção da instância. A proteção contra interrupção também protege a instância contra término acidental. 

O atributo `DisableApiStop` da API [https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ModifyInstanceAttribute.html](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ModifyInstanceAttribute.html) do Amazon EC2 controla se a instância pode ser interrompida usando o console do Amazon EC2, a AWS CLI ou a API do Amazon EC2. É possível definir o valor desse atributo ao executar a instância, enquanto a instância estiver em execução ou quando a instância for interrompida.

**Considerações**
+ Habilitar a proteção contra interrupção não impede que você interrompa acidentalmente uma instância iniciando um desligamento da instância com um comando do sistema operacional, como **shutdown** ou **poweroff**.
+ Habilitar a proteção contra interrupção não impede que a AWS interrompa a instância quando houver um [evento programado](monitoring-instances-status-check_sched.md) para interromper a instância.
+ Habilitar a proteção contra interrupção não impede que Amazon EC2 Auto Scaling termine uma instância quando ela não estiver íntegra ou durante eventos de redução da escala horizontal. É possível controlar se um grupo do Auto Scaling pode encerrar uma instância específica ao reduzir a escala horizontalmente usando a [proteção contra redução da escala da instância na horizontal](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-instance-protection.html). 
+ A proteção contra interrupção não só impede que a instância seja interrompida acidentalmente, mas também previne o término acidental durante o uso do console, da AWS CLI ou da API. No entanto, isso não define automaticamente o atributo `DisableApiTermination`. Observe que, quando o atributo `DisableApiStop` é definido como `false`, o atributo `DisableApiTermination` é usado para determinar se a instância pode ser encerrada usando o console, a AWS CLI ou a API. Para obter mais informações, consulte [Encerramento de instâncias do Amazon EC2](terminating-instances.md).
+ Não é possível habilitar a proteção contra interrupções para uma instância cujo volume raiz seja um armazenamento de instância.
+ Não é possível habilitar a proteção contra interrupção para instâncias spot.
+ A API do Amazon EC2 segue um modelo de consistência eventual quando você habilita ou desabilita a proteção contra interrupção. Isso significa que o resultado da execução de comandos para definir o atributo da proteção contra interrupção poderá não ser imediatamente visível para todos os comandos subsequentes que forem executados. Para obter mais informações, consulte [Eventual consistency](https://docs.aws.amazon.com/ec2/latest/devguide/eventual-consistency.html) no *Guia do desenvolvedor do Amazon EC2*.

**Topics**
+ [Habilitar a proteção contra interrupção de uma instância na inicialização](#enable-stop-protection-at-launch)
+ [Habilitar a proteção contra interrupção de uma instância em execução ou interrompida](#enable-stop-protection-on-running-or-stopped-instance)
+ [Desabilitar a proteção contra interrupção de uma instância em execução ou interrompida](#disable-stop-protection-on-running-or-stopped-instance)

## Habilitar a proteção contra interrupção de uma instância na inicialização
<a name="enable-stop-protection-at-launch"></a>

É possível habilitar a proteção contra interrupções de uma instância ao inicializá-la.

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

**Como habilitar a proteção contra término de uma instância na inicialização**

1. Abra o console do Amazon EC2 em [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/).

1. No painel, escolha **Executar instância**.

1. Configure sua instância no [novo assistente de inicialização de instância](ec2-launch-instance-wizard.md).

1. Para habilitar a proteção contra interrupções, em **Advanced details** (Detalhes avançados), em **Stop protection** (Proteção contra interrupções), escolha **Enable** (Habilitar).

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

**Como habilitar a proteção contra término de uma instância na inicialização**  
Use o comando [run-instances](https://docs.aws.amazon.com/cli/latest/reference/ec2/run-instances.html) para inicializar a instância. Adicione o seguinte parâmetro.

```
--disable-api-stop
```

------
#### [ PowerShell ]

**Como habilitar a proteção contra término de uma instância na inicialização**  
Use o cmdlet [New-EC2Instance](https://docs.aws.amazon.com/powershell/latest/reference/items/New-EC2Instance.html) para inicializar a instância. Adicione o seguinte parâmetro.

```
-DisableApiStop $true
```

------

## Habilitar a proteção contra interrupção de uma instância em execução ou interrompida
<a name="enable-stop-protection-on-running-or-stopped-instance"></a>

É possível habilitar a proteção contra interrupções de uma instância enquanto a instância estiver em execução ou interrompida.

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

**Para habilitar a proteção contra interrupção de uma instância**

1. Abra o console do Amazon EC2 em [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/).

1. No painel de navegação à esquerda, selecione **Instâncias**.

1. Selecione a instância e escolha **Ações** > **Configurações da instância** > **Alterar proteção contra interrupção**.

1. Marque a caixa de seleção **Habilitar** e escolha **Salvar**.

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

**Para habilitar a proteção contra interrupção de uma instância**  
Use o comando [modify-instance-attribute](https://docs.aws.amazon.com/cli/latest/reference/ec2/modify-instance-attribute.html).

```
aws ec2 modify-instance-attribute \
    --instance-id i-1234567890abcdef0 \
    --disable-api-stop
```

------
#### [ PowerShell ]

**Para habilitar a proteção contra interrupção de uma instância**  
Use o cmdlet [Edit-EC2InstanceAttribute](https://docs.aws.amazon.com/powershell/latest/reference/items/Edit-EC2InstanceAttribute.html).

```
Edit-EC2InstanceAttribute `
    -InstanceId i-1234567890abcdef0 `
    -DisableApiStop $true
```

------

## Desabilitar a proteção contra interrupção de uma instância em execução ou interrompida
<a name="disable-stop-protection-on-running-or-stopped-instance"></a>

Desabilite a proteção contra interrupções de uma instância em execução ou interrompida usando um dos métodos a seguir.

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

**Para desabilitar a proteção contra interrupção de uma instância em execução ou interrompida**

1. Abra o console do Amazon EC2 em [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/).

1. No painel de navegação à esquerda, selecione **Instâncias**.

1. Selecione a instância e escolha **Actions** (Ações), **Instance Settings** (Configurações da instância) e **Change Termination Protection** (Alterar proteção contra interrupção).

1. Desmarque a caixa de seleção **Habilitar** e escolha **Salvar**.

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

**Para desabilitar a proteção contra interrupção de uma instância em execução ou interrompida**  
Use o comando [modify-instance-attribute](https://docs.aws.amazon.com/cli/latest/reference/ec2/modify-instance-attribute.html).

```
aws ec2 modify-instance-attribute \
    --instance-id i-1234567890abcdef0 \
    --no-disable-api-stop
```

------
#### [ PowerShell ]

**Para desabilitar a proteção contra interrupção de uma instância**  
Use o cmdlet [Edit-EC2InstanceAttribute](https://docs.aws.amazon.com/powershell/latest/reference/items/Edit-EC2InstanceAttribute.html).

```
Edit-EC2InstanceAttribute `
    -InstanceId i-1234567890abcdef0 `
    -DisableApiStop $false
```

------