Elasticsearch - Migração entre versões

Em qualquer sistema ou software, quando estamos atualizando para uma versão mais recente, precisamos seguir algumas etapas para manter as configurações do aplicativo, configurações, dados e outras coisas. Essas etapas são necessárias para tornar o aplicativo estável no novo sistema ou para manter a integridade dos dados (evitar que os dados sejam corrompidos).

Você precisa seguir as seguintes etapas para atualizar o Elasticsearch -

  • Leia os documentos de atualização de https://www.elastic.co/

  • Teste a versão atualizada em seus ambientes de não produção, como UAT, E2E, SIT ou ambiente DEV.

  • Observe que a reversão para a versão anterior do Elasticsearch não é possível sem o backup de dados. Portanto, um backup de dados é recomendado antes de atualizar para uma versão superior.

  • Podemos atualizar usando a reinicialização completa do cluster ou atualização contínua. A atualização contínua é para novas versões. Observe que não há interrupção do serviço ao usar o método de atualização sem interrupção para migração.

Etapas para atualização

  • Teste a atualização em um ambiente de desenvolvimento antes de atualizar seu cluster de produção.

  • Faça backup de seus dados. Você não pode reverter para uma versão anterior, a menos que tenha um instantâneo de seus dados.

  • Considere fechar trabalhos de aprendizado de máquina antes de iniciar o processo de atualização. Embora as tarefas de aprendizado de máquina possam continuar em execução durante uma atualização sem interrupção, isso aumenta a sobrecarga no cluster durante o processo de atualização.

  • Atualize os componentes do seu Elastic Stack na seguinte ordem -

    • Elasticsearch
    • Kibana
    • Logstash
    • Beats
    • Servidor APM

Atualizando da 6.6 ou anterior

Para atualizar diretamente para o Elasticsearch 7.1.0 das versões 6.0-6.6, você deve reindexar manualmente todos os índices 5.x que precisar transportar e executar uma reinicialização completa do cluster.

Reinício completo do cluster

O processo de reinicialização total do cluster envolve desligar cada nó do cluster, atualizar cada nó para 7x e, em seguida, reiniciar o cluster.

A seguir estão as etapas de alto nível que precisam ser realizadas para a reinicialização completa do cluster -

  • Desativar alocação de fragmentos
  • Pare de indexar e execute uma limpeza sincronizada
  • Desligue todos os nós
  • Atualize todos os nós
  • Atualize qualquer plug-in
  • Inicie cada nó atualizado
  • Espere todos os nós se juntarem ao cluster e relatar um status de amarelo
  • Reativar alocação

Depois que a alocação é reativada, o cluster começa a alocar os shards de réplica para os nós de dados. Neste ponto, é seguro retomar a indexação e a procura, mas seu cluster se recuperará mais rapidamente se você puder esperar até que todos os shards primários e de réplica tenham sido alocados com êxito e o status de todos os nós seja verde.