2016-10-20 6 views
1

Я пытаюсь импортировать файл OVA Windows 2012 в aws. Я использую эту документацию.AWS ImportImage: ведро S3 не существует

AWS VMWare Import

Я создал s3 ведро для хранения файлов OVA, а файлы OVA были загружены там.

И когда я пытаюсь импортировать файлы изображений в АМС, я получаю сообщение об ошибке:

aws ec2 import-image --description "server1" --disk-containers file://containers.json --profile=company-dlab_us-east-1 

An error occurred (InvalidParameter) when calling the ImportImage operation: S3 bucket does not exist: s3://companyvmimport/ 

что странно, потому что я могу перечислить ведро я пытаюсь загрузить с помощью AWS командной строки:

aws s3 ls --profile=company-dlab_us-east-1 
2016-10-20 09:52:33 companyvmimport 

Это мой containers.json файл:

[ 
    { 
     "Description": "server1", 
     "Format": "ova", 
     "UserBucket": { 
     "S3Bucket": "s3://companyvmimport/", 
     "S3Key": "server1.ova" 
    } 
}] 

Где я буду неправильно? Как я могу заставить это работать?

ответ

1

Я думаю, что у вас есть проблема в вашем копирования/вставки, в файле containers.json вы ссылаетесь ведро, как s3://companyvmimport, но у вас есть ошибка о kpmgvmimport

все равно вам не нужно указывать протокол s3 в формате JSON

файл JSon должен выглядеть

[ 
    { 
     "Description": "server1", 
     "Format": "ova", 
     "UserBucket": { 
     "S3Bucket": "companyvmimport", 
     "S3Key": "server1.ova" 
    } 
}] 

Если файл не прав в «корне» ведро вам нужно указать полный путь.

+0

извините, это была ошибка с моей стороны, пытающаяся скрыть название компании. Я скорректировал этот пример, так что это имеет смысл. Спасибо – bluethundr

+0

ok вы можете подтвердить, что он работает, когда вы удаляете часть протокола S3 в параметре S3Bucket –

+0

ok. Я попытался удалить протокол из файла container.json. Эта часть, похоже, работает! Однако теперь кажется, что мой пользователь не имеет доступа к ведро s3. Даже он должен иметь правильную политику. Вот подробности [проблема доступа s3] (https://gist.github.com/bluethundr/36f9fb66e260b64076e1aa85f3439464) Я даже попытался предоставить пользователю AmazonS3FullAccess. Еще нет кубиков. Тот же результат. – bluethundr

0

Я думаю, что комментарий в ответе о настройке настраиваемой политики в ведре S3 содержит JSON, который может предоставлять доступ всем (что может и не быть желательным).

Если вы добавите в JSON инструкцию Principal, вы можете ограничить доступ только к себе.

Я столкнулся с этой же проблемой (у пользователя нет доступа к объекту S3), и после долгого боя с помощью этого сообщения и некоторых дальнейших исследований, наконец, понял это. Я открыл a separate post специально для этого вопроса «не имеет доступа».