【发布时间】:2016-07-29 22:15:44
【问题描述】:
如果可能的话,我希望能够在我的 spark scala 应用程序中使用我维护的具有不同配置文件的 ~/.aws/credentials 文件。我知道如何在我的应用程序中为 s3a 设置 hadoop 配置,但我不想继续使用硬编码的不同密钥,而宁愿像使用不同程序一样使用我的凭据文件。我还尝试过使用 val credentials = new DefaultAWSCredentialsProviderChain().getCredentials() 之类的 java api,然后创建一个 s3 客户端,但这不允许我在从 s3 读取文件时使用我的密钥。我也知道,当我运行我的应用程序时,密钥可以进入 core-site.xml,但我如何管理不同的密钥,以及如何使用 IntelliJ 进行设置,以便我可以使用不同的配置文件拉入不同的密钥?
【问题讨论】:
-
我没有时间查找链接,但您可以指定用于凭据的文件,而不是使用默认的提供程序链。
-
谢谢。你能提供更多细节来说明你的意思吗?你的意思是还在使用
AmazonS3Client client = new AmazonS3Client(new ProfileCredentialsProvider("my_profile_name"))?不确定这将如何适用于使用s3a://使用 spark 读取 s3 文件
标签: scala amazon-web-services hadoop intellij-idea apache-spark