注意:

使用资源主用户从 Oracle Big Data Service 集群访问 OCI 对象存储存储桶

简介

Oracle Big Data Service 是 Oracle 提供的基于云的服务,用户可以使用它创建和管理 Hadoop 集群、Spark 集群、Trino 和其他大数据服务。Oracle Cloud Infrastructure (OCI) 支持使用资源主体在 Oracle Big Data Service 集群与 OCI Object Storage 之间无缝集成。

本教程将指导您完成从 Oracle Big Data Service 集群配置和访问 OCI Object Storage 桶的任务,并利用资源主体进行安全验证。

目标

先决条件

任务 1: 创建策略

  1. 登录到 OCI 控制台,导航到身份与安全,然后单击策略

  2. 创建以下策略以授予 Oracle Big Data Service 集群对 OCI Object Storage 桶的访问权限。

    allow any-user to read buckets in tenancy where ALL {request.principal.id='<BDS OCID>', target.bucket.name='<bucket name>'}
    
    allow any-user to read objects in tenancy where ALL {request.principal.id='<BDS OCID>', target.bucket.name='<bucket name>'}
    

    注:<BDS OCID><bucket name> 分别替换为 Oracle Big Data Service 集群 OCID 和存储桶名称。

任务 2:在 Oracle Big Data Service 集群中创建资源主用户

  1. 转到 OCI 控制台,导航到 Analytics and AI ,然后单击 Big data Service(大数据服务)

  2. 单击已部署的集群。

  3. 单击资源主体创建资源主体

  4. 输入 Display name(显示名称)Session token life-span duration(以小时为单位),然后单击 Create(创建)

任务 3:更新 Hadoop 分布式文件系统 (HDFS) 配置

  1. 转到 Apache Ambari 控制台,导航到 HDFS配置高级

  2. 更新 HDFS 配置的以下属性。

    fs.oci.client.custom.authenticator=com.oracle.oci.bds.commons.auth.BDSResourcePrincipalAuthenticator
    fs.oci.client.regionCodeOrId=us-region-1
    fs.oci.rp.pem.passphrase.path=/etc/security/tokens/rpst.pass
    fs.oci.rp.pem.path=/etc/security/tokens/rpst.pem
    fs.oci.rp.rpst.path=/etc/security/tokens/rpst.token
    

    注:bds_rp_users 组拥有群集中此资源主体的 rpst 标记和密钥。

  3. 保存更改并在 Apache Ambari 中重新启动必要的服务。

任务 4:设置环境变量(可选

对于通过 OCI 软件开发工具包 (SDK) 或其他客户端访问存储桶的应用,请确保设置了以下环境变量。

OCI_RESOURCE_PRINCIPAL_VERSION=2.2
OCI_RESOURCE_PRINCIPAL_PRIVATE_PEM=/etc/security/tokens/rpst.pem
OCI_RESOURCE_PRINCIPAL_REGION=us-region-1
OCI_RESOURCE_PRINCIPAL_RPST=/etc/security/tokens/rpst.token

任务 5:测试 OCI 对象存储存储存储桶访问

通过 SSH 连接到 Oracle Big Data Service 集群并使用 HDFS 命令测试对存储桶的访问。

hdfs dfs -ls oci://<bucket name>@<namespace>/

注:请确保将 <bucket name> 替换为策略中使用的 OCI 存储桶和 <namespace> 值。

故障排除和技巧

后续步骤

确认

更多学习资源

浏览 docs.oracle.com/learn 上的其他实验室,或者访问 Oracle Learning YouTube 渠道上的更多免费学习内容。此外,请访问 education.oracle.com/learning-explorer 成为 Oracle Learning Explorer。

有关产品文档,请访问 Oracle 帮助中心