【问题标题】:two clusters with same kerberos realms具有相同 kerberos 领域的两个集群
【发布时间】:2018-09-14 21:16:03
【问题描述】:

我有两个名为 app-cluster 和 data-cluster 的 ambari 集群。两者都由 kerberos 保护。两个集群都有自己的 KDC 服务器。但相同的域名(由管理团队配置)。

现在我想从 app-cluster 访问 data-cluster 的名称节点。但是 app-cluster 没有 data-cluster 的名称节点主体。所以 kerberos 会抛出类似的错误

TGS 请求结果:-1765328377/Server nn/machine@REALM 在 Kerberos 数据库中找不到。

我检查了跨领域身份验证。它说两个领域的名称应该不同。

如何使用两个具有相同域名的不同主 kdc 服务器实现跨集群 kerberos 身份验证?

【问题讨论】:

    标签: hadoop authentication hdfs kerberos ambari


    【解决方案1】:

    当有两个具有相同领域名称的 KDC 主服务器时,我看到的问题是每个主服务器有两个不同的 kerberos 数据库,这意味着它们具有不同的数据,使用不同的主密钥加密,使用不同的盐,并且它们可能甚至使用不同的加密类型(例如,如果从不同的发行版安装)。

    例如,您可以通过在两个 master 上执行以下命令来确保数据不同,然后比较输出:

    kdb5_util tabdump keydata

    跨领域身份验证的正确情况是当有两个或至少两个 KDC 主服务器负责不同域中的不同领域,而您仍希望一个领域的用户在另一个领域进行身份验证:

    https://web.mit.edu/KERBEROS/krb5-1.5/krb5-1.5.4/doc/krb5-admin/Cross_002drealm-Authentication.html

    当一个领域和域中有两个 KDC 时,将其中一个设置为主 KDC 和另一个 - 从属 KDC 是有意义的。这让我想到一个问题 - 首先拥有第二个 KDC 主机的原因是什么?

    • 是 HA 问题吗?那么确实需要将其中一个 KDC 主节点设置为从 KDC。
    • app-clusterdata-cluster 是否在不同的域中?那么有不同的领域是有意义的。

    如果到目前为止没有高可用性问题(例如,这两个集群都仍处于开发阶段),另一种选择可能是只使用一个没有任何从属的 KDC 主节点,并在所有集群中配置节点来与之通信KDC。

    关于配置领域的一般建议:

    https://web.mit.edu/kerberos/krb5-1.12/doc/admin/realm_config.html

    【讨论】:

      猜你喜欢
      • 2016-04-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-03-23
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多