将 Amazon EC2 实例的根卷更改为保留 - Amazon Elastic Compute Cloud
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

将 Amazon EC2 实例的根卷更改为保留

默认情况下,当实例终止时,实例的 Amazon EBS 根卷会被删除。您可以更改默认行为,确保 Amazon EBS 根卷在实例终止后仍保留。要更改默认行为,请将 DeleteOnTermination 属性设置为 false。您可以在实例启动时或稍后执行此操作。

将根卷配置为在实例启动期间保留

您可以将根卷配置为在启动实例时保留。

Console
使用控制台将根卷配置为在启动实例时保留
  1. 通过以下网址打开 Amazon EC2 控制台:https://console.aws.amazon.com/ec2/

  2. 在导航窗格中,选择实例,然后选择启动实例

  3. 依次选择亚马逊机器映像(AMI)、实例类型、密钥对,然后配置网络设置。

  4. 配置存储中,选择高级

  5. 扩展根卷。

  6. 对于终止时删除,选择

  7. 配置完实例后,选择启动实例

Amazon CLI
使用 Amazon CLI 将根卷配置为在启动实例时保留

使用 run-instances 命令,并包含将 DeleteOnTermination 属性设置为 false 的块储存设备映射。

aws ec2 run-instances --block-device-mappings file://mapping.json ...other parameters...

mapping.json 中指定以下内容。

[ { "DeviceName": "/dev/sda1", "Ebs": { "DeleteOnTermination": false } } ]
Tools for Windows PowerShell
使用 Tools for Windows PowerShell 将根卷配置为在启动实例时保留

使用 New-EC2Instance 命令,并包含将 DeleteOnTermination 属性设置为 false 的块储存设备映射。

C:\> $ebs = New-Object Amazon.EC2.Model.EbsBlockDevice C:\> $ebs.DeleteOnTermination = $false C:\> $bdm = New-Object Amazon.EC2.Model.BlockDeviceMapping C:\> $bdm.DeviceName = "dev/xvda" C:\> $bdm.Ebs = $ebs C:\> New-EC2Instance -ImageId ami-0abcdef1234567890 -BlockDeviceMapping $bdm ...other parameters...

配置根卷以便为现有实例保留

您可以将根卷配置为对运行的实例保留。请注意,您无法使用 Amazon EC2 控制台完成此任务。

Amazon CLI
使用 Amazon CLI 配置根卷以便为现有实例保留

使用 modify-instance-attribute 命令以及将 DeleteOnTermination 属性设置为 false 的块储存设备映射。

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

mapping.json 中指定以下内容。

[ { "DeviceName": "/dev/xvda", "Ebs": { "DeleteOnTermination": false } } ]
Tools for Windows PowerShell
使用 Amazon Tools for Windows PowerShell 配置根卷以便为现有实例保留

使用 Edit-EC2InstanceAttribute 命令以及将 DeleteOnTermination 属性设置为 false 的块储存设备映射。

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

确认已将根卷配置为保留

可以使用 Amazon EC2 控制台或命令行工具确认已将根卷配置为保留。

Console
使用 Amazon EC2 控制台确认已将根卷配置为保留
  1. 通过以下网址打开 Amazon EC2 控制台:https://console.aws.amazon.com/ec2/

  2. 在导航窗格中,选择实例,然后选择实例。

  3. 存储选项卡的块储存设备下,找到根卷的条目。如果终止时删除No,则表示卷已配置为保留。

Amazon CLI
使用 Amazon CLI 确认已将根卷配置为保留

使用 describe-instances 命令,并确认 DeleteOnTermination 响应元素中的 BlockDeviceMappings 属性设置为 false

aws ec2 describe-instances --instance-id i-1234567890abcdef0
... "BlockDeviceMappings": [ { "DeviceName": "/dev/sda1", "Ebs": { "Status": "attached", "DeleteOnTermination": false, "VolumeId": "vol-1234567890abcdef0", "AttachTime": "2013-07-19T02:42:39.000Z" } } ...
Tools for Windows PowerShell
使用 Amazon Tools for Windows PowerShell 确认已将根卷配置为保留

使用 Get-EC2Instance 命令,并确认 DeleteOnTermination 响应元素中的 BlockDeviceMappings 属性设置为 false

C:\> (Get-EC2Instance -InstanceId i-i-1234567890abcdef0).Instances.BlockDeviceMappings.Ebs