從 EMR-3.12.0 版本開始,E-MapReduce Kafka 支援用Ranger進行許可權配置。

Kafka整合Ranger

前面簡介中介紹了E-MapReduce中建立啟動Ranger服務的叢集,以及一些準備工作,本節介紹Kafka整合Ranger的一些步驟流程。

  • Enable Kakfa Plugin
    1. 叢集組態管理頁面的 Ranger 服務下,單擊右側的操作下拉式功能表,選擇 Enable Kafka PLUGIN

    2. 單擊右上方的查看操作曆史查看任務進度,等待任務完成100%。
  • 重啟Kafka broker

    上述任務完成後,需要重啟broker才會生效。

    1. 在叢集組態管理頁面中,從 Ranger 切換到 Kafka
    2. 點擊右上方 Actions 中的 RESTART Broker
    3. 點擊右上方查看操作曆史查看任務進度,等待重啟任務完成。

  • Ranger UI頁面添加Kafka Service

    參見Ranger簡介的介紹進入Ranger UI頁面。

    Ranger 的UI頁面添加Kafka Service:

    配置Kafka Service:

許可權配置樣本

上面一節中已經將Ranger整合到Kafka,現在可以進行相關的使用權限設定。
注意 標準叢集中,在添加了 Kafka Service 後,ranger 會預設建置規則 all - topic,不作任何許可權限制(即允許所有使用者進行所有操作),此時ranger無法通過使用者進行許可權識別。
以test使用者為例,添加Publish許可權:

按照上述步驟設定添加一個Policy後,就實現了對 test 的授權,然後使用者 test 就可以對 test 的topic進行寫入操作。
说明 Policy添加後需要1分鐘左右才會生效。