Ranger架构令人困惑

Confusing by Ranger architecture

在花了一整天设置和研究 Hortonworks 的 Ranger 之后,我现在勉强能够使用它,但我仍然对它的结构感到很困惑。我列出以下问题:

  1. Ranger和Knox是什么关系,为什么Hortonworks为同一个位置提供两种解决方案?如果我想将它们应用于我的 Hadoop 集群,最佳实践是什么?

  2. 为什么我必须使用 UserSync?或者换句话说,Ranger-Admin 有能力与 LDAP/AD 对话来获取用户,为什么它还需要 UserSync?如果 UserSync 也将与 LDAP/AD(或不同的 ldap 服务器)通信,会发生什么情况?它会影响 Ranger-Admin 自身的 LDAP/AD 连接吗?

  3. 关于插件的审计连接的类似问题,由于Ranger-Admin有审计连接,为什么插件需要自己连接到审计数据库?为什么他们不直接将审核信息推送给管理员,让管理员决定将信息存储在何处?如果他们(管理员和插件)与不同的数据库对话,会发生什么?

我想我可以简单回答一下Q1

What's the relationship between Ranger and Knox, why Hortonworks provides two solutions for same position? If I want apply them for my Hadoop cluster, what's the best practice?

它们的用途不同。 Ranger 为您提供细粒度的 ACL 控制,Knox 是提供集中式 Web 服务安全层的代理服务器(网关)。也就是说,使用 Ranger,您有一个中心位置 (UI) 来管理 hadoop 堆栈服务的 ACL,例如谁可以访问 hive 上的 table;使用 knox,您可以使用不安全的 http 协议将所有 hadoop 服务置于专用网络下,并且 knox 服务器 运行 在启用了 https 的网关节点(外部可以访问)上,它为用户提供了一个中央 http/https访问支持用户登录的web服务的入口(一些hadoop堆栈服务,例如hadoop,还不支持)。