

# Manter um volume raiz do Amazon EBS após o encerramento de uma instância do Amazon EC2
<a name="configure-root-volume-delete-on-termination"></a>

Por padrão, o volume raiz do Amazon EBS para uma instância é excluído quando a instância é terminada. Você pode alterar o comportamento padrão para garantir que o volume raiz do Amazon EBS persista após a instância ser terminada. Para alterar o comportamento padrão, defina o atributo `DeleteOnTermination` como `false`. Você pode fazer isso ao iniciar a instância ou posteriormente.

**Topics**
+ [Configurar o volume raiz para persistir durante a execução da instância](#Using_ChangeRootDeviceVolumeToPersist)
+ [Configurar o volume raiz para persistir em uma instância existente](#set-deleteOnTermination-aws-cli)
+ [Confirmar que um volume raiz está configurado para persistir](#Using_ConfirmRootDeviceVolumeToPersist)

## Configurar o volume raiz para persistir durante a execução da instância
<a name="Using_ChangeRootDeviceVolumeToPersist"></a>

Você pode configurar o volume raiz para persistir quando a instância for iniciada.

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

**Para configurar o volume raiz para persistir ao inicializar 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, escolha **Instances (Instâncias)** e **Launch instances (Executar instâncias)**.

1. Escolha uma imagem de máquina da Amazon (AMI), um tipo de instância e um par de chaves e defina suas configurações de rede.

1. Em **Configurar armazenamento**, escolha **Avançado**.

1. Expanda o volume raiz.

1. Em **Excluir no encerramento**, escolha **Não**.

1. Ao concluir a configuração da instância, escolha **Executar instância**.

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

**Para configurar o volume raiz para persistir ao inicializar uma instância**  
Use o comando [run-instances](https://docs.aws.amazon.com/cli/latest/reference/ec2/run-instances.html) e inclua a seguinte opção.

```
--block-device-mappings file://mapping.json
```

Em `mapping.json`, especifique um mapeamento de dispositivos de blocos que defina o atributo `DeleteOnTermination` como `false`.

```
[
    {
        "DeviceName": "{{/dev/sda1}}",
        "Ebs": {
            "DeleteOnTermination": false
        }
    }
]
```

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

**Para configurar o volume raiz para persistir ao inicializar uma instância**  
Use o cmdlet [New-EC2Instance](https://docs.aws.amazon.com/powershell/latest/reference/items/New-EC2Instance.html) e inclua o seguinte parâmetro.

```
-BlockDeviceMapping $bdm
```

Crie um mapeamento de dispositivos de blocos que defina o atributo `DeleteOnTermination` como `$false`.

```
$ebs = New-Object Amazon.EC2.Model.EbsBlockDevice
$ebs.DeleteOnTermination = $false
$bdm = New-Object Amazon.EC2.Model.BlockDeviceMapping
$bdm.DeviceName = "dev/xvda"
$bdm.Ebs = $ebs
```

------

## Configurar o volume raiz para persistir em uma instância existente
<a name="set-deleteOnTermination-aws-cli"></a>

Você pode configurar o volume raiz para persistir para uma instância em execução. Observe que não é possível realizar essa tarefa usando o console do Amazon EC2.

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

**Para configurar o volume raiz para persistir para uma instância existente**  
Use o comando [modify-instance-attribute](https://docs.aws.amazon.com/cli/latest/reference/ec2/modify-instance-attribute.html) com um mapeamento de dispositivo de blocos que define o atributo `DeleteOnTermination` como `false`.

```
aws ec2 modify-instance-attribute \
    --instance-id {{i-1234567890abcdef0}} \
    --block-device-mappings file://mapping.json
```

Especifique o seguinte em `mapping.json`.

```
[
    {
        "DeviceName": "/dev/xvda",
        "Ebs": {
            "DeleteOnTermination": false
        }
    }
]
```

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

**Para configurar o volume raiz para persistir para uma instância existente**  
Use o cmdlet [Edit-EC2InstanceAttribute](https://docs.aws.amazon.com/powershell/latest/reference/items/Edit-EC2InstanceAttribute.html) com um mapeamento de dispositivos de blocos que define o atributo `DeleteOnTermination` como `$false`.

```
$ebs = New-Object Amazon.EC2.Model.EbsInstanceBlockDeviceSpecification
$ebs.DeleteOnTermination = $false
$bdm = New-Object Amazon.EC2.Model.InstanceBlockDeviceMappingSpecification
$bdm.DeviceName = "{{/dev/xvda}}"
$bdm.Ebs = $ebs
Edit-EC2InstanceAttribute `
    -InstanceId {{i-1234567890abcdef0}} `
    -BlockDeviceMapping $bdm
```

------

## Confirmar que um volume raiz está configurado para persistir
<a name="Using_ConfirmRootDeviceVolumeToPersist"></a>

Confirme que um volume raiz está configurado para persistir.

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

**Para confirmar que um volume raiz está configurado para persistir**

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 (Instâncias)** e selecione a instância.

1. Na guia **Storage (Armazenamento)**, em **Block devices (Dispositivos de blocos)**, localize a entrada do volume raiz. Se a opção **Delete on termination (Excluir ao encerrar)** for `No`, o volume será configurado para persistir.

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

**Para confirmar que um volume raiz está configurado para persistir**  
Use o comando [describe-instances](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-instances.html) e verifique se o atributo `DeleteOnTermination` está definido como `false`.

```
aws ec2 describe-instances \
    --instance-id {{i-1234567890abcdef0}} \
    --query "Reservations[].Instances[].BlockDeviceMappings"
```

O seguinte é um exemplo de saída.

```
[
    [
        {
            "DeviceName": "/dev/xvda",
            "Ebs": {
                "AttachTime": "2024-07-12T04:05:33.000Z",
                "DeleteOnTermination": false,
                "Status": "attached",
                "VolumeId": "vol-1234567890abcdef0"
                
        }
    ]              
]
```

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

**Para confirmar que um volume raiz está configurado para persistir**  
Use o cmdlet [Get-EC2Instance](https://docs.aws.amazon.com/powershell/latest/reference/items/Get-EC2Instance.html) e verifique se o atributo `DeleteOnTermination` está definido como `False`.

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

O seguinte é um exemplo de saída.

```
AssociatedResource  : 
AttachTime          : 7/12/2024 4:05:33 AM
DeleteOnTermination : False
Operator            : 
Status              : attached
VolumeId            : vol-1234567890abcdef0
```

------