使用Python Boto程序化启动新的EC2实例
我想要做的是,不想每次都通过AWS.Amazon.com网站手动创建新的EC2实例,而是想用Python的boto模块来编程自动启动新的实例,这些实例是基于一个特定的AMI(亚马逊机器镜像)来创建的。
import boto.ec2
conn = boto.ec2.connect_to_region("us-west-2",
aws_access_key_id='<aws access key>',
aws_secret_access_key='<aws secret key>')
#how to now spin up new instances based off a snapshot (already) preconfigured on ec2?
就像我在评论中提到的,我想要根据一个特定的AMI ID来启动新的实例?
我找不到一个好的方法来做到这一点。有人能帮忙吗?
谢谢
1 个回答
3
来自文档:
你使用EC2最重要和最常见的任务可能就是启动、停止和终止实例。最简单的启动实例的方法如下:
conn.run_instances('<ami-image-id>')
这段代码会在指定的区域启动一个实例,并使用默认的参数。不过,你无法通过SSH远程登录到这个机器,因为它没有设置安全组。想了解如何创建安全组,可以查看EC2安全组的相关内容。
假设你已经有了密钥对,想要一个特定类型的实例,并且安全组也已经设置好了。在这种情况下,我们可以使用关键字参数来实现:
conn.run_instances( '<ami-image-id>', key_name='myKey', instance_type='c1.xlarge', security_groups=['your-security-group-here'])
<ami-image-id>
是你需要填写你的ami ID的地方。