Amazon EC2 实例根设备卷 - Amazon Elastic Compute Cloud

Amazon EC2 实例根设备卷

当您启动一个实例时,根设备卷 包含用于启动该实例的映像。当您启动 Windows 实例时,系统会从 EBS 快照创建根 EBS 卷并将其附加到实例。

将根卷配置为保留

默认情况下,当实例终止时,将删除根卷 (DeleteOnTermination 属性为 true)。当您启动实例时,可以使用控制台更改 DeleteOnTermination 属性。要对现有实例更改此属性,您必须使用命令行。

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

可以使用 Amazon EC2 控制台或命令行工具将根卷配置为在启动实例时保留。

Console

使用控制台将根卷配置为在启动实例时保留

  1. 通过以下网址打开 Amazon EC2 控制台:https://console.aws.amazon.com/ec2/

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

  3. Choose an Amazon Machine Image (AMI) 页面上,选择要使用的 AMI 并选择 Select

  4. 遵循向导完成 Choose an Instance Type (选择一个实例类型)Configure Instance Details (配置实例详细信息) 页面。

  5. Add Storage (添加存储) 页面上,取消选中根卷的 Delete On Termination (终止时删除)

  6. 完成其余向导页面上的操作,然后选择 Launch

AWS CLI

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

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

C:\> 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...

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

可以只使用命令行工具,配置根卷以便为正在运行的实例保留。

AWS CLI

使用 AWS 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

使用 AWS 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 控制台或命令行工具确认已将根卷配置为保留。

New console

使用 Amazon EC2 控制台确认已将根卷配置为保留

  1. 通过以下网址打开 Amazon EC2 控制台:https://console.aws.amazon.com/ec2/

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

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

Old console

使用 Amazon EC2 控制台确认已将根卷配置为保留

  1. 通过以下网址打开 Amazon EC2 控制台:https://console.aws.amazon.com/ec2/

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

  3. Description (描述) 选项卡中,选择 Root device (根设备) 的条目。如果终止时删除False,则表示卷已配置为保留。

AWS CLI

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

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

C:\> 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

使用 AWS Tools for Windows PowerShell 确认已将根卷配置为保留

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

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

更改根卷的初始大小

默认情况下,根卷的大小取决于快照的大小。您可以按下述方式使用实例的块储存设备映射增加根卷的初始大小。

  1. 确定 AMI 中指定的根卷的设备名称,如 查看 AMI 块储存设备映射中的 EBS 卷 中所述。

  2. 确认 AMI 块储存设备映射中指定的快照的大小,如 查看 Amazon EBS 快照信息 中所述。

  3. 在启动实例时更新块储存设备映射 中所述,使用实例块储存设备映射覆盖根卷的大小,请指定大于快照大小的卷大小。

例如,实例块储存设备映射的以下条目将根卷的大小 /dev/xvda 增加到 100 GiB。您可以在实例块储存设备映射中省略快照 ID,因为快照 ID 已在 AMI 块储存设备映射中指定。

{ "DeviceName": "/dev/xvda", "Ebs": { "VolumeSize": 100 } }

有关更多信息,请参阅块设备映射