Проблема с ключом доступа AWS при доступе к контейнеру s3 на виртуальной машине Azure

Проблема с ключом доступа AWS при доступе к контейнеру s3 на виртуальной машине Azure

Я пытаюсь получить доступ к контейнеру AWS s3 из кластерной виртуальной машины Azure HDInsight. Я сгенерировал новые ключи и добавил их в .aws/credentials. «aws s3 ls» отлично работает в виртуальной машине Azure. Если я выполняю hadoop distcp или читаю файл s3 в spark-shell, я получаю ошибку 403 «Предоставленный вами идентификатор ключа доступа AWS не существует в наших записях». Я пробовал экспортировать AWS_SESSION_TOKEN, AWS_ACCESS_KEY_ID и AWS_SECRET_ACCESS_KEY, но безуспешно. Пожалуйста, помогите мне решить эту проблему.

решение1

Я нашел решение этой проблемы. Я добавил следующие свойства в core-site.xml.

Недвижимость1:

Имя: fs.s3a.aws.credentials.provider

значение: org.apache.hadoop.fs.s3a.TemporaryAWSCredentialsProvider

Недвижимость2:

Имя: fs.s3a.access.key

Значение: XXXXXXXXX

Недвижимость3:

Имя: fs.s3a.secret.key

Значение: XXXXXXX

Недвижимость4:

Имя:fs.s3a.session.token

Значение: XXXXX

Изначально я пытался получить доступ к s3 без свойства "fs.s3a.aws.credentials.provider" из spark-shell

Связанный контент