2017-01-27 2 views
0

Ich habe ein Python 2-Skript, das boto3-Bibliothek verwendet.Fehler beim Ändern des Instanztyps in einem Python für Schleife

Grundsätzlich habe ich eine Liste von Instanz-IDs und ich muss darüber iterieren, den Typ jeder Instanz von c4.xlarge zu t2.micro ändern.

Um diese Aufgabe zu erfüllen, rufe ich die modify_instance_attribute Methode.

Ich weiß nicht, warum, aber mein Skript hängt mit der folgenden Fehlermeldung:

EBS-optimierte Instanzen für Ihre Wunsch-Konfiguration nicht unterstützt.

Hier ist meine allgemeine Szenario:

sagen, dass ich wie diese unten ein Stück Code haben:

def change_instance_type(instance_id): 
    client = boto3.client('ec2') 
    response = client.modify_instance_attribute(
     InstanceId=instance_id, 
     InstanceType={ 
      'Value': 't2.micro' 
     } 
    ) 

Also, wenn ich es wie folgt aus:

change_instance_type('id-929102')

funktioniert alles problemlos.

jedoch seltsam genug, wenn ich es in einer for-Schleife wie folgt

instances_list = ['id-929102'] 
for instance_id in instances_list: 
    change_instance_type(instance_id) 

ausführen erhalte ich die Fehlermeldung, die oben (dh EBS-optimierte Instanzen sind nicht für Ihr Wunsch-Konfiguration unterstützt) und meine Skript stirbt.

Eine Idee, warum das passiert?

Antwort

Verwandte Themen