Ich versuche Spot-Instanzen in verschiedenen Regionen mit Boto3 zu erstellen. Meine Standardregionen definiert als us-east-1.Erstellen Sie Spot-Instanzen in verschiedenen Regionen
Wenn ich versuche, die vor Ort Instanzen in verschiedenem Bereich von dem Standard zu erstellen, wird eine Ausnahme mit dieser Meldung ausgelöst:
botocore.exceptions.ClientError: An error occurred (InvalidParameterValue) when calling the RequestSpotInstances operation: Invalid availability zone: [eu-west-2b]
Die Instanzen erstellt diesen Code-Schnipsel mit:
for idx in range(len(regions)):
client.request_spot_instances(
DryRun=False,
SpotPrice=price_bids,
InstanceCount=number_of_instances,
LaunchSpecification=
{
'ImageId': ami_id,
'KeyName': 'matrix',
'SecurityGroupIds': ['sg-5f07f52c'],
'SecurityGroups': ['MatrixSG'],
'InstanceType': machine_type,
'Placement':
{
'AvailabilityZone': regions[idx],
},
},
)
Wenn Sie in diesem AWS-Konto in die EC2-Verwaltungskonsole wechseln und in die Region London wechseln, welche AZs werden angezeigt, wenn Sie versuchen, eine EC2-Instanz (im Feld Subnetze) zu starten? Ist diese Sicherheitsgruppe in "eu-west-2" definiert? (Übrigens ist es wahrscheinlich nicht notwendig, sowohl "SecurityGroupIds" als auch "SecurityGroups" einzubeziehen.) –
@JohnRotenstein Ja, die Sicherheitsgruppe existiert in dieser Region. Ich habe auch die AMI in diese Region kopiert. – liorko