AWS S3 CLI - Не удалось подключиться к URL конечной точки
$ aws s3 ls
Could not connect to the endpoint URL: "https://s3.us-east-1a.amazonaws.com/"
В чем может быть проблема?
Ответы
Ответ 1
У вас, вероятно, что-то не так в профиле по умолчанию для области по умолчанию.
Проверьте свой файл на ~/.aws/config
, у вас есть что-то вроде
[default]
region=us-east-1a
...
Закрепите область до region=us-east-1
, а затем команда будет работать правильно
Ответ 2
сначала вы используете "aws configure", затем введите ключ доступа и секретный ключ и регион. регион, который вы вводите, будет важен для этой проблемы. попробуйте ввести что-то вроде 's3.us-east-1', а не 's3.us-east-1a'. он решит проблему.
Ответ 3
Конечные точки S3 относятся к каждой области, а не к AZ:
http://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region
В вашем случае это должно быть https://s3.amazonaws.com
.
Ответ 4
Если ни одно из приведенных выше решений не работает, проверьте также свои разрешения и настройки брандмауэра. В моем случае добавление переменных среды прокси выполняло эту работу.
Для Linux или Mac
$ export HTTP_PROXY=http://<YOUR PROXY IP>:<PORT>
$ export HTTPS_PROXY=http://<YOUR PROXY IP>:<PORT>
Для Windows
set HTTP_PROXY=http://<YOUR PROXY IP>:<PORT>
set HTTPS_PROXY=http://<YOUR PROXY IP>:<PORT>
![aws cli Windows]()
![enter image description here]()
Ответ 5
Некоторые службы AWS доступны только в определенных регионах, которые не соответствуют вашему фактическому региону. Если это так, вы можете отменить стандартную настройку, добавив регион в свою действительную команду cli.
Это может быть удобным решением для людей, которые не хотят изменять свой регион по умолчанию в файле конфигурации. ЕСЛИ ваш общий файл конфигурации не установлен: Пожалуйста, проверьте приведенные выше предложения.
В этом примере регион вынужден к eu-west-1 (например, Ирландия):
aws s3 ls --region=eu-west-1
Протестировано и используется с aws workmail для удаления пользователей:
aws workmail delete-user --region=eu-west-1 --organization-id [org-id] --user-id [user-id]
Я получил эту идею из этой темы, и она отлично подходит для меня, поэтому я хотел поделиться ею. Надеюсь, поможет!
Ответ 6
Вы должны указать регион в своем скрипте CLI, а не полагаться на регион по умолчанию, указанный с помощью aws configure (как утверждает текущий самый популярный ответ). На это ссылался другой ответ, но синтаксис неправильный, если вы используете CLI через AWS Tools for Powershell.
Этот пример заставляет регион нас-запад-2 (Северная Калифорния), синтаксис PowerShell:
aws s3 ls --region us-west-2
Ответ 7
Возможно, что-то не так с регионом по умолчанию при настройке aws. В вашем случае, URL говорит: " https://s3.us-east-1a.amazonaws.com/ "
В командной строке
Настройте aws, введите ваши ключи, теперь исправьте ваш регион от us-east-1a до us-east-1.
Пожалуйста, проверьте синтаксис в соответствии с CLI, который вы используете. Это будет полезно.
Ответ 8
Предполагая, что ваш профиль в ~/aws/config
использует регион (вместо AZ согласно вашему первоначальному вопросу); другая причина - неспособность вашего клиента подключиться к s3.us-east-1.amazonaws.com
. В моем случае мне не удалось разрешить это DNS-имя из-за ошибки в конфигурации моей сети. Решение проблемы с DNS решило мою проблему.
Ответ 9
Возможно, вы используете VPN своей компании. Просьба отключиться с этим и попробуйте еще раз. Даже я получил ту же ошибку из командной строки, когда я отключил VPN, я получаю вывод.