Есть ли способ увидеть диапазоны токенов для каждого узла в кассандре, который использовал vnodes? Я не хочу видеть токен для каждого узла, который вы получаете, выпуская кольцо nodetool. Я просто хочу увидеть рейнджера токенов для каждого узла, который использует vnodes.
Есть ли способ увидеть диапазоны токенов для каждого узла в cassandra, который использует vnodes?
Ответы (1)
Диапазоны токенов для данного узла будут функцией топологии пространства ключей.
Программно вы можете использовать для этого java-драйвер, используя Cluster.getMetadata (). getTokenRanges (keypace, host). В следующем примере кода показано получение всех диапазонов токенов хостом для пространства ключей:
String keyspace = "mykeyspace";
for(Host host : cluster.getMetadata().getAllHosts()) {
Set<TokenRange> hostRanges = cluster.getMetadata().getTokenRanges(keyspace, host);
}
Кроме того, вы можете получить это с помощью JMX на узел Cassandra через org.apache.cassandra.db:type=StorageService#getRangeToEndpointMap|getRangeToRpcaddressMap(String)
person
Andy Tolbert
schedule
13.01.2016