我正在尝试从s3存储桶中的另一个AWS账户中读取文件。
步骤:
aws sts assume-role
命令生成的访问ID,访问密钥秘密和令牌设置以下变量:
export AWS_ACCESS_KEY_ID=
export AWS_SECRET_ACCESS_KEY=
export AWS_SESSION_TOKEN=
aws s3 ls s3://...
正在读取 spark-shell
中的文件sc.hadoopConfiguration.set("fs.s3n.awsAccessKeyId", "XXX")
sc.hadoopConfiguration.set("fs.s3n.awsSecretAccessKey", "XXX")
sc.hadoopConfiguration.set("fs.s3a.session.token", "XXX")
spark.read.parquet("file location")
直到第3步,它的工作状况都很好。
我无法在spark-shell中读取文件。 我正在使用 spark版本:2.4.3 。请让我知道我想念的东西。任何帮助将不胜感激。
错误日志:
Caused by: com.amazon.ws.emr.hadoop.fs.shaded.com.amazonaws.services.s3.model.AmazonS3Exception: The AWS Access Key Id you provided does not exist in our records.
答案 0 :(得分:0)