Todos os produtos
Search
Central de documentação

Elasticsearch:Gerencie índices com o Curator

Última atualização: Jun 27, 2026

O Curator é uma ferramenta de gerenciamento de índices do Elasticsearch que cria, exclui e desativa índices, além de mesclar segmentos. Este tópico aborda a instalação do Curator, o uso da CLI singleton, o agendamento via cron e a migração de índices de nós quentes para nós mornos.

Instale o Curator

Pré-requisitos

Procedimento

  1. Conecte-se à instância ECS.

    Nota

    Este exemplo utiliza um usuário comum.

  2. Instale o Curator:

    sudo pip install elasticsearch-curator
    Nota
    • Compatibilidade de versões entre o Curator e o Alibaba Cloud Elasticsearch:

      Versão do Curator

      Versões suportadas do Elasticsearch

      5.6.x

      5.x, 6.x

      5.7+

      5.x, 6.x, 7.x

      O Curator não oferece suporte ao Elasticsearch 8.x. Para clusters 8.x, utilize o recurso nativo de Index Lifecycle Management (ILM).

      Consulte também a página de Compatibilidade de Versões.

    • Acesse a documentação oficial: Referência do Curator.

  3. Verifique a instalação:

    sudo curator --version

    Saída esperada:

    curator, version 5.6.0

Use a CLI singleton

A CLI singleton (curator_cli) executa uma única ação sem arquivos de configuração, sendo ideal para operações pontuais.

Sintaxe básica:

curator_cli [OPTIONS] COMMAND [ARGS]

Operações comuns:

  • Liste todos os índices:

    curator_cli --host es-sg-xxxxx.elasticsearch.aliyuncs.com --port 9200 --username elastic --password password show-indices --verbose
  • Exclua índices com mais de 30 dias:

    curator_cli --host es-sg-xxxxx.elasticsearch.aliyuncs.com --port 9200 --username elastic --password password delete-indices --filter_list '[{"filtertype":"age","source":"creation_date","direction":"older","unit":"days","unit_count":30}]'
  • Feche índices correspondentes a um padrão:

    curator_cli --host es-sg-xxxxx.elasticsearch.aliyuncs.com --port 9200 --username elastic --password password close --filter_list '[{"filtertype":"pattern","kind":"prefix","value":"logstash-"}]'
Nota
  • A CLI singleton não suporta as operações Alias e Restore. Para essas tarefas, use o comando completo do curator com arquivos de ação.

  • A sintaxe dos comandos e os parâmetros podem variar entre versões do Curator. Consulte a documentação do Elasticsearch Curator ou execute curator_cli --help para verificar as opções da sua versão.

Agende tarefas com cron

Agende tarefas recorrentes de gerenciamento de índices por meio de expressões cron.

Sintaxe:

curator [OPTIONS] ACTION_FILE
Options:
  --config PATH  Path to configuration file. Default: ~/.curator/curator.yml
  --dry-run      Do not perform any changes.
  --version      Show the version and exit.
  --help         Show this message and exit.

Crie dois arquivos de configuração antes de executar o comando curator:

  • curator.yml: Defina as configurações de conexão com o cluster do Elasticsearch.

  • action.yml: Especifica as ações a executar e os filtros a aplicar.

Expressões cron comuns:

Agendamento

Expressão Cron

A cada 15 minutos

*/15 * * * *

A cada hora

0 * * * *

Diariamente à meia-noite

0 0 * * *

Semanalmente aos domingos às 02:00

0 2 * * 0

Migre índices de nós quentes para nós mornos

Na arquitetura hot-warm, os dados são armazenados em diferentes tipos de nós conforme a frequência de acesso:

  • Nós quentes (Hot): Armazenam dados acessados frequentemente e indexados recentemente.

  • Nós mornos (Warm): Armazenam dados mais antigos e com menor frequência de acesso.

O Curator automatiza a migração de índices de nós quentes para mornos com base na idade do índice. Esse processo otimiza os custos de armazenamento e mantém a performance de consulta para dados recentes. Saiba mais sobre a Arquitetura "Hot-Warm" no Elasticsearch 5.x.

  1. Crie um arquivo .curator.yml no diretório /usr/curator/. Exemplo:

    client:
      hosts:
        - http://es-sg-0pxxxxxxxxxxxx234.elasticsearch.aliyuncs.com
      port: 9200
      url_prefix:
      use_ssl: False
      certificate:
      client_cert:
      client_key:
      ssl_no_validate: False
      username: elastic
      password: password
      timeout: 30
      master_only: False
    logging:
      loglevel: INFO
      logfile:
      logformat: default
      blacklist: ['elasticsearch', 'urllib3']
    • hosts: Endpoint interno ou público do cluster do Elasticsearch. Este exemplo usa o endpoint interno.

    • username e password: Credenciais de acesso ao cluster do Elasticsearch.

  2. Crie um arquivo action.yml no diretório /usr/curator/. Exemplo:

    actions:
      1:
        action: allocation
        description: "Apply shard allocation filtering rules to the specified indices"
        options:
          key: box_type
          value: warm
          allocation_type: require
          wait_for_completion: true
          timeout_override:
          continue_if_exception: false
          disable_action: false
        filters:
        - filtertype: pattern
          kind: prefix
          value: logstash-
        - filtertype: age
          source: creation_date
          direction: older
          timestring: '%Y-%m-%dT%H:%M:%S'
          unit: minutes
          unit_count: 30

    Este exemplo migra índices com o prefixo logstash-, criados em nós hot há mais de 30 minutos, para nós warm.

    Principais parâmetros:

    Parâmetro

    Descrição

    action

    Tipo de ação. Defina como allocation para migrar índices entre tipos de nós.

    key

    Chave do atributo do nó. Use box_type para migração hot-warm.

    value

    Tipo de nó de destino. Configure como warm para mover índices para nós mornos.

    filtertype: pattern

    Filtra índices por padrão de nome. O tipo prefix seleciona índices iniciados com o valor especificado.

    filtertype: age

    Filtra índices por idade. Os parâmetros unit e unit_count definem o limiar de tempo.

  3. Teste a configuração do curator:

    sudo curator --config /usr/curator/.curator.yml /usr/curator/action.yml

    Saída esperada:

    2019-02-12 20:11:30,607 INFO      Preparing Action ID: 1, "allocation"
    2019-02-12 20:11:30,612 INFO      Trying Action ID: 1, "allocation": Apply shard allocation filtering rules to the specified indices
    2019-02-12 20:11:30,693 INFO      Updating index setting {'index.routing.allocation.require.box_type': 'warm'}
    2019-02-12 20:12:57,925 INFO      Health Check for all provided keys passed.
    2019-02-12 20:12:57,925 INFO      Action ID: 1, "allocation" completed.
    2019-02-12 20:12:57,925 INFO      Job completed.
  4. Agende a execução do comando a cada 15 minutos:

    crontab -e
    */15 * * * * curator --config /usr/curator/.curator.yml /usr/curator/action.yml