我们在 EC2 和 EC2 实例上运行 Hadoop 集群,该实例附加到可以访问 S3 存储桶的角色,例如:“stackoverflow-example”。
几个用户正在集群中放置 Spark 作业,我们过去使用 key 但不想继续并希望迁移到角色,因此放置在 Hadoop 集群上的任何作业都将使用与 ec2 实例关联的角色。做了很多搜索,发现了 10+ 张门票,其中一些仍然开放,一些已经固定,一些没有任何评论。
想知道是否仍然可以将 IAM 角色用于放置在 Hadoop 集群上的作业(Spark、Hive、HDFS、Oozie 等)。大多数教程都在讨论传递 key (fs.s3a.access.key、fs.s3a.secret.key),这不够好,也不安全。我们还遇到了 Ambari 凭证提供程序的问题。
一些引用资料:
https://issues.apache.org/jira/browse/HADOOP-13277
最佳答案
您链接到 HADOOP-13277 的第一个说“我们可以拥有 IAM 吗?” JIRA 已关闭“你在 s3a 中有这个”。第二个是 HADOOP-9384,是“将 IAM 添加到 S3n”,关闭为“切换到 s3a”。还有 SPARK-16363?错误报告不完整。
如果您使用 S3a,并且不设置任何 secret ,则 s3a 客户端将退回到查看特殊的 EC2 实例元数据 HTTP 服务器,并尝试从那里获取 secret 。
它:它应该可以正常工作。
关于hadoop - 为 S3 提供基于 Hadoop/Spark IAM 角色的访问的正确方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42240980/