繁体   English   中英

使用 aws sts 假设角色配置 AWS EMR spark

[英]Configure AWS EMR spark with aws sts assume-role

我正在尝试从另一个 AWS 账户中读取 s3 存储桶中的文件。

脚步:

  1. 使用aws sts assume-role命令生成访问 ID、访问密钥秘密和令牌
  2. 设置以下变量:

     export AWS_ACCESS_KEY_ID= export AWS_SECRET_ACCESS_KEY= export AWS_SESSION_TOKEN=
  3. aws s3 ls s3://...

  4. 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 中读取文件。 我正在使用火花版本: 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. 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM