1

我在 Kerborized 环境中有 Nifi 3 节点集群(通过 Hortonworks Data Flow - HDF 安装)。作为安装的一部分,Ambari 创建了 nifi service keytab 。你好

我可以使用这个 nifi.service.keytab 来配置像 PutHDFS 这样与 Hadoop 服务对话的处理器吗?

nifi.service.keytab 是特定于机器的,并且总是期望带有机器信息的主体名称。ex nifi/HOSTNAME@REALM

如果我使用 nfii/NODE1_Hostname@REALM 信息配置我的处理器,那么我会在其他两个节点中看到 kerberos 身份验证异常。

如何动态解析主机名以使用 nifi 服务密钥表?

4

1 回答 1

1

The keytab principal name field supports Apache NiFi Expression Language, so you can use an expression like the following: nifi/${hostname()}@REALM, and each node will resolve that expression (independently) to something like nifi/host1.nifi.com@REALM or nifi/host2.nifi.com@REALM, etc.

If you do not want it to be the explicit hostname, you can also set an environment variable on each node (export NIFI_KEYTAB_HOSTNAME="modified_host_format_1", etc.) and reference the environment variable in the EL expression the same way: nifi/${NIFI_KEYTAB_HOSTNAME}@REALM.

于 2018-04-05T18:04:28.097 回答