如何知道连接到Cassandra的本地客户端

问题描述 投票:3回答:2

我能看到的OpsCenter在特定节点上160的本地客户端。但没有应用程序的指向该DC或任何从这个DC的节点。

如果上面的情况是什么那些160个原生客户端?

  • 他们中很少有人是因为我已连接到使用DevCenter该节点。
  • 其余的可以是因为DC间通信??
  • 没有密钥空间已RF设置也为这个DC。我对退役这个DC。

OpsCenter Native Clients

但不知道那些是什么客户。

任何想法??

cassandra datastax-enterprise opscenter
2个回答
2
投票

在最新的版本中,你可以使用nodetool clientlistselect * from system_views.clients ;在cqlsh查看实际的连接。这会给你的主机和端口,然后可以跟踪哪些应用程序绑定到它的系统上。

在老版本的DSE还可以使用dsetool perf userlatencytracking [enable|disable]使userlatency跟踪做select * from dse_perf.user_io;类似的东西。


2
投票

我用下面的命令来查找连接客户端:

sudo lsof -i -n -P | grep 9042 | grep ESTABLISHED

通过以上运行,我发现流程及这些流程都连接到卡桑德拉的Java应用程序。但我还没有提到任何连接这些主机,还要求被他们的到来。

我发现所有这些要求是因为一致性水平:通过客户端应用程序法定人数。虽然应用程序不是指那些直接的DC但要达到法定人数要求打算对所有的DC。

1两件事是有:Java客户端aplications使用的用户名(超级用户)“卡桑德拉”,这也需要一致性水平法定人数。

DC间通信不会发生在9042,所以我从DC间的一些连接的假设也是不正确的。

上面是解决我的问题。

© www.soinside.com 2019 - 2024. All rights reserved.