Sal Cloud не смог найти aws AMI

Я использую Salt Cloud (AWS в качестве поставщика), и мой файл профиля:

ec2-profile:
  provider: ec2-config
  image: ami-7e2da54e
  size: Micro Instance

Я запускаю это для тестирования:

sudo salt-cloud --profile=ec2-private test_minion -l debug

У меня была эта ошибка:

[DEBUG   ] Using AWS endpoint: ec2.us-east-1.amazonaws.com
[DEBUG   ] AWS Request: https://ec2.us-east-1.amazonaws.com/?Action=RunInstances&ImageId=ami-7e2da54e&InstanceType=Micro%20Instance&KeyName=salt_cloud_key&MaxCount=1&MinCount=1&Version=2014-10-01
[INFO    ] Starting new HTTPS connection (1): ec2.us-east-1.amazonaws.com
[DEBUG   ] Setting read timeout to None
[DEBUG   ] "GET /?Action=RunInstances&ImageId=ami-7e2da54e&InstanceType=Micro%20Instance&KeyName=salt_cloud_key&MaxCount=1&MinCount=1&Version=2014-10-01 HTTP/1.1" 400 None
[DEBUG   ] AWS Response Status Code: 400
[ERROR   ] AWS Response Status Code and Error: [400 400 Client Error: Bad Request] {'Errors': {'Error': {'Message': "The image id '[ami-7e2da54e]' does not exist", 'Code': 'InvalidAMIID.NotFound'}}, 'RequestID': '6b8f2fb5-b24e-4438-8e45-c6b01dc08519'}
[ERROR   ] Error requesting instance: Errors
Error: There was a profile error: Failed to deploy VM

Есть ли у вас какие-либо идеи?

Обновить:

Я изменил изображение AMI ID. Теперь у меня есть это сообщение отладки:

InvalidParameterValue

Что (согласно документации AWS):

An invalid or out-of-range value was supplied for the input parameter.

1 ответ

Используйте AWS CLI, чтобы проверить, подходит ли AMI для вашего региона

aws ec2 describe-images --image-ids ami-XXXXXXX

Для параметра "size" salt-cloud-профиля profile.conf правильное присвоение ему имени AWS - "Тип экземпляра". Вы можете проверить AWS на правильность именования. https://aws.amazon.com/ec2/instance-types/

Или вы можете использовать команду salt-cloud для отображения типа экземпляра с помощью команды --list-sizes

salt-cloud --list-sizes <provider_name>
salt-cloud --list-sizes test_minion

p/s: не принимайте названия соленых облаков как должное, разработчики, кажется, всегда выбирают непонятное имя атрибута. Это хорошая идея, чтобы документировать карту именования, чтобы перейти к следующему человеку, плохо знакомому с Salstack

Другие вопросы по тегам