gpt4 book ai didi

amazon-web-services - 云形成/CDK : how to replace an EC2 instance and keep EBS storage?

转载 作者:行者123 更新时间:2023-12-03 07:13:34 24 4
gpt4 key购买 nike

使用 AWS CDK,可以像这样创建附加 EBS 的 EC2 实例:

BlockDevice durableStorage = BlockDevice.builder()
.deviceName("/dev/sdf")
.volume(BlockDeviceVolume.ebs(
DURABLE_STORAGE_GB,
EbsDeviceOptions.builder()
.deleteOnTermination(false)
.encrypted(true)
.volumeType(EbsDeviceVolumeType.GP2)
.build()))
.build();

Instance instance = new Instance(
this,
"MyInstance",
InstanceProps.builder()
.blockDevices(List.of(durableStorage))
// more config here
.build());

如果堆栈更新涉及 EC2 实例的替换,则如何管理 EBS 附件?旧实例会一直保留到新实例创建后才会被销毁,那么应该如何管理 EBS 卷到新服务器的传输呢?这会在 CloudFormation 中管理吗?

最佳答案

so how should one manage the transfer of the EBS volume to the new server? Is would this be managed in CloudFormation?

它不受管理。需要更换实例(例如 AMI ID 更改)的更新失败,并显示以下错误消息:

Update to resource type AWS::EC2::VolumeAttachment is not supported.

解决这个问题的一种方法是分阶段更新。首先,删除模板中的附件(只需将其注释掉)并更新堆栈以将实例与卷分离。然后您对实例进行替换更新。最后,取消注释附件并再次更新。这会导致卷重新连接到新实例。

附注

我根据我在 CloudFormation 中针对此问题所做的特定场景的快速实验编写了这个答案。也许有更好的方法,我目前不知道。

关于amazon-web-services - 云形成/CDK : how to replace an EC2 instance and keep EBS storage?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62343717/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com