Por que a ação de rollover do índice em minha política do ISM apresenta uma falha no Amazon OpenSearch Service?
Quero usar o Index State Management (ISM) para realizar o rollover nos meus índices no meu cluster do Amazon OpenSearch Service. No entanto, ocorre uma falha ao fazer o rollover do meu índice e recebo uma mensagem de erro.
Breve descrição
Para resolver esse problema, use a API explain para identificar a causa da falha. Em seguida, revise sua política do ISM. Para obter mais informações sobre como configurar a ação de rollover, consulte Como uso o ISM para gerenciar pouco espaço de armazenamento no Amazon OpenSearch Service?
Observação: a resolução a seguir se aplica somente à API do OpenSearch. Para a antiga API do Open Distro, consulte a API ISM no site do Open Distro.
Resolução
Use a API explain para identificar a causa
Para identificar por que o rollover do índice apresenta falha, use a API explain:
GET _plugins/_ism/explain/logs-000001?pretty
Exemplo de saída da API explain:
{ "logs-000001": { "index.plugins.index_state_management.policy_id": "rollover-workflow", "index": "logs-000001", "index_uuid": "JUWl2CSES2mWYXqpJJ8qlA", "policy_id": "rollover-workflow", "policy_seq_no": 2, "policy_primary_term": 1, "rolled_over": false, "state": { "name": "open", "start_time": 1614738037066 }, "action": { "name": "rollover", "start_time": 1614739372091, "index": 0, "failed": true, "consumed_retries": 0, "last_retry_time": 0 }, "retry_info": { "failed": false, "consumed_retries": 0 }, "info": { "cause": "rollover target [rolling-indices] does not exist", "message": "Failed to rollover index [index=logs-000001]" } } }
Para identificar a causa da falha, revise a seção de informações de saída.
O exemplo de saída anterior mostra que os índices apresentam falha de rollover porque o alias rolling-indices do rollover de destino não existe.
O destino do rollover não existe
Se sua operação de rollover falhar porque o destino do rollover não existe, verifique se o índice foi inicializado com o alias de rollover:
GET _cat/aliases
A saída lista todos os aliases atuais no cluster e em seus índices associados. Se o ISM indicar que o destino de rollover não existe, faltam um nome de alias de rollover e uma associação de índice com falha.
Para resolver a falha na associação do índice, anexe o alias de rollover ao índice:
POST /_aliases{ "actions": [{ "add": { "index": "logs-000001", "alias": "my-data" } }] }
Depois de anexar o alias de rollover, repita a ação de rollover no índice gerenciado no OpenSearch Service:
POST _plugins/_ism/retry/logs-000001
Para obter mais informações, consulte Retry failed index (Repetir índice com falha) no site do OpenSearch.
Ao repetir a ação com o índice que falhou, você pode receber uma mensagem de status "Attempting to retry" (Tentando repetir). Aguarde a execução do próximo ciclo do ISM. Os ciclos do ISM são executados a cada 30-48 minutos. Se a ação de rollover for bem-sucedida, você receberá a seguinte mensagem: "Successfully rolled over index".
O alias de rollover está ausente
Se sua operação de rollover falhar porque o alias de rollover está ausente, verifique as configurações do índice que falhou:
GET failed-index-name/_settings
Observação: substitua failed-index-name pelo nome do índice que falhou durante o processo de rollover.
Se a configuração index.plugins.index_state_management.rollover_alias estiver ausente, adicione manualmente a configuração ao seu índice:
PUT /failed-index-name/_settings{ "index.plugins.index_state_management.rollover_alias" : "rollover-alias" }
Observação: substitua failed-index-name pelo nome do índice que falhou durante o processo de rollover. Substitua rollover-alias pelo nome do alias que você deseja usar para seu índice.
Use a API retry failed index para repetir a operação de rollover no índice que falhou. Quando a ação de rollover for repetida, atualize seu modelo de política:
PUT _index_template/template-name
Observação: substitua template-name pelo nome de seu modelo de índice.
Aplique as mesmas configurações de seu modelo de política existente para garantir que o OpenSearch Service aplique o alias de rollover aos índices recém-criados.
Exemplo:
PUT _index_template/existing-template { "index_patterns": [ "index-pattern*" ], "template": { "settings": { "plugins.index_state_management.rollover_alias": "rollover-alias" } } }
O nome do índice não corresponde ao padrão do índice
Se sua operação de rollover falhar porque o nome do índice e o padrão do índice não coincidem, verifique o nome do índice que falhou. Para concluir com êxito uma operação de rollover, os nomes dos índices devem corresponder ao seguinte padrão de expressão regular:
`^.*-\d+$`
Esse padrão de expressão regular especifica que os nomes dos índices devem incluir texto seguido por um hífen (-) e um ou mais dígitos. Se o nome do índice não seguir esse padrão e seu primeiro índice tiver dados gravados nele, reindexe os dados. Ao reindexar os dados, use o nome correto para seu novo índice.
Exemplo:
POST _reindex{ "source": { "index": "failed-index" }, "dest": { "index": "my-new-index-000001" } }
Quando a API de dados reindexar, desvincule o alias de rollover do índice com falha. Em seguida, adicione o alias de rollover ao novo índice para que a fonte de dados possa continuar gravando os dados recebidos em um novo índice. Para obter mais informações, consulte a API Reindex documents (API Reindexar documentos) no site do OpenSearch.
Exemplo:
POST /_aliases{ "actions": [{ "remove": { "index": "failed-index", "alias": "rollover-alias" } }, { "add": { "index": "my-new-index-000001", "alias": "rollover-alias" } }] }
Use a seguinte chamada de API para anexar manualmente a política do ISM ao índice:
POST _plugins/_ism/add/my-new-index-*{ "policy_id": "policy_id" }
Observação: substitua ** policy\ _id ** pelo seu ID de política do ISM.
Atualize o modelo existente com o novo nome do padrão de índice. Por exemplo:
PUT _index_template/existing-template { "index_patterns": ["my-new-index-pattern*"], }
Observação: substitua existing-template pelo nome de seu modelo existente. Substitua my-new-index-pattern pelo padrão de índice que você deseja usar.
Importante: sua política do ISM e seu alias de rollover devem refletir os índices sucessivos criados com o mesmo padrão de índice.
O alias de rollover aponta para um alias duplicado em um modelo de índice
Se sua operação de rollover falhar porque um alias de rollover aponta para um alias duplicado, verifique as configurações do modelo de índice:
GET _index_template/template-name
Observação: substitua template-name pelo nome de seu modelo.
Verifique se seu modelo contém uma seção adicional de aliases com outro alias que aponta para o mesmo índice.
Exemplo:
{ "index_patterns": ["my-index*"], "settings": { "index.plugins.index_state_management.rollover_alias": "rollover-alias" }, "aliases": { "another_alias": { "is_write_index": true } } }
No exemplo anterior, há dois aliases, rollover-alias e another_alias. Vários aliases fazem com que o rollover falhe. Para resolver essa falha, atualize as configurações do modelo e não especifique nenhum alias:
PUT _index_template/template-name
Observação: substitua template-name pelo nome do seu modelo.
Em seguida, execute a API retry no índice que falhou:
POST _plugins/_ism/retry/logs-000001
Importante: se um alias apontar para vários índices, certifique-se de que somente um índice tenha o acesso de gravação ativado. A API rollover automaticamente dá acesso de gravação ao índice para o qual o alias de rollover aponta. Ao realizar a operação de rollover no ISM, você não precisa especificar nenhum alias para a configuração is_write_index.
Você tem o máximo de utilização de recursos em seu cluster
Uma exceção no disjuntor ou a falta de espaço de armazenamento podem causar a utilização máxima de recursos no seu cluster.
**Exceção no disjuntor **
Se uma exceção no disjuntor causar a utilização máxima de recursos no seu cluster, ele poderá sofrer alta pressão na memória da Máquina Virtual Java (JVM) ao chamar a API rollover. Para solucionar problemas de alta pressão de memória JVM, consulte Como soluciono problemas de alta pressão de memória de JVM no meu cluster do OpenSearch Service?
Depois que a pressão da memória da JVM cair para menos de 75%, você poderá repetir a atividade no índice que falhou com a seguinte chamada de API:
POST _plugins/_ism/retry/failed-index-name
Observação: substitua failed-index-name pelo nome de seu índice que apresentou falha no rollover.
Use padrões de índice (*) para repetir as atividades em vários índices com falha.
Se você observar picos ocasionais de uso de JVM em seu cluster, também poderá atualizar a política do ISM com o seguinte bloco de repetição para a ação de rollover:
{ "actions": { "retry": { "count": 3, "backoff": "exponential", "delay": "10m" } } }
Em sua política do ISM, cada ação tem uma repetição automática com base no parâmetro de contagem. Se a operação anterior falhar, verifique o parâmetro delay para ver quanto tempo você precisará esperar até que o ISM repita a ação. Para mais informações, consulte Actions no site do OpenSearch.
Falta de espaço de armazenamento
Se o cluster começar a ficar sem espaço de armazenamento, o OpenSearch Service iniciará um bloco de gravação no cluster. O bloco de gravação faz com que todas as operações de gravação retornem uma ClusterBlockException em seu cluster. Sua métrica ClusterIndexWritesBlocked mostra o valor de "1" porque o cluster bloqueia solicitações. Qualquer tentativa de criar um novo índice falhará. A chamada de API explain também retorna um 403 IndexCreateBlockException porque o cluster está sem espaço de armazenamento. Para solucionar problemas de exceção de bloqueio de cluster, consulte Como resolvo o erro 403 "index_create_block_exception" ou "cluster_block_exception" no OpenSearch Service?
Depois que a métrica ClusterIndexWritesBlocked voltar para 0, repita a ação do ISM no índice que falhou. Se a pressão sobre a memória da sua JVM exceder 92% por mais de 30 minutos, o disjuntor do OpenSearch poderá iniciar um bloqueio de gravação. Se você encontrar um bloqueio de gravação, solucione a pressão da memória de JVM.
- Tópicos
- Analytics
- Idioma
- Português

Conteúdo relevante
feita há 3 meses
feita há um ano