Я пытаюсь подключиться к своим корзинам s3, используя мой Spark, следующим образом:
rdd=sc.textFile("s3n://bucketname/objectname")
rdd=sc.textFile(""s3a://bucketname/objectname")
и изменил мой cores-site.xml
на pers s3a или s3n, но я получаю ошибку следующим образом.Пробовал различные изменения в моем hadoop core-site.xml
.Я получаю ошибки, такие как «загрузить учетные данные AWS от любого поставщика в цепочке».{/.aws файл учетных данных находится там с правильными учетными данными}
ResponseStatus: неверный запрос, сообщение об ошибке XML: AuthorizationHeaderMalformed
неверный заголовок авторизации;в полномочиях должен быть указан непустой ключ доступа (AKID)
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://********.compute-1.amazonaws.com:9000</value>
</property>
<property>
<name>fs.s3a.impl</name>
<value>org.apache.hadoop.fs.s3a.S3AFileSystem</value>
</property>
<property>
<name>fs.s3a.access.key</name>
<value>ACCESSKEYID</value>
</property>
<property>
<name>fs.s3a.secret.key</name>
<value>SECRETKEY</value>
</property>
</configuration>
Я добавил aws-sdk-s3 в мой файл JAR.Пожалуйста, дайте мне указания, чтобы вывести меня на правильный путь.
Полное сообщение об ошибке:
Bad Request, XML Error Message: <?xml version="1.0" encoding="UTF-8"?><Error><Code>AuthorizationHeaderMalformed</Code><Message>The authorization header is malformed; a non-empty Access Key (AKID) must be provided in the credential.</Message><RequestId>E64EEB94923F0FF7</RequestId><HostId>cmAiSUGZo7w7IgK3gJ+ubuWdlXwffEhpnpdnkoJQ2hLP8EHBXZDau0mFCKCC3eWBtfL9V1Le4Mw=</HostId></Error>