Arindam Bose
Arindam Bose

Reputation: 197

Starting an AWS EC2 instance via Python

I have been trying to start an already launched EC2 instance via python. I have configured AWS CLI from command prompt using the command below

aws configure
aws_access_key_id = MY_ACCESS_KEY
aws_secret_access_key = MY_SECRET_KEY
region=us-west-2b
output=Table

Now I used the following code from Spyder IDE of Anaconda

import boto3
instanceID = 'i-XXXXXXXXXXad'
ec2 = boto3.client('ec2', region_name='us-west-2b')
ec2.start_instances(InstanceIds=['i-XXXXXXXXXad'])

This gives the following error

EndpointConnectionError: Could not connect to the endpoint URL: "https://ec2.us-west-2b.amazonaws.com/"

I have been trying to debug the error for hours now, any kind of help will be useful. Also, I have a .pem as well as .ppk file created to start the instance via Putty, the .ppk file also has a paraphrase, do I need to do any kind of additional steps for this?

Upvotes: 0

Views: 243

Answers (1)

helloV
helloV

Reputation: 52433

region=us-west-2b

is not a region, it is an availability zone. Try:

region=us-west-2

You can test by:

$ host ec2.us-west-2b.amazonaws.com
Host ec2.us-west-2b.amazonaws.com not found: 3(NXDOMAIN)

$ host ec2.us-west-2.amazonaws.com
ec2.us-west-2.amazonaws.com has address 54.240.251.131

Upvotes: 3

Related Questions