Возможно ли создать экземпляр ec2 с помощью boto3 в python? Документ Boto3 здесь не помогает, и я не могу найти документы помощи в Интернете. предоставьте несколько примеров кодов/ссылок.Как создать экземпляр ec2 с помощью boto3
ответ
API-интерфейс изменился, но он тут же в документации
# Boto 3
ec2.create_instances(ImageId='<ami-image-id>', MinCount=1, MaxCount=5)
Ссылка на документацию: http://boto3.readthedocs.org/en/latest/guide/migrationec2.html#launching-new-instances
Обратитесь к API Документах все доступные варианты для создания экземпляру
http://boto3.readthedocs.org/en/latest/reference/services/ec2.html#EC2.Subnet.create_instances
Ссылка, которую вы действительно ищете в документации, это create_instances()
method of the ServiceResource object. Это тип объекта, которому вы звоните, если вы создаете EC2 ресурс, как это:
s = boto3.Session(region_name="us-west-1")
ec2 = s.resource('ec2')
...
instance = ec2.create_instances(**y_kwargs)
Это содержит более подробный пример и длинный список доступных параметров.
Вы также можете получить значения параметров для экземпляров АМС, уже работающих с помощью интерфейса командной строки AWS:
$ aws ec2 describe-instances
Это печатает JSON-файл, из которого соответствующие параметры могут быть извлечены и переданы методу create_instances()
, (Или вы можете использовать клиента boto и позвонить по телефону describe_instances()
method.)
(Примечание. Если вам интересно, какая разница между Клиентом и Ресурсом, они служат для разных целей для одного и того же конца - клиент интерфейс более низкого уровня, а Resource - интерфейс более высокого уровня.)
Знаете ли вы, есть ли аргумент ключевого слова для определения группы безопасности? Таким образом, я могу создать экземпляр и установить нужную группу безопасности, которая позволит мне ssh на сервере. – applecider
Он должен принять аргумент 'SecurityGroups = ['secgroup', ..]'. Этот [выпуск] (https://github.com/boto/boto3/issues/136), похоже, предполагает, что 'create_instances' запускает классический boto2' run_instances' за кулисами, поэтому исходные параметры для 'run_instances' должны быть действительными , См. [Документация] (http://botocore.readthedocs.org/ru/latest/reference/services/ec2.html#EC2.Client.run_instances) – gbs
Спасибо, ответьте, дайте ему шанс – applecider