更新时间:2024-11-22 GMT+08:00
分享

配置HDFS通过Guardian访问OBS

HDFS对接OBS

  1. 以客户端安装用户登录安装了HDFS客户端的节点。
  2. 执行以下命令,切换到客户端安装目录。

    cd 客户端安装目录

  3. 执行以下命令配置环境变量。

    source bigdata_env

  4. 如果集群为安全模式,执行以下命令进行用户认证,该用户需具有OBS目录的读写权限。普通模式集群无需执行用户认证。

    kinit HDFS组件操作用户

  5. 在HDFS命令行显式添加要访问的OBS文件系统。

    例如:

    • 使用以下命令访问OBS文件系统。

      hdfs dfs -ls obs://OBS并行文件系统名称/路径

    • 使用以下命令创建OBS文件系统下的目录:

      hdfs dfs -mkdir obs://OBS并行文件系统名称/hadoop

    • 使用以下命令上传客户端节点“/opt/test.txt”文件到“obs://OBS并行文件系统名称/hadoop”路径下。

      hdfs dfs -put /opt/test.txt obs://OBS并行文件系统名称/hadoop

OBS文件系统打印大量日志可能导致读写性能受影响,可通过调整OBS客户端日志级别优化,日志调整方式如下:

cd 客户端安装目录/HDFS/hadoop/etc/hadoop

vi log4j.properties

在文件中添加OBS日志级别配置

log4j.logger.org.apache.hadoop.fs.obs=WARN

log4j.logger.com.obs=WARN
图1 添加OBS日志级别

Ranger权限配置

  1. 登录FusionInsight Manager,选择“系统 > 权限 > 用户组 > 添加用户组”,创建一个空角色的用户组,例如“obs_hadoop”。
  2. 选择“系统 > 权限 > 用户 > 添加用户”,创建一个只关联用户组“obs_hadoop”的用户,例如“hadoopuser”。
  3. 使用rangeradmin用户登录Ranger管理页面。
  4. 在首页中单击“EXTERNAL AUTHORIZATION”区域的组件插件名称“OBS”。
  5. 单击“Add New Policy”,为新建的用户组添加相应OBS路径的“Read”和“Write”权限。

    例如,为用户组“obs_hadoop”添加“obs://OBS并行文件系统名称/hadoop”的“Read”和“Write”权限:

    图2 为Hadoop用户组新增OBS路径读和写的权限

相关文档