

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Gerenciamento do estado do índice no Amazon OpenSearch Service
<a name="ism"></a>

O Index State Management (ISM) no Amazon OpenSearch Service permite definir políticas de gerenciamento personalizadas que automatizam tarefas rotineiras e as aplicam a índices e padrões de indexação. Não é mais necessário configurar e gerenciar processos externos para executar operações de índice.

Uma política contém um estado padrão e uma lista de estados entre os quais o índice transita. Dentro de cada estado, é possível definir uma lista de ações a serem realizadas e das condições que acionam essas transições. Um caso de uso típico é excluir periodicamente índices antigos após um determinado período. Por exemplo, é possível definir uma política que mova seu índice para o estado `read_only` após 30 dias e, por fim, excluí-lo após 90 dias.

Depois de anexar uma política a um índice, o ISM cria um trabalho que é executado em intervalos de 5 a 8 minutos (ou 30 a 48 minutos para clusters pré-1.3) para executar ações de política, verificar condições e fazer a transição do índice para estados diferentes. O tempo base para que esse trabalho seja executado é a cada 5 minutos. Além disso, uma variação aleatória de 0 a 60% é adicionada a ele para garantir que não ocorra um surto de atividade de todos os seus índices ao mesmo tempo. O ISM não executa tarefas se o estado do cluster for vermelho.

O ISM exige o Elasticsearch 6.8 OpenSearch ou posterior.

**nota**  
Esta documentação fornece uma breve visão geral do ISM e de vários exemplos de políticas. Também explica como o ISM para domínios do Amazon OpenSearch Service difere do ISM em clusters autogerenciados OpenSearch. Para obter a documentação completa do ISM, incluindo uma referência abrangente de parâmetros, descrições de cada configuração e uma referência de API, consulte [Index State Management](https://docs.opensearch.org/latest/im-plugin/ism/index/) na OpenSearch documentação.

**Importante**  
Você não pode mais utilizar modelos de índice para aplicar políticas de ISM a índices recém-criados. Você pode continuar gerenciando automaticamente índices recém-criados com o [campo do modelo de ISM](https://opensearch.org/docs/latest/im-plugin/ism/policies/#sample-policy-with-ism-template-for-auto-rollover). Esta atualização introduz uma alteração significativa que afeta os CloudFormation modelos existentes usando essa configuração. 

## Criar uma política do IAM
<a name="ism-start"></a>

**Para começar a usar o gerenciamento de estados de índices**

1. Abra o console do Amazon OpenSearch Service em [https://console.aws.amazon.com/aos/casa](https://console.aws.amazon.com/aos/home).

1. Selecione o domínio para o qual você deseja criar uma política do ISM.

1. No painel do domínio, navegue até a URL dos OpenSearch painéis e faça login com seu nome de usuário e senha principais. O URL segue este formato:

   ```
   domain-endpoint/_dashboards/
   ```

1. Abra o painel de navegação esquerdo em OpenSearch Painéis e escolha **Gerenciamento de índices** e, em seguida, **Criar política**. 

1. Use o [editor visual](https://opensearch.org/docs/latest/im-plugin/ism/index/#visual-editor) ou o [editor JSON](https://opensearch.org/docs/latest/im-plugin/ism/index/#json-editor) para criar políticas. Recomendamos que você use o editor visual, pois ele oferece uma maneira mais estruturada de definir políticas. Para obter ajuda com a criação de políticas, consulte as [políticas de exemplo](#ism-example) abaixo.

1. Depois de criar uma política, anexe-a a um ou mais índices:

   ```
   POST _plugins/_ism/add/my-index
   {
     "policy_id": "my-policy-id"
   }
   ```
**nota**  
Se o seu domínio estiver executando uma versão herdada do Elasticsearch, use `_opendistro` em vez de `_plugins`.

   Como alternativa, selecione o índice em OpenSearch Painéis e escolha **Aplicar política**.

## Políticas de exemplo
<a name="ism-example"></a>

As políticas de exemplo a seguir demonstram como automatizar casos de uso comuns do ISM.

### Armazenamento de atividade muito alta para alta atividade para baixa atividade
<a name="ism-example-cold"></a>

Esse exemplo de política move um índice do armazenamento dinâmico para e [UltraWarm](ultrawarm.md), eventualmente, para [armazenamento refrigerado](cold-storage.md). Em seguida, ele exclui o índice.

O índice está inicialmente no estado `hot`. Após dez dias, o ISM o transfere  para o estado `warm`. 80 dias depois, quando o índice tiver 90 dias, o ISM move o índice para o estado `cold` . Após um ano, o serviço envia uma notificação para uma sala do Amazon Chime informando que o índice está sendo excluído e, depois, o exclui permanentemente. 

Observe que os índices frios exigem a operação `cold_delete` em vez da operação normal `delete`. Observe também que um `timestamp_field` explícito é necessário em seus dados para gerenciar índices frios com ISM.

```
{
  "policy": {
    "description": "Demonstrate a hot-warm-cold-delete workflow.",
    "default_state": "hot",
    "schema_version": 1,
    "states": [{
        "name": "hot",
        "actions": [],
        "transitions": [{
          "state_name": "warm",
          "conditions": {
            "min_index_age": "10d"
          }
        }]
      },
      {
        "name": "warm",
        "actions": [{
          "warm_migration": {},
          "retry": {
            "count": 5,
            "delay": "1h"
          }
        }],
        "transitions": [{
          "state_name": "cold",
          "conditions": {
            "min_index_age": "90d"
          }
        }]
      },
      {
        "name": "cold",
        "actions": [{
            "cold_migration": {
              "timestamp_field": "<your timestamp field>"
            }
          }
        ],
        "transitions": [{
          "state_name": "delete",
          "conditions": {
             "min_index_age": "365d"
          }
        }]
      },
      {
        "name": "delete",
        "actions": [{
          "notification": {
            "destination": {
              "chime": {
                "url": "<URL>"
              }
            },
            "message_template": {
              "source": "The index {{ctx.index}} is being deleted."
            }
          }
        },
        {
          "cold_delete": {}
        }]
      }
    ]
  }
}
```

### Reduzir a contagem de réplicas
<a name="ism-example-replica"></a>

Esta política de exemplo mais simples reduz a contagem de réplicas para zero após sete dias para conservar espaço em disco e exclui o índice após 21 dias. Essa política pressupõe que seu índice não seja crítico e não receba mais solicitações de gravação. Ter réplicas zero traz algum risco de perda de dados.

```
{
  "policy": {
    "description": "Changes replica count and deletes.",
    "schema_version": 1,
    "default_state": "current",
    "states": [{
        "name": "current",
        "actions": [],
        "transitions": [{
          "state_name": "old",
          "conditions": {
            "min_index_age": "7d"
          }
        }]
      },
      {
        "name": "old",
        "actions": [{
          "replica_count": {
            "number_of_replicas": 0
          }
        }],
        "transitions": [{
          "state_name": "delete",
          "conditions": {
            "min_index_age": "21d"
          }
        }]
      },
      {
        "name": "delete",
        "actions": [{
          "delete": {}
        }],
        "transitions": []
      }
    ]
  }
}
```

### Obter o snapshot de um índice
<a name="ism-example-snapshot"></a>

Esta política de exemplo usa a operação `[snapshot](https://docs.opensearch.org/latest/im-plugin/ism/policies/#snapshot)` para obter um instantâneo de um índice assim que ele passa a conter pelo menos um documento. `repository` é o nome do repositório manual de snapshots que você registrou no Amazon S3. `snapshot` é o nome do snapshot. Para obter pré-requisitos para a obtenção de snapshot e etapas para registrar um repositório, consulte [Criação de instantâneos de índice no Amazon Service OpenSearch](managedomains-snapshots.md).

```
{
  "policy": {
    "description": "Takes an index snapshot.",
    "schema_version": 1,
    "default_state": "empty",
    "states": [{
        "name": "empty",
        "actions": [],
        "transitions": [{
          "state_name": "occupied",
          "conditions": {
            "min_doc_count": 1
          }
        }]
      },
      {
        "name": "occupied",
        "actions": [{
          "snapshot": {
            "repository": "<my-repository>",
            "snapshot": "<my-snapshot>"
            }
          }],
          "transitions": []
      }
    ]
  }
}
```

## Modelos do ISM
<a name="ism-template"></a>

Você pode configurar um campo `ism_template` em uma política para que, quando criar um índice que corresponda ao padrão do modelo, a política seja anexada automaticamente a esse índice. Neste exemplo, qualquer índice que você criar com um nome começando com “log” é automaticamente correspondido à política do ISM `my-policy-id`:

```
PUT _plugins/_ism/policies/my-policy-id
{
  "policy": {
    "description": "Example policy.",
    "default_state": "...",
    "states": [...],
    "ism_template": {
      "index_patterns": ["log*"],
      "priority": 100
    }
  }
}
```

Para obter um exemplo mais detalhado, consulte [Exemplo de política com modelo de ISM para rolagem automática](https://opensearch.org/docs/latest/im-plugin/ism/policies/#sample-policy-with-ism-template-for-auto-rollover).

## Diferenças
<a name="ism-diff"></a>

Em comparação com o OpenSearch Elasticsearch, o ISM for Amazon OpenSearch Service tem várias diferenças. 

### Operações do ISM
<a name="alerting-diff-op"></a>
+ OpenSearch O serviço oferece suporte a três operações ISM exclusivas`warm_migration`,`cold_migration`,, e`cold_delete`:
  + Se seu domínio estiver [UltraWarm](ultrawarm.md)ativado, a `warm_migration` ação fará a transição do índice para armazenamento aquecido.
  + Se o seu domínio tiver [armazenamento frio](cold-storage.md) habilitado, a ação `cold_migration` passará o índice para o armazenamento frio, e a ação `cold_delete` excluirá um índice do armazenamento frio.

  Mesmo que uma dessas ações não seja concluída dentro do [período de tempo limite definido](https://docs.opensearch.org/latest/im-plugin/ism/policies/#actions), a migração ou exclusão dos índices ainda continuará. Definir uma [error\$1notification](https://opensearch.org/docs/latest/im-plugin/ism/policies/#error-notifications) para uma das ações acima vai notificar você de que a ação falhou se não tiver sido concluída em um período de tempo limite, mas a notificação é apenas para sua própria referência. A operação real não tem tempo limite inerente e continua a ser executada até que eventualmente seja bem-sucedida ou falhe. 
+ Se seu domínio OpenSearch executa o Elasticsearch 7.4 ou posterior, o OpenSearch Service oferece suporte ao ISM `open` e às operações. `close`
+ Se o seu domínio executar OpenSearch o Elasticsearch 7.7 ou posterior, o OpenSearch Service suportará a operação do ISM. `snapshot`

### Operações ISM de armazenamento de baixa atividade
<a name="ism-cold-storage"></a>

Para índices frios, você deve especificar um `?type=_cold` parâmetro ao usar o seguinte ISM APIs:
+ [Adicionar política](https://opensearch.org/docs/latest/im-plugin/ism/api/#add-policy)
+ [Remover política](https://opensearch.org/docs/latest/im-plugin/ism/api/#remove-policy-from-index)
+ [Atualizar política](https://opensearch.org/docs/latest/im-plugin/ism/api/#update-policy)
+ [Repetir índice com falha](https://opensearch.org/docs/latest/im-plugin/ism/api/#retry-failed-index)
+ [Explicar índice](https://opensearch.org/docs/latest/im-plugin/ism/api/#explain-index)

Estes APIs para índices frios têm as seguintes diferenças adicionais:
+ Operadores curingas não são aceitos, exceto quando usados no final. Por exemplo, `_plugins/_ism/<add, remove, change_policy, retry, explain>/logstash-*` é aceito, mas `_plugins/_ism/<add, remove, change_policy, retry, explain>/iad-*-prod` não.
+ Não há suporte a índices e padrões de vários índices. Por exemplo, `_plugins/_ism/<add, remove, change_policy, retry, explain>/app-logs` é aceito, mas `_plugins/_ism/<add, remove, change_policy, retry, explain>/app-logs,sample-data` não.

### Configurações do ISM
<a name="ism-diff-settings"></a>

OpenSearch e o Elasticsearch permitem que você altere todas as configurações de ISM disponíveis usando a `_cluster/settings` API. No Amazon OpenSearch Service, você só pode alterar as seguintes [configurações do ISM](https://opensearch.org/docs/latest/im-plugin/ism/settings/):
+ **Configurações no nível do cluster:**
  + `plugins.index_state_management.enabled`
  + `plugins.index_state_management.history.enabled`
+ **Configurações no nível do índice:**
  + `plugins.index_state_management.rollover_alias`

   