Quero atualizar a versão do Java de 8 para 11 no meu cluster Cassandra. Qual a melhor maneira de fazer isso? Posso atualizar a versão do Java nó por nó. Por exemplo:
- Pare 1 nó
- Atualizar Java
- Iniciar 1 nó
E repita para outros nós esses passos, ou eu precisarei reparar nós após a atualização. Agora nós:
- Cassandra 4.0.5
- Java 8
Ficarei feliz com seus conselhos.
Seus passos originais devem funcionar perfeitamente. Não há necessidade de executar um reparo.
Simplesmente, pare o nó. Repoint/upgrade Java para Java 11, e certifique-se de que o
java -version
comando retorne algo como isto:Reinicie o nó, certifique-se de que ele seja ativado e repita para todos os outros nós no cluster.
Há algumas etapas adicionais necessárias ao atualizar para o Java 11. Em particular, você precisa configurar as opções da JVM para o Java 11, conforme
conf/jvm11-server.options
observado no Cassandra 4.0NEWS.txt
( CASSANDRA-9608 ):Devo ressaltar que o Java 11 tem suporte total e não é mais experimental desde o Cassandra 4.0.2 ( CASSANDRA-16894 ).
Você precisará configurar as opções necessárias da JVM, incluindo o coletor de lixo. O CMS GC é o padrão,
jvm11-server.options
mas foi descontinuado no Java 11 ( JDK-8142518 ), então você precisará habilitar explicitamente o G1 GC se essa for sua preferência.Como nota lateral, é uma boa ideia executar
nodetool drain
para forçar que memtables sejam descarregados no disco antes de desligar o Cassandra para que os logs de commit não precisem ser reproduzidos na próxima inicialização. Abraços!