Como posso fazer com que o Cassandra se reequilibre automaticamente?

4

Estou vendo um cluster de cassandra, mas o esforço administrativo parece ser bem alto. Existe alguma maneira de configurar o Cassandra para reequilibrar os nós automaticamente, à medida que novas máquinas são adicionadas, algumas estão desativadas ou temporariamente indisponíveis, etc.?

    
por Zubair 24.04.2010 / 09:35

2 respostas

4

Cassandra na verdade reequilibra nós automaticamente quando você adiciona novos; Não é apenas uma abordagem muito sofisticada. Ele seleciona o nó com a maior "carga" (consulte a saída do anel do nodetool) e coloca o novo nó no anel para assumir cerca de metade do trabalho do nó carregado mais pesado. Isso não realiza um rebalanceamento geral do cluster, mas minimiza a carga de fluxo necessária para a expansão do cluster. Essa estratégia de balanceamento automático tende a funcionar melhor se você quase duplicar o tamanho do cluster com cada expansão.

Se você precisar de mais rebalanceamento, você pode mover a posição de um nó no anel com o comando "nodetool move" (que é realmente um wrapper para descomissionar e adicionar novamente o nó).

    
por 22.11.2011 / 02:24
2

Ainda não, pois a atribuição de tokens é estática no momento. Você tem a opção de criar scripts para o balanceamento após o link ou dobrar o tamanho do cluster de uma só vez com o auto-bootstrap . Nenhuma opção é atualmente exatamente atraente no momento, mas não é horrível adicionar nós e mover token, contanto que você tenha tempo suficiente para migrar os dados.

Uma coisa a observar por nodetool loadbalance não é o que você pensa.

    
por 28.02.2011 / 06:05

Tags