前面简介中介绍了 E-MapReduce 中创建启动 Ranger 服务的集群,以及一些准备工作,本节介绍 HDFS 集成 Ranger 的一些步骤流程。

HDFS 集成 Ranger

  • Enable HDFS Plugin
    1. 在集群管理页面,在需要操作的集群后单击管理
    2. 在服务列表中单击 Ranger 进入 Ranger 配置页面
    3. 在 Ranger 配置页面,单击右侧的操作,下拉菜单选择Enable HDFS PLUGIN
      Enable HDFS PLUGIN
    4. 在弹出框输入执行 Commit 记录,然后单击确定

      单击右上角查看操作历史查看任务进度,等待任务完成。


      查看操作历史
  • 重启 NameNode

    上述任务完成后,需要重启 NameNode 才生效。

    1. 在 Ranger 配置页面中,单击左上角 Ranger 后的倒三角,从 Ranger 切换到 HDFS。
    2. 单击右上角操作,下拉菜单中选择 RESTART NameNode
    3. 在弹出框输入执行 Commit 记录,然后单击确定
    4. 单击右上角的查看操作历史查看任务进度,等待重启任务完成。
      查看操作历史
  • Ranger UI 添加 HDFS service

    参见Ranger 简介进入Ranger UI。

    在 Ranger UI 页面添加 HDFS Service。


    Ranger UI
    • 标准集群

      如果您创建的是标准集群(可到详情页面查看安全模式),请参考下图进行配置:


      标准集群
    • 高安全集群

      如果您创建的是高安全集群(可到详情页面查看安全模式),请参考下图进行配置:


      高安全集群
      高安全集群

权限配置示例

上面一节中已经将 Ranger 集成到 HDFS,现在可以进行相关的权限设置。例如给用户 test 授予 /user/foo路径的写/执行权限:


权限配置示例

单击上图中的 emr-hdfs 进入配置页面,配置相关权限。


配置相关权限

按照上述步骤设置添加一个 Policy 后,就实现了对 test 的授权,然后用户 test 就可以对 /user/foo 的 HDFS 路径进行访问了。

说明 添加 Policy 1 分钟左右,HDFS 才会生效。