Por que a atualização do meu domínio do OpenSearch Service está demorando tanto?

6 minuto de leitura
0

Estou tentando atualizar meu domínio do Amazon OpenSearch Service, mas a atualização está demorando muito.

Descrição resumida

Ao atualizar a versão do domínio do OpenSearch Service, são feitas alterações na configuração que ativam um processo de implantação azul/verde. Em uma implantação azul/verde, dois ambientes de produção são executados. Um ambiente está ativo e o outro está inativo. Os dois ambientes de produção são alternados de acordo com as atualizações de software. Para o OpenSearch Service, um novo ambiente é criado durante as atualizações do domínio e os usuários são encaminhados para o novo ambiente de produção após a conclusão das atualizações. Esse comportamento minimiza o tempo de inatividade e mantém o ambiente original no caso de uma implantação sem êxito.

O processo de atualização do OpenSearch Service consiste em verificações de pré-atualização para detectar problemas e um snapshot do cluster para restaurar o cluster se a atualização falhar.

Os seguintes problemas podem ocorrer com uma atualização do OpenSearch Service:

  • Falhas na verificação de pré-atualização
  • O processo de atualização está demorando muito para ser concluído
  • A atualização foi bem-sucedida com problemas

Para obter mais informações, consulte Atualização de domínios do Amazon OpenSearch Service.

Resolução

Verificações de pré-atualização

O processo de atualização é irreversível. Você não pode pausar ou cancelar esse processo. Durante uma atualização, você não pode fazer alterações na configuração do domínio. Antes de iniciar uma atualização, é uma prática recomendada verificar novamente a elegibilidade. Seu domínio pode não estar qualificado para uma atualização, ou pode falhar na atualização.

Para verificar os problemas mais comuns na atualização, consulte Solução de problemas de uma atualização.

Verifique o status do snapshot

Antes de uma migração, o OpenSearch Service gera um snapshot automático do cluster ao passar no teste de elegibilidade. Durante um snapshot, o status de progresso pode ser Nulo ou 0%. Depois que o OpenSearch Service gera o snapshot, o valor percentual é atualizado. O tempo necessário para concluir um snapshot pode variar dependendo do espaço de armazenamento. O OpenSearch Service gera snapshots de maneira incremental. Se houver alterações significativas dos dados em relação ao snapshot automatizado anteriormente, seu snapshot poderá levar mais tempo para ser concluído.

A seguinte solicitação _snapshot recupera todos os snapshots atualmente em execução, com informações detalhadas de status:

GET /_snapshot/_status

Para obter mais informações sobre as APIs de snapshot, consulte Monitorar um snapshot no site do Elasticsearch.

Recupere todos os snapshots do cluster e as IDs dos nós

Para recuperar todos os snapshots em execução no cluster, use o parâmetro current:

GET /_snapshot/<snapshot-repository>/_current

Para obter as IDs de todos os nós de dados, execute a API cat nodes:

GET _cat/nodes

Você pode usar as IDs dos nós para identificar os nós antigos ou novos. Um número crescente de fragmentos nos novos nós indica uma migração suave. Eventualmente, todos os fragmentos são movidos para os novos nós e os nós antigos ficam vazios.

Monitore o processo de implantação azul/verde

Quando o cluster entra no processo de implantação azul/verde, os novos nós no ambiente verde aparecem. Em seguida, os fragmentos são migrados dos nós antigos no ambiente azul. Depois que a migração de dados ou a realocação de fragmentos for concluída, seus nós antigos serão encerrados.

Você pode monitorar o processo de implantação azul/verde nos três estágios: novos nós, migração de dados e remoção de nós antigos.

Etapa 1: criação de novos nós

Você pode monitorar a métrica do cluster nodes no Amazon CloudWatch para obter a contagem de nós. Ou você pode usar a API cat nodes para listar todos os nós no cluster:

GET /_cat/nodes?v&pretty

Durante esse estágio do processo de implantação azul/verde, você pode visualizar novos nós da saída da API à medida que a contagem de nós aumenta.

Etapa 2: migração de dados

Assim que a primeira etapa estiver concluída, começará a migração do fragmento. Durante a migração de dados, a contagem de fragmentos dos nós mais antigos diminui e a contagem de fragmentos dos nós mais novos aumenta. Você pode usar a API cat/allocation (do site do OpenSearch) para obter quantos fragmentos são alocados para cada nó:

GET /_cat/allocation

Para obter os status dos fragmentos, Iniciado, Realocando ou Não atribuído, execute a seguinte API:

GET _cat/shards?h=index,shard,prirep,state,relocating.reason

Para verificar o status da recuperação (no site do Elasticsearch) dos fragmentos no cluster, execute a seguinte API:

GET _cat/recovery?active_only=true

Durante esse estágio, a migração de dados pode levar mais tempo para ser concluída devido a um cluster sobrecarregado, fragmentos desbalanceados ou problemas de back-end.

Cluster sobrecarregado

Certifique-se de atualizar a versão quando o tráfego do cluster não estiver alto. Antes de começar a atualização, verifique as métricas do clusterCPUUtilization e JVMMemoryPressure para garantir que essas métricas tenham valores ideais.

Para mais informações, consulte Como posso solucionar problemas de alta utilização de CPU no cluster do Amazon OpenSearch Service?

Fragmentos desbalanceados

Por padrão, o OpenSearch Service tem uma estratégia de fragmentação de 5:1, em que cada índice é dividido em cinco fragmentos principais. Defina o tamanho da estratégia de fragmentação para que cada uma seja fragmentada entre 10 e 30 GiB para workloads de pesquisa ou entre 30 e 50 GiB para workloads de logs.

O OpenSearch e o Elasticsearch 7.x e versões posteriores têm um limite de 1.000 fragmentos por nó. É uma prática recomendada não ter mais de 25 fragmentos por GiB de Java heap.

Para mais informações, consulte Como rebalancear a distribuição desigual de fragmentos no cluster do Amazon OpenSearch Service?

Problemas de back-end

Durante esse estágio, a migração de fragmentos pode ficar paralisada devido a problemas de back-end. Se não houver progresso na migração e o problema não se resolver automaticamente, entre em contato com o AWS Support.

Etapa 3: remoção de nós antigos

Depois que todos os fragmentos forem migrados para os novos nós, os nós mais antigos serão removidos do cluster. A contagem de nós retornará à contagem de nós original configurada por você. Nesse estágio, os processos de atualização e implantação azul/verde estão concluídos.

A atualização foi bem-sucedida com problemas

A mensagem “A atualização foi bem-sucedida com problemas” ocorre quando o cluster está bloqueando as solicitações de gravação recebidas. Verifique a métrica ClusterIndexWritesBlocked do OpenSearch Service. Um valor de um significa que o cluster está bloqueando as solicitações de gravação. Para resolver esse problema, adicione mais espaço em disco ou escale seu cluster.

Para obter mais informações, consulte Práticas recomendadas operacionais para o Amazon OpenSearch Service.

AWS OFICIAL
AWS OFICIALAtualizada há 10 meses