我正在开发一个以编程方式创建和管理ec2实例的.net Web应用程序。截至目前,当我创建新实例时,磁盘卷的大小是固定的:由我相信的图像(AMI)定义。
我想在创建新实例时预先定义磁盘卷的大小,这样我之后就不需要运行调整大小操作了。那可能吗?哪种方法最好?
我有一些想法:
在RunInstancesRequest对象上定义卷大小。但我认为没有这样的选择。
使用不同的磁盘大小创建AMI映像的副本,并使用该副本请求新的EC2实例。可以这样做吗?
还有其他/更好的方法吗?
如果有帮助,我附上我目前用于请求新实例的代码:
<p class="taggable">
Hello world, lorem ipsum attack on titan.
</p>
<p>
JS doesn't affect this text.
</p>
答案 0 :(得分:3)
您需要在 launchRequest 中设置 EbsBlockDevice 的 VolumeSize 的(整数GiB)值。 BlockDeviceMappings 强>在发布之前。
请记住,如果指定快照,则卷大小必须等于或大于快照大小。此外,如果您是从快照创建卷而未指定卷大小,则默认为快照大小。
提示:请务必检查 DeleteOnTermination 的布尔值,并且不要假设根卷的默认值为 True 在AWS控制台中。