Logstash 是 Elastic 技术栈中的一个技术,它是一个数据采集引擎,可以从数据库采集数据到 ES 中。可以通过设置 自增 ID 主键 或 更新时间 来控制数据的自动同步:
自增 ID 主键:Logstatsh 会有定时任务,如果发现有主键的值大于先前同步记录的主键值,就会将对应的增量数据同步到 ES 中
更新时间:其实原理与主键类似,不过如果设置使用主键作为依据的话,那么数据库的数据更新就不会被识别从而更新到 ES 中。
一、安装
下载地址:Past Releases of Elastic Stack Software | Elastic
注意:使用Logstatsh的版本号与elasticsearch版本号需要保持一致
二、上传并解压
可以在linux下运行,也可以在windows下运行,本文仅尝试win系统,就不再linux尝试了
三、修改配置文件
新建一个文件 /logstash-7.9.1/config/logstash-esconvert.conf
# Sample Logstash configuration for creating a simple
# Beats -> Logstash -> Elasticsearch pipeline.
input {
elasticsearch {
hosts => ["http://1.2.3.4:9200"]
index => "es_cust_data"
user => "elastic"
password => "elastic"
}
}
output {
elasticsearch {
hosts => ["http://10.20.30.40:9200"]
index => "es_cust_data"
user => "elastic"
password => "elastic"
#document_type => "_doc"
#document_id => "%{[@metadata][_id]}"
}
}
四、执行命令
在安装路径下执行
.\bin\logstash -f .\config\logstash-esconvert.conf
等待执行结果即可,就会从input端同步索引数据到 output端了
一定要注意两个es环境的索引字段要保持一致哈