2016-07-29 71 views
1

我正在編寫一個Python 2.7腳本,它將停止EC2實例,調整實例大小,然後啓動實例備份。有沒有辦法使用boto3來調整實例的大小?如果沒有,是否有另一種方式來以編程方式處理實例大小調整?使用boto3調整EC2實例的尺寸

+0

經過這太問題http://stackoverflow.com/questions/31907783/how-to-change-aws-ec2-instance-type – error2007s

+1

通過調整大小,做您的意思是更改實例類型或更改EBS卷大小? –

+0

@KarenB我應該澄清,我的意思是改變實例類型。 – danielhklein

回答

4

這似乎工作:

import boto3 

client = boto3.client('ec2') 

# Insert your Instance ID here 
my_instance = 'i-xxxxxxxx' 

# Stop the instance 
client.stop_instances(InstanceIds=[my_instance]) 
waiter=client.get_waiter('instance_stopped') 
waiter.wait(InstanceIds=[my_instance]) 

# Change the instance type 
client.modify_instance_attribute(InstanceId=my_instance, Attribute='instanceType', Value='m3.xlarge') 

# Start the instance 
client.start_instances(InstanceIds=[my_instance])