0

从 cassandra-cli 连接到启用 kerberos 的 Datastax 时出现以下两个异常:-

  1. 错误 [Thrift:1] 2013-09-03 11:01:01,025 CustomTThreadPoolServer.java(第 210 行)处理消息期间发生错误。java.lang.RuntimeException:org.apache.thrift.transport.TTransportException:初始化安全上下文失败

  2. 错误 [Thrift:2] 2013-09-03 11:01:01,061 TNegotiatingServerTransport.java(第 291 行)传输协商 com.datastax.bdp.transport.common.TTransportNegotiationException 期间发生错误:请求的身份验证类型不正确。请求的身份验证:不使用服务主体进行身份验证:FRAMED_TRANSPORT_FAKE_PRINCIPAL,允许的身份验证:Kerberos

4

2 回答 2

1

此问题可能是由错误配置的 Kerberos 引起的。就在最近,我们发现 kerberos 相关问题的错误报告有时会产生误导,因为如果 kerberos 连接首先失败,客户端会尝试在没有 kerberos 的情况下进行连接。不幸的是,仅记录了该回退尝试的异常,而不是原始错误。这将在下一个补丁版本 (3.1.4) 中修复。

你可以尝试连接

cassandra-cli -tr com.datastax.bdp.transport.client.TKerberosClientTransportFactory 

禁用 no-kerberos 回退并查看错误是什么?您可能还想查看 system.log 并检查服务器试图告诉您的信息。

于 2013-09-20T08:22:26.973 回答
0

第二个错误表明 cassandra-cli 连接不安全:

Requested auth: No authentication with service principal: FRAMED_TRANSPORT_FAKE_PRINCIPAL
Allowed auth: Kerberos

您是从安全 DSE 集群中的一个节点还是从集群外的远程计算机运行 cassandra-cli?

于 2013-09-04T16:12:26.810 回答