如何在 Zeppelin 集群中配置访问 Ranger 管理的数据资源?
1 Zeppelin 集群如何在访问 Ranger 管理的数据资源
Zeppelin 是 Apache 基金会最近发布的一款开源数据分析工具。它提供了一种具有可视化和交互式数据分析功能的 Web 界面,可以支持 Apache Hadoop 集群的各种存储格式和引擎,包括 HBase、Sqoop、Hive、Cassandra、Pig 和 Zeppelin,并且可以支持访问 Ranger 管理的数据资源。本文将介绍如何在 Zeppelin 集群中配置访问 Ranger 管理的数据资源的过程。
2 Ranger的简介
Apache Ranger 是 Apache 基金会和 Cloudera 共同开发的一款企业级安全管理框架,可以实现混合云和企业计算环境中敏感数据和应用程序的安全可⼒控制。Ranger 首先使用角色基础结构对数据资源进行访问控制,然后使用安全策略引擎进行身份验证,配置管理,数据审计等安全策略管理,从而实现多样化的、弹性的和安全可视的数据资源管理,确保企业信息安全。
3 在 Zeppelin 集群中配置访问 Ranger 管理的数据资源
3.1 设置 Ranger 的 URL
访问 Ranger 管理的数据资源在 Zeppelin 集群主机上,必须首先将 Ranger 的 URL 设置到环境变量中,以便 Zeppelin 能够找到 Ranger 管理后台和它的安全配置文件:
$ export RANGER_SERVER=https://login.domain.com/ranger
3.2 在 Zeppelin 终端中安装 Ranger 客户端
安装 Ranger 客户端后,可以使用 ranger-plugin 插件将 Zeppelin 集群连接到 Ranger,以使用 Ranger 管理的数据。登录到 Zeppelin 终端,安装 ranger-plugin 插件:
$ zeppelin ; $ sudo /usr/zeppelin/bin/install-ranger-plugin.sh
3.3 Ranger 安全认证
Ranger 通过SPNEGO或者 kerberos 安全认证来确保 Zeppelin 登录到 Ranger 管理平台时进行验证。打开 ZeppelinInterpreterSetting.json 文件,将 SPNEGO 或者 kerberos 的值赋值为 true:
“interpreterGroup”: { “name”: “spark”, “interpreters”: [ { “name”: “spark”, “option”: { “spnego”: “true”, “kerberos”: “true”, … } } ] }
3.4 重启 Zeppelin 服务
最后,重启 Zeppelin 服务,使之生效:
$ sudo service zeppelin restart
以上步骤完成后,就可以正常的在 Zeppelin 集群中访问 Ranger管理的数据资源。