Já reli este artigo várias vezes , mas ainda não consigo entender alguns momentos...
- eu tenho um cluster de produção com 3 dc e a tabela com rf=3 em cada dc
- Eu tirei um snapshot com o Ansible em cada nó simultaneamente
2.1) Criei o mesmo esquema no cluster de teste para keyspace e table
- próximo passo é copiar cada instantâneo para cada servidor de teste? Exemplo: prod1 --> test1:path_to_table, prod2 --> test2:path_to_table?
- etapa final: onde exatamente devo executar o sstableloader? Devo executá-lo em cada servidor no cluster de teste? ou apenas em alguém? A opção -d significa nó de origem ou nó de destino? Por favor me ajude.
Você não precisa copiar os snapshots para os nós de destino na sua "etapa 3". Você pode colocar os snapshots em qualquer servidor ou nó que tenha (1) o Cassandra instalado, mas (2) NÃO precisa estar em execução.
A ideia é que você precisa dos binários do Cassandra para executar a
sstableloader
ferramenta. Nós (3) não recomendamos executarsstableloader
nos nós de origem, particularmente se eles fizerem parte de um cluster de produção, porque isso pode afetar o desempenho do seu sistema de produção.Você pode executar
sstableloader
nos nós de destino (seus servidores de teste), mas esteja ciente de que (4) se os snapshots estiverem no mesmo disco que os diretórios de dados do Cassandra instalados, (5) eles competirão pelo mesmo IO disponível e você provavelmente descobrirá que o carregamento em massa será lento. Saúde!