本文介绍如何将Kafka集成到Ranger,以及如何配置权限。

前提条件

已创建集群,并选择了Ranger服务,详情请参见创建集群

Kafka集成Ranger

  1. Ranger启用Kafka。
    1. 登录阿里云E-MapReduce控制台
    2. 在顶部菜单栏处,根据实际情况选择地域和资源组
    3. 单击上方的集群管理页签。
    4. 集群管理页面,单击相应集群所在行的详情
    5. 在左侧导航栏单击集群服务 > RANGER
    6. 单击右侧的操作,选择启用Kafka
      Enable Kafka PLUGIN
    7. 执行集群操作对话框设置相关参数,然后单击确定。在确认对话框,单击确定
      单击右上角查看操作历史查看任务进度,等待任务完成。
  2. Ranger UI页面添加Kafka Service。
    1. 进入Ranger UI页面,详情请参见概述
    2. 在Ranger UI页面,添加Kafka Service。
      Ranger WebUI
    3. 配置Kafka Service。
      add_service
      参数 说明
      Service Name 固定值emr-kafka
      Username 固定值kafka
      Password 可自定义。
      Zookeeper Connect String 填写格式emr-header-1:2181/kafka-x.xx
      说明 其中kafka-x.xx根据Kafka实际版本填写。
    4. 单击Add
  3. 重启Kafka Broker。
    1. 左侧导航栏单击集群服务 > Kafka
    2. 单击右上角操作下拉菜单,选择 重启 Kafka Broker
    3. 执行集群操作对话框设置相关参数,然后单击确定。在确认对话框,单击确定
      单击右上角查看操作历史查看任务进度,等待任务完成。

权限配置示例

上面一节中已经将Ranger集成到Kafka,现在可以设置权限。
注意 标准集群中,在添加了Kafka Service后,Ranger会默认生成规则all - topic,不作任何权限限制(即允许所有用户进行所有操作),此时Ranger无法通过用户进行权限识别。

以test用户为例,添加Publish权限。

  1. 进入Ranger UI页面,详情请参见概述
  2. 在Ranger UI页面,单击配置好的emr-kafka
    click_emr_kafka
  3. 单击右上角的Add New Policy
  4. 填写参数。
    add_Policy
    参数 说明
    Policy Name 策略名称,可以自定义。
    topic 自定义。可填写多个,填写一个需按一次Enter键。
    Select Group 指定添加此策略的用户组。
    Select User 指定添加此策略的用户。
    Permissions 单击add_permissions,选择Publish

    单击Select Group下方的add_permissions,可以对多个Group进行授权。

  5. 单击Add
    添加Policy后,实现对test的授权。test用户即可以对名为test的topic执行写入操作。
    说明 添加、删除或修改Policy后,需要等待约一分钟至授权生效。