Ranger概述

Apache Ranger提供集中式的权限管理框架,可以对Hadoop生态中的HDFS、Hive和YARN等组件进行细粒度的权限访问控制,并且提供了Web UI方便管理员操作。

Ranger组件介绍

Ranger主要由三个组件组成:
  • Ranger Admin

    您可以创建和更新安全访问策略,这些策略被存储在数据库中。各个组件的Plugin定期对这些策略进行轮询。

  • Ranger Plugins

    Plugin嵌入在各个集群组件的进程里,是一个轻量级的Java程序。例如,Ranger对Hive的组件,就被嵌入在Hiveserver2里。这些Plugin从Ranger Admin服务端拉取策略,并把它们存储在本地文件中。当接收到来自组件的用户请求时,对应组件的Plugin会拦截该请求,并根据安全策略对其进行评估。

  • Ranger UserSync

    Ranger提供了一个用户同步工具。您可以从Unix或者LDAP中拉取用户和用户组的信息。这些用户和用户组的信息被存储在Ranger Admin的数据库中,可以在定义策略时使用。

访问Ranger UI

  1. 添加8443端口,具体操作请参见添加安全组规则

  2. 进入访问链接与端口页签。

    1. 登录E-MapReduce控制台

    2. 在顶部菜单栏处,根据实际情况选择地域和资源组

    3. 在EMR on ECS页面,单击目标集群的集群名称。

    4. 单击上方的访问链接与端口页签。

  3. 访问链接与端口页面,单击Ranger UI所在行的链接。

  4. 在Ranger UI登录界面,输入用户名和密码。

    • 数据湖场景(DataLake集群)

      • EMR-3.44.0及后续版本、EMR-5.10.0及后续版本

        默认用户名为admin,密码为Admin1234。如果忘记默认密码,请参见常见问题

      • EMR-3.44.0之前版本、EMR-5.10.0之前版本

        默认用户名为admin,密码为admin1234。如果忘记默认密码,请参见常见问题

    • 旧版数据湖场景(Hadoop集群)

      默认的用户名和密码均为admin。如果忘记默认密码,请参见常见问题

  5. 首次登录后,需要修改密码并妥善保存。

    1. 单击上方的Settings

    2. 修改admin的密码。

    3. 单击右上角的admin > Log Out

      修改后即可使用新的密码登录。

常见问题

Q:如果忘记密码无法登录Ranger UI时,该如何处理?

A:您可以按照如下方法处理:

  1. 登录集群的Master节点,详情请参见登录集群

  2. 执行如下命令重置admin的密码为初始密码。

    • DataLake集群

      • EMR-3.44.0及后续版本、EMR-5.10.0及后续版本

        mysql -urangeradmin -pRangeradmin1234 
        update ranger.x_portal_user set password="07e47d323c1c36c1dc2cc3966027d6f9" where login_id="admin";
      • EMR-3.44.0之前版本、EMR-5.10.0之前版本

        mysql -urangeradmin -prangeradmin1234 
        update ranger.x_portal_user set password="257e4521fee681b67583e2e7a4ac1c28" where login_id="admin";
    • Hadoop集群

      mysql -urangeradmin -prangeradmin 
      update ranger.x_portal_user set password="ceb4f32325eda6142bd65215f4c0f371" where login_id="admin";