2017-10-18 8 views
0

Je reçois une erreur lorsque j'utilise la configuration de la Boto 2 documentsComment configurer en utilisant boto 2 la configuration de la lauch?

L'erreur est une exception qui est jeté en disant:

« Aucun défaut VPC pour cet utilisateur »

D'une recherche initiale , il semble que j'ai besoin d'utiliser des sous-réseaux, mais j'ai un VPC par défaut associé à mon compte. Comment puis-je configurer par programme une configuration de lancement sans VPC par défaut? Pour commencer, je ne les suivantes:

 #=================AMI to launch====================================================== 
     as_ami = { 
     'id': 'ami-5648a**', #The AMI ID of the instance your Auto Scaling group will launch 
     'VpcId' : 'vpc-0c805***', 
     'access_key': 'keyFile.pem', #The key the EC2 instance will be configured with 
     'security_groups': 'sg-1d83b***', #The security group(s) your instances will belong to 
     'instance_type': 't2.micro', #The size of instance that will be launched 
     'instance_monitoring': True #Indicated whether the instances will be launched with detailed monitoring enabled. Needed to enable CloudWatch 
     } 



    autoscaling_group = { 
    'name': 'myAG', #descriptive name for your auto scaling group 
    'min_size': 1 , #Minimum number of instances that should be running at all times 
    'max_size': 1 #Maximum number of instances that should be running at all times 
    } 

    lc_name = 'myLG' #Descriptive name for your launch configuration 

    conn_as = AutoScaleConnection(AWS_ACCESS_KEY,AWS_SECRET_KEY) 


    lc = LaunchConfiguration(name = lc_name, 
           image_id = as_ami['id'], 
           key_name = as_ami['access_key'], 
           security_groups = as_ami['security_groups'], 
           instance_type = as_ami['instance_type'], 
           user_data = user_data, 
           associate_public_ip_address=True, 
           instance_monitoring=as_ami['instance_monitoring']) 

    conn_as.create_launch_configuration(lc) 

L'erreur est le suivant

Traceback (most recent call last): 
    File "createResource.py", line 156, in <module> 
    main() 
    File "createResource.py", line 122, in main 
    conn_as.create_launch_configuration(lc) 
    File "C:\Python27\lib\site-packages\boto\ec2\autoscale\__init__.py", line 291, in create_launch_configuration 
    Request, verb='POST') 
    File "C:\Python27\lib\site-packages\boto\connection.py", line 1208, in get_object 
    raise self.ResponseError(response.status, response.reason, body) 
boto.exception.BotoServerError: BotoServerError: 400 Bad Request 
<ErrorResponse xmlns="http://autoscaling.amazonaws.com/doc/2011-01-01/"> 
    <Error> 
    <Type>Sender</Type> 
    <Code>ValidationError</Code> 
    <Message>No default VPC for this user</Message> 
    </Error> 
    <RequestId>fac3b7a6-b39c-11e7-b881-75dd83913ada</RequestId> 
</ErrorResponse> 

Répondre

0

Vous ne disposez pas d'un défaut VPC. Si vous pensez que vous avez un VPC par défaut, les informations d'identification AWS que vous utilisez peuvent être pour un compte différent ou vous créez dans une autre région qui n'a pas de VPC par défaut.

Quelles sont vos options?

  • Vérifiez la région et assurez-vous que vous créez dans la bonne région
  • Vérifiez les informations d'identification AWS vous indiquez dans Boto est pour le bon compte
  • S'il n'y a pas défaut VPC, appelez AWS et restaurer votre ancien VPC par défaut (ou) comme John Rotenstein mentionné, create a new default VPC
  • indiquer l'ID de sous-réseau de la VPC dans lequel vous voulez créer vos instances
+0

Il est maintenant possible de [Créer un nouveau défaut VPC en utilisant AWS Cons ole ou CLI] (http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/default-vpc.html). –

+0

Merci @JohnRotenstein. Je ne savais pas à ce sujet. – helloV

+0

@helloV Comment associer une configuration de lancement à un VPC non-par défaut avec un ID de sous-réseau. Voulez-vous dire VPC ID ou Ipv4 CIDR? –