我正在開發一個以編程方式創建和管理ec2實例的.net Web應用程序。到目前爲止,當我創建新實例時,磁盤卷的大小是固定的:我認爲由映像(AMI)定義。AWS .Net SDK使用特定的EBS卷大小創建Amazon EC2實例
我想在創建新實例時預先定義磁盤卷的大小,以便後面不需要運行調整大小操作。那可能嗎?這將是最好的方法?
我有幾個想法:
定義RunInstancesRequest對象的音量大小。但我認爲沒有這樣的選擇。
使用不同的磁盤大小創建AMI映像的副本,並使用該副本請求新的EC2實例。這可以做到嗎?
其他/更好的方法?
在情況下,幫助,我附上了代碼,我目前使用要求新的實例:
var launchRequest = new RunInstancesRequest()
{
ImageId = amiID,
InstanceType = type,
MinCount = 1,
MaxCount = 1,
SecurityGroupIds = groups
};
var launchResponse = ec2Client.RunInstances(launchRequest);
var instances = launchResponse.Reservation.Instances;
var myInstance = instances.First();
其實它並不是我的意圖。這會創建第二個EBS卷:有一個基於ImageId,另一個是在'launchRequest.BlockDeviceMappings'上定義的另一個空的。我更喜歡有一個更大的音量。 – nest
我想你可以通過將SnapshotId參數設置爲AMI根卷的快照ID來完成你想要的操作 –
我並不真正理解這一點。 AMI沒有SnapshotId,是嗎? – nest