Eu tenho o cluster cassandra 4.0.1 com 3 nós (datacenter1) e decidimos que precisamos adicionar o segundo datacenter (datacenter2), fiz todas as etapas descritas neste artigo
Em primeiro lugar, adicionamos os nós um a um com a auto_bootstrap: false
opção na cassandra.yaml
configuração para todos os três novos nós.
O fator de replicação era rf=o
para datacenter2 durante o processo de adição/inicialização. Em seguida, mudamos de rf=0
para rf=3
system_auth, system_traces, keyspaces system_distributed e meu keyspace de usuário, que é denominado big_data para datacenter2 até ALTER KEYSPACE
.
Todos os nós se juntaram ao cluster com sucesso, mas há uma situação estranha lá:
Não podemos fazer o processo de reconstrução do datacenter1 e cassandra me diz o seguinte:
nodetool: Unable to find sufficient sources for streaming range Full(/192.168.1.141:7000,(9143760283360780305,-9086318401025854203]) in keyspace system_auth
...e vi a mesma impressão nos próximos novos nós. O que posso fazer com isso?
A versão do esquema é a mesma em todos os nós.
Se eu executar o reparo completo, todos os dados aparecerão em todos os novos nós, mas o processo de reconstrução ainda não funcionará corretamente neste caso.
Eu preciso do seu conselho.
Há uma boa chance de você ter perdido uma etapa ao adicionar o novo DC.
As etapas de alto nível são:
system_distributed
, e de aplicativo para réplicas somente no controlador de domínio existentesystem_auth
.system_traces
NetworkTopologyStrategy
auto_bootstrap: false
.Se você executou a etapa (4) sem ter executado as etapas (1) e (2), encontrará o problema relatado acima.
Basta voltar, refazer as etapas novamente e você deve ficar bem. Saúde!