Я разрабатываю веб-приложение .net, которое создает и управляет экземплярами ec2 программно. На данный момент, когда я создаю новые экземпляры, размер тома диска фиксируется: я уверен, определяется изображением (AMI).AWS. Net SDK Создайте экземпляр Amazon EC2 с конкретным объемом объема EBS
Я хотел бы предопределить размер тома диска при создании нового экземпляра, чтобы после этого мне не нужно было запускать операцию изменения размера. Это возможно? Какой был бы лучший подход?
У меня есть несколько идей:
Определить размер тома на 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. –
Я этого не понимаю. У AMI нет SnapshotId, не так ли? – nest