我们在Kubernetess上运行6个节点的Cassandra (3.11.2)集群。最近我注意到system.peers表中的数据不一致。然而,system.local中的数据似乎没有问题。nodetool describecluster也不会报告任何问题。
下面您将找到system.peers和system.local查询的匿名结果。我通过一次将端口转发到一个节点来执行它们(我希望这样可以跳过负载均衡策略,直接访问节点)
system.peers表的状态是有害的吗?或者也许这是意料之中的?
SELECT peer, schema_version FROM system.peers
node 0
peer | schema_version
IP1 | schema2
IP2 | schema1
IP3 | schema1
IP4 | null
IP5 | schema1
IP6 | schema1
IP7 | schema1
node 1
peer | schema_version
IP8 | null
IP9 | schema1
IP3 | schema1
IP5 | schema1
IP6 | schema1
IP7 | schema1
node 2
peer | schema_version
IP11 | null
IP2 | schema1
IP9 | schema1
IP3 | schema1
IP4 | schema3
IP10 | null
IP5 | schema1
IP6 | schema1
node 3
peer | schema_version
IP12 | schema3
IP2 | schema1
IP9 | schema1
IP13 | null
IP3 | schema1
IP5 | schema1
IP7 | schema1
node 4
peer | schema_version
IP2 | schema1
IP9 | schema1
IP3 | schema1
IP6 | schema1
IP7 | schema1
node 5
peer | schema_version
IP8 | schema3
IP2 | schema1
IP9 | schema1
IP5 | schema1
IP6 | schema1
IP7 | schema1SELECT key, broadcast_address, schema_version FROM system.local
node 0
key | broadcast_address | schema_version
local | IP9 | schema1
node 1
key | broadcast_address | schema_version
local | IP2 | schema1
node 2
key | broadcast_address | schema_version
local | IP7 | schema1
node 3
key | broadcast_address | schema_version
local | IP6 | schema1
node 4
key | broadcast_address | schema_version
local | IP5 | schema1
node 5
key | broadcast_address | schema_version
local | IP3 | schema1nodetool describecluster
Cluster Information:
Name: CLUSTER_NAME
Snitch: org.apache.cassandra.locator.GossipingPropertyFileSnitch
DynamicEndPointSnitch: enabled
Partitioner: org.apache.cassandra.dht.Murmur3Partitioner
Schema versions:
e718e690-d474-376e-8020-ed0eba5b6797: [IP5, IP9, IP3, IP2, IP6, IP7]发布于 2019-06-13 23:10:25
这是意想不到的,但已知会发生,例如:CASSANDRA-7122、CASSANDRA-7531。
这可能会导致不同客户端驱动程序的问题(例如,请参阅JAVA-852和JAVA-2280),尽管大多数客户端库将忽略此类损坏的对等记录,并在发生时记录警告。
既然你提到了Kubernetes,有没有可能你经常更换节点?我想知道在C*中是否有一个潜在的bug,它没有正确地删除旧的对等体条目。过去曾报告过使用COULD NOT REPRODUCE关闭的问题。
如果你能很容易地重现这一点,如果你能用create a JIRA ticket描述这个问题以及如何重现它,那将对社区非常有帮助。否则,如果你没有时间,如果你能描述一下你的kubernetes设置(例如,你是在使用社区运营商还是其他什么?)并解释您可能正在进行的一些操作,这些操作可能会对此做出贡献(例如,替换节点),我可以在有空时进行研究。
https://stackoverflow.com/questions/56579554
复制相似问题