腾讯云Logstash实战1-同步两个Elasticsearch
2021-12-24 本文已影响0人
bellengao
使用Logstash也可以完成同步两个Elasticsearch集群中的数据,比如把数据从自建的Elasticsearch集群同步到腾讯云上的Elasticsearch集群,或者同步两个腾讯云上的Elasticsearch集群中的数据。本文介绍如何使用腾讯云Logstash产品,同步两个Elasticsearch集群中的数据。
创建管道
在“管道管理”页面,点击“新建管道”按钮,创建一个管道:

进入管道配置页面,点击“引用模板”按钮,同时引用“input-elasticsearch”和“output-elasticsearch”两个模板:


在管道配置中,分别针对“input-elasticsearch”和“output-elasticsearch”进行配置,一些关键的配置参数说明如下:
input-elasticsearch
- hosts: elasticsearch集群地址列表
- user: elasticsearch集群账号
- password: elasticsearch集群密码
- index: 索引名称
- query: es查询语句,用于查询某一部分的数据
- schedule: 是否开启定时任务持续从elasticsearch集群中拉取数据,如果不配置,则只会拉取一次
- scroll: 批量从elasticsearch集群中拉取数据时,用于保持scroll context的时间,默认为"1m"
- size: 批量从elasticsearch集群中拉取数据时,每个批次拉取多少条数据,默认为1000
- type: 标识字段
- docinfo: 是否在event中填充索引名称,type以及id等文档元信息,默认为false
查看更多参数,可以参考input-elasticsearch
output-elasticsearch
- hosts: elasticsearch集群地址列表
- user: elasticsearch集群账号
- password: elasticsearch集群密码
- index: 索引名称
- document_type: 索引type,对于不同版本的ES集群,该字段有不同的默认值,5.x及以下的集群,默认会使用input中指定的type字段,如果type字段不存在,则该字段的值为doc;6.x的集群,该字段默认值为doc;7.x的集群,该字段默认值为_doc; 8.x的集群,不会使用该字段
- document_id: 文档ID
查看更多参数,可以参考output-elasticsearch
在配置完管道后,点击“保存并部署”创建一个管道并自动部署:

查看日志
在控制台查看Logstash的运行日志,如果没有ERROR级别的日志,则说明管道运行正常:

查看数据写入情况
进入到output-elasticsearch中定义的输出端的ES集群对应的kibana页面,在Dev tools工具栏里查看索引是否存在,以及索引的文档数量是否正确:
