我可以使用nodetool status
列出完整的群集信息,输出类似的内容。
Datacenter: bi
==============
Status=Up/Down|/ State=Normal/Leaving/Joining/Moving
-- Address Load Tokens Owns Host ID
Rack
UN 10.132.2.93 19.88 GiB 32 ? g94eee1f-1ge1-45c3-8cfgb-643719456c4fd us-east-1a
UN 10.221.1.140 11.64 GiB 32 ? b38f2fb2-fcf2-4567-b0cc-1548f63f0f24 us-east-1c
是否有更简单的方法从当前节点(终端是ssh进入的节点)中抓取Host ID
而无需从status
输出中解析它?
我正在使用datastax enterprise ...如果有帮助
答案 0 :(得分:1)
每个节点都会在system.local表中保存有关自身的信息。您可以使用cqlsh来获取此信息。
cqlsh 10.132.2.93 -e 'SELECT host_id FROM system.local;'
cqlsh 10.221.1.140 -e 'SELECT host_id FROM system.local;'
它还在system.peers表中保存了相同类型的信息,但这仅适用于所有其他节点本身。这就是为什么我认为为每个节点进行一次查询更容易的原因。