2015-04-23 1 views
1

Tout ce que je me bats pour ajouter des balises de nom pour ma nouvelle instance EC2,exemple AWS Boto marquage

Y at-il façon AWS pour identifier la dernière instance créée?

reservations = ec2.get_all_instances() 
instance = reservations[0].instances[0] 
create_tags([instance.id], {"Name": tag}) 

Ce n'est pas est mise en balises par exemple récemment déployé.

Répondre

1

Pour nommer une instance nouvellement créée, vous pouvez ajouter le nom de balise immédiatement après la création du vm:

import boto.ec2 
conn = boto.ec2.connect_to_region("eu-west-1",aws_access_key_id='key',aws_secret_access_key='sectret') 
reservations = conn.run_instances("ami-a10897d6", min_count=1, max_count=1, key_name="key", security_group_ids=["sg-123"], instance_type="t2.micro", subnet_id="subnet-123") 
instance = reservations.instances[0] 
conn.create_tags([instance.id], {"Name":"foo"}) 

Alternativement, si vous connaissez excactly l'heure de début, vous pouvez utiliser le paramètre filters avec * comme wildcard. Un exemple plus dynamique peut être:

from datetime import datetime 
now = datetime.utcnow() 
filter_now = "%s*" % (now.strftime("%Y-%m-%dT%H:%M")) 
reservations = conn.get_all_instances(filters={"launch_time":filter_now}) 
+0

Merci, ça a marché –