EMR集群内如何免密访问OSS/OSS-HDFS?
JindoSDK会使用创建集群时绑定的ECS应用角色(默认为AliyunECSInstanceForEMRRole)获取Security Token访问OSS或OSS-HDFS。

您可以在Hadoop-Common服务配置页面,单击core-site.xml页签,查看参数fs.oss.credentials.provider是否有参数值com.aliyun.jindodata.oss.auth.EcsStsCredentialsProvider。若没有,请添加该参数值,并单击下方的保存,即可免密访问OSS/OSS-HDFS。
如何检查EMR集群内免密服务是否可用?
- 方法一:执行如下命令。
curl http://100.100.xx.xx/latest/meta-data/Ram/Security-credentials/AliyunECSInstanceForEMRRole
返回结果如果为如下格式,则表示免密服务可用。{ "AccessKeyId" : "STS.NUreXXXXXX", "AccessKeySecret" : "BsmbnDoXXXXXXXX", "Expiration" : "2022-11-22T11:27:39Z", "SecurityToken" : "CAISlwJ1q6FXXXXXXX", "LastUpdated" : "2022-11-22T05:27:39Z", "Code" : "Success" }
- 方法二:配置为ECS免密。
- 在Hadoop-Common服务配置页面,单击core-site.xml页签,查看参数fs.oss.credentials.provider是否有参数值com.aliyun.jindodata.oss.auth.EcsStsCredentialsProvider。若没有,请添加该参数值,并单击下方的保存。
- 使用HDFS Shell访问OSS/OSS-HDFS,若能正常访问,则表示免密服务可用。
HiveServer2、Presto每5-6小时访问OSS/OSS-HDFS失败
部分版本有已知免密问题。详情请参见版本已知问题。
- 方法一:使用固定AccessKey。
配置使用SimpleCredentialsProvider,详情请参见配置OSS/OSS-HDFS Credential Provider。
- 方法二:升级JindoSDK为最新版本。
- 旧版控制台升级,详情请参见EMR集群JindoSDK升级流程(旧版控制台)
- 新版控制台升级,详情请参见EMR集群JindoSDK升级流程(新版控制台)。
- EMR-5.5.0以下版本、EMR-3.39.0以下版本的集群,具体操作,请参见EMR集群JindoSDK升级流程。
访问OSS/OSS-HDFS路径中包含AccessKey信息报错
- 报错详情:
The Filesystem URI contains login details. This authentication mechanism is no longer supported.
- 报错原因:
为了防止AccessKey信息泄露等安全问题,JindoSDK 4.0.0及以上版本不支持路径中携带AccessKey(AccessKeyId,AccessKeySecret等)信息。
- 解决方法:
- 方法1:删除该访问路径中的AccessKey信息。
- 方法2:如果确认要在路径中携带AccessKey信息,您可在Hadoop-Common服务配置页面,单击core-site.xml页签,单击新增配置项,具体配置信息如下:
参数 值 fs.oss.uri-with-secrets.enable true 配置后,单击下方的保存。