将 Elasticsearch 日志迁移到不同的集群

Migrating Elasticsearch logs to a different cluster

我在 Kubernetes (AKS) 上部署了 Elasticsearch。我正在使用官方 Elastic 的 docker 图像进行部署。日志存储在持久性 Azure 磁盘中。如何将其中一些日志迁移到具有类似设置的另一个集群?只有符合基于日志日期时间的过滤条件的日志才需要迁移。

请使用Reindex API实现相同

POST _reindex
{
  "source": {
    "remote": {
      "host": "http://oldhost:9200",
      "username": "user",
      "password": "pass"
    },
    "index": "source",
    "query": {
      "match": {
        "test": "data"
      }
    }
  },
  "dest": {
    "index": "dest"
  }
}

注:

  1. 运行 目标实例上的上述命令。

  2. 确保源实例在elasticsearch.yml

    中列入白名单
      reindex.remote.whitelist: oldhost:9200
    
  3. 运行 使用以下查询参数异步处理的过程

    POST _reindex?wait_for_completion=false