cd /usr/local/logstash
yum -y install gem
bin/logstash-plugin install logstash-input-jdbc
- 同步 Mysql 数据到 Elasticsearch
wget http://central.maven.org/maven2/mysql/mysql-connector-java/8.0.18/mysql-connector-java-8.0.18.jar
mv mysql-connector-java-8.0.18.jar logstash/logstash-core/lib/jars/
vim mysql-jdbc.conf
input {
stdin {
}
jdbc {
jdbc_connection_string => "jdbc:mysql://localhost:3306/test?useSSL=false&serverTimezone=UTC"
jdbc_user => "root"
jdbc_password => "asdf"
jdbc_driver_library => "mysql-connector-java-8.0.18.jar"
jdbc_driver_class => "com.mysql.cj.jdbc.Driver"
jdbc_paging_enabled => "true"
jdbc_page_size => "3000"
statement_filepath => "/usr/local/logstash/mysql-jdbc.sql"
schedule => "* * * * *"
type => "test"
}
}
filter {
json {
source => "message"
remove_field => ["message"]
}
}
output {
elasticsearch {
hosts => ["localhost:9200"]
index => "mysql-test"
document_id => "%{id}"
document_type => "_doc"
}
stdout {
codec => json_lines
}
}
vim mysql-jdbc.sql
SELECT * FROM test
bin/logstash -f mysql-jdbc.conf
vim mysql-jdbc2.conf
vim mysql-jdbc3.conf
vim config/pipelines.yml
- pipeline.id: mysql-jdbc2
path.config: "/usr/local/logstash/mysql-jdbc2.conf"
- pipeline.id: mysql-jdbc3
path.config: "/usr/local/logstash/mysql-jdbc3.conf"
bin/logstash -r