Todos os produtos
Search
Central de documentação

Elasticsearch:Usar um cluster Logstash autogerenciado para migrar dados para um cluster Alibaba Cloud Elasticsearch

Última atualização: Jun 27, 2026

O Logstash é um mecanismo de coleta de dados open source capaz de filtrar e transmitir dados em tempo real. Se os requisitos de desempenho em tempo real para migração de dados não forem rigorosos, use o Logstash. Este tópico descreve como usar o Elastic Compute Service (ECS) da Alibaba Cloud para implantar um cluster Logstash autogerenciado e migrar dados de um arquivo de log para um cluster Alibaba Cloud Elasticsearch.

Pré-requisitos

  • Crie um cluster Alibaba Cloud Elasticsearch e ative o recurso Auto Indexing no cluster.

    Nota
  • Crie uma instância ECS. A instância ECS deve conseguir se conectar tanto ao cluster Elasticsearch quanto ao cluster Logstash autogerenciado. Para mais informações, consulte Criar uma instância usando o assistente.

    Nota

    Recomendamos criar a instância ECS na mesma região, zona e Virtual Private Cloud (VPC) do cluster Elasticsearch.

  • Instale o JDK na instância ECS. Para mais informações, consulte Instalar o JDK.

    Nota

    O JDK deve ser Temurin 17 ou superior. Para mais detalhes sobre a compatibilidade entre versões do Java JDK e do Logstash, consulte Compatibilidade entre Logstash e JVM.

  • Prepare os dados a serem migrados. Este exemplo usa dados de log do ECS.

Procedimento

Etapa 1: (Opcional) Criar uma função e um usuário

Uma instância Logstash autogerenciada exige uma conta do Elasticsearch para acessar o cluster Elasticsearch e visualizar dados de monitoramento do Logstash no console do Kibana. Use o usuário integrado elastic ou um usuário personalizado.

Nota

Em ambientes de produção, recomendamos o uso de um usuário personalizado. Antes de utilizá-lo, atribua a ele uma função com as permissões necessárias. O uso do usuário elastic em cenários reais compromete a segurança do sistema.

Criar uma função

Esta seção descreve como criar uma função com privilégios de leitura e gravação para índices correspondentes ao padrão logstash-*.

  1. Faça login no console do Kibana do cluster Elasticsearch.

    Para mais informações, consulte Fazer login no console do Kibana.

  2. Clique em image no canto superior esquerdo da página exibida e escolha Management > Stack Management.

  3. No painel de navegação à esquerda, escolha Security > Role.

  4. Na página Role, clique em Create role e configure os parâmetros da função.

    A tabela a seguir descreve alguns dos parâmetros exibidos.

    Parâmetro

    Descrição

    Role Name

    Nome da função. Insira um nome personalizado.

    Index

    Índices a gerenciar. Selecione logstash-**.

    Permission

    Permissões a conceder à função. Selecione read, write, create, delete e create_index.

  5. Clique em Create role.

Criar um usuário

Este exemplo cria um usuário para monitoramento do Logstash. Use um dos métodos abaixo para criar o usuário.

Importante

Por padrão, o Alibaba Cloud Elasticsearch desativa o usuário integrado logstash_system. Crie um novo usuário e atribua a ele a função logstash_system. Não nomeie o novo usuário como logstash_system.

  • Método 1: Criar um usuário no console do Kibana

    1. Faça login no console do Kibana do cluster Elasticsearch.

      Para mais informações, consulte Fazer login no console do Kibana.

    2. Clique em image no canto superior esquerdo da página exibida e escolha Management > Stack Management.

    3. No painel de navegação à esquerda, escolha Security > Users.

    4. Na página Users, clique em Create user no canto superior direito.

    5. Na página Create user, configure os parâmetros.

      A tabela a seguir descreve alguns dos parâmetros exibidos.

      Parâmetro

      Descrição

      Username

      Nome do usuário. Insira um nome personalizado. Exemplo: logstash_system_monitor.

      Roles

      Função atribuída ao usuário. Selecione logstash_system.

    6. Clique em Create user.

  • Método 2: Criar um usuário via interface de linha de comando (CLI)

    Conecte-se à instância ECS e execute o seguinte comando para criar um usuário:

    curl -u elastic:<es-password> -XPOST http://<instanceId>.elasticsearch.aliyuncs.com:9200/_xpack/security/user/logstash_system_monitor -d '{"password" : "<logstash-monitor-password>","roles" : ["logstash_system"],"full_name" : "<your full name>"}'

    Parâmetro

    Descrição

    es-password

    Senha do cluster Elasticsearch. Esta senha também é usada para fazer login no console do Kibana do cluster.

    <instanceId>

    ID do cluster Elasticsearch. Consulte o ID do cluster na página Basic Information do cluster Elasticsearch.

    <logstash-monitor-password>

    Senha do usuário logstash_system_monitor.

    <your full name>

    Nome completo do usuário.

    Após a criação do usuário, o sistema retorna o resultado mostrado na figura a seguir.添加用户成功

Etapa 2: Instalar o Logstash na instância ECS

  1. Conecte-se à instância ECS.

    Para mais informações, consulte Métodos de conexão.

  2. Baixe o pacote de instalação do Logstash.

    Acesse o site da Elastic e baixe o pacote de instalação do Logstash com a mesma versão do cluster Elasticsearch.

    wget https://artifacts.elastic.co/downloads/logstash/logstash-8.5.1-linux-x86_64.tar.gz
    Nota

    Comando para o Logstash V7.4:

    wget https://artifacts.elastic.co/downloads/logstash/logstash-7.4.0.tar.gz
  3. Descompacte o pacote de instalação do Logstash.

    Este exemplo usa o Logstash V8.5.1.

    tar -xzvf logstash-8.5.1-linux-x86_64.tar.gz

Etapa 3: Configurar e executar um pipeline do Logstash

  1. Acesse o diretório do Logstash.

    cd logstash-8.5.1
  2. Crie um arquivo .conf.

    touch test.conf
  3. Configure o arquivo test.conf.

    O código de amostra a seguir fornece um exemplo de configuração:

    input {
        file {
            path => "/your/file/path/xxx"
            }
    }
    filter {
    }
    output {
      elasticsearch {
        hosts => "<http://<instanceId>.elasticsearch.aliyuncs.com:9200>"
      	index => "<index-name>"
        user => "<user-name>"
        password => "<logstash-password>"
      }
    }

    Parâmetro

    Descrição

    path

    Caminho do arquivo de log. Este exemplo usa /var/log/messages.

    hosts

    Endpoint do cluster Alibaba Cloud Elasticsearch. Substitua instanceId pelo ID da sua instância. Exemplo: http://es-cn-45xxxxxxxxxxxxju.elasticsearch.aliyuncs.com:9200.

    index

    Nome do índice onde os dados do arquivo de log serão gravados. Defina um nome personalizado.

    user

    Nome de usuário usado para acessar o cluster Elasticsearch. Este exemplo usa elastic.

    Importante
    • Para garantir a segurança do sistema, recomendamos usar um usuário personalizado em vez do usuário elastic em ambientes de produção.

    • O nome de usuário deve estar entre aspas duplas ("). Isso evita erros potenciais causados por caracteres especiais no nome de usuário durante a execução do pipeline do Logstash.

    password

    Senha usada para acessar o cluster Elasticsearch.

    Importante

    A senha deve estar entre aspas duplas ("). Isso evita erros potenciais causados por caracteres especiais na senha durante a execução do pipeline do Logstash.

    O Logstash oferece diversos plug-ins de entrada, filtro e saída. Configure esses plug-ins adequadamente para transferir dados. Para mais informações, consulte Estrutura de um arquivo de configuração.

  4. Execute o pipeline do Logstash.

    bin/logstash -f test.conf

    Se o comando for executado com êxito, o Logstash detectará automaticamente alterações no arquivo de log e as sincronizará com o cluster Elasticsearch. Sempre que novos dados forem adicionados ao arquivo de log monitorado, o Logstash os sincronizará automaticamente com o cluster Elasticsearch.

Etapa 4: Visualizar os dados migrados

  1. Faça login no console do Kibana do cluster Elasticsearch.

    Para mais informações, consulte Fazer login no console do Kibana.

  2. Clique em image no canto superior esquerdo da página exibida e escolha Management > Dev Tools.

  3. Na aba Console da página exibida, execute o seguinte comando:

    GET /logstash-*/_search

Etapa 5: (Opcional) Monitorar o nó do Logstash

  1. Acesse a pasta config no diretório do Logstash.

    cd logstash-8.5.1/config
  2. Configure o arquivo logstash.yml.

    1. Abra o arquivo logstash.yml.

      vim logstash.yml
    2. No arquivo logstash.yml, remova os comentários dos parâmetros listados na tabela a seguir e configure-os.

      xpack.monitoring.enabled:true
      xpack.monitoring.elasticsearch.username:"<user-name>"
      xpack.monitoring.elasticsearch.password:"<logstash-password>"
      xpack.monitoring.elasticsearch.hosts:["http://es-cn-nwy3fwjp8xxxxxxx.elasticsearch.aliyuncs.com:9200"]

      Parâmetro

      Descrição

      xpack.monitoring.enabled

      Defina este parâmetro como true. O valor padrão é false.

      xpack.monitoring.elasticsearch.username

      Nome do usuário criado para monitoramento do Logstash. Este exemplo usa o usuário elastic.

      Importante

      Para garantir a segurança do sistema, recomendamos usar um usuário personalizado em vez do usuário elastic em ambientes de produção.

      xpack.monitoring.elasticsearch.password

      Senha do usuário criado para monitoramento do Logstash.

      xpack.monitoring.elasticsearch.hosts

      Endpoint do cluster Alibaba Cloud Elasticsearch. Exemplo: http://es-cn-45xxxxxxxxxxxxju.elasticsearch.aliyuncs.com:9200.

  3. Acesse o diretório do Logstash e inicie o serviço do Logstash.

    cd ../
    bin/logstash -f test.conf
  4. Faça login no console do Kibana do cluster Elasticsearch.

    Para mais informações, consulte Fazer login no console do Kibana.

  5. Clique em image no canto superior esquerdo da página exibida e escolha Management > Stack Monitoring.

  6. (Opcional) Na caixa de diálogo Create rules, clique em OK.

  7. Na página Cluster overview, visualize os dados de monitoramento do Logstash.

Referências