1、版本介绍


Elasticsearch:
版本:2.4.0
 
Logstash:
版本:2.4.0
所需要的安装文件,到官网下载即可。
 
还需要对应的数据库JDBC,这里使用的是mysql-connector-java-5.1.39.jar
 
2、Logstash安装配置
 
Logstash直接下载后解压即可,主要是配置文件的内容编写。
 
安装logstash-input-jdbc的Logstash插件,用来进行mysql、oracle等的数据同步。
 
[zsz@VS-zsz logstash-2.4.0]$ bin/plugin install logstash-input-jdbc
The use of bin/plugin is deprecated and will be removed in a feature release. Please use bin/logstash-plugin.
Validating logstash-input-jdbc
Installing logstash-input-jdbc
Installation successful
 
配置文件(自行指定文件名,这里命名为logstash-mysql.conf ):
[zsz@VS-zsz conf]$ vi logstash-mysql.conf 
input {
  jdbc {
    jdbc_driver_library => "/usr/local/logstash-2.4.0/mysql-connector-java-5.1.39.jar"
    jdbc_driver_class => "com.mysql.jdbc.Driver"
    jdbc_connection_string => "jdbc:mysql://192.168.****:3306/******?characterEncoding=UTF-8&useSSL=false"
    jdbc_user => "*****"
    jdbc_password => "*********"
    statement => "SELECT * FROM news limit 0,1"
    jdbc_paging_enabled => "true"
    jdbc_page_size => "50000"
    schedule => "* * * * *"
  }
}

filter {
   json {
        source => "message"
        remove_field => ["message"]
    }
}

output {
  stdout {
    codec => rubydebug
  }
  elasticsearch {
    hosts => "192.168.****"  //所有同步elasticsearch的集群信息
    index => "myindex"
  }        

 
启动Logstash
[zsz@VS-zsz conf]$ /usr/local/logstash-2.4.0/bin/logstash -f /usr/local/logstash-2.4.0/conf/logstash-mysql.conf 
Settings: Default pipeline workers: 2
Pipeline main started
{
                  "pk" => 8,
             "user_pk" => 11,
            "media_pk" => 5,
            "topic_pk" => 0
}
{
                  "pk" => 8,
             "user_pk" => 11,
            "media_pk" => 5,
            "topic_pk" => 0
}
........
 
这个进程会一直执行下去,因为设置的schedule => "* * * * *"(每分钟执行一次),如果想结束进程需要kill掉进程。
 
 
查看elasticsearch是否同步数据成功
[root@VS-zsz conf]# curl '192.168.31.79:9200/_cat/indices?v'
health status index   pri rep docs.count docs.deleted store.size pri.store.size
green  open   test      5   1          0            0      1.5kb           795b
green  open   myindex   5   1        494            0    924.7kb        457.6kb
[root@VS-zsz conf]# curl '192.168.31.78:9200/_cat/indices?v'
health status index   pri rep docs.count docs.deleted store.size pri.store.size
green  open   test      5   1          0            0      1.5kb           795b
green  open   myindex   5   1        494            0      925kb        457.8kb
[root@VS-zsz conf]# curl '192.168.31.79:9200/_cat/indices?v'
health status index   pri rep docs.count docs.deleted store.size pri.store.size
green  open   test      5   1          0            0      1.5kb           795b
green  open   myindex   5   1        494            0      925kb        457.8kb 
 
说明数据成功导入,而且在设置了定时任务的情况下, myindex索引的容量不断增加。
 
5、常见错误:
(1)Pipeline aborted due to error {:exception=>"LogStash::ConfigurationError", :backtrace=>..................stopping pipeline {:id=>"main"}
原因:logstash-mysql.conf 文件配置错误,对于>=2.*的版本, elasticsearch 的参数名应为hosts,如果设置为host则会报错。此处应该是可以配置多个数据源。

最新文章

  1. 概率论与数理统计图解.tex
  2. 《java小应用程序(Applet)和java应用程序(Application)分别编写的简单计算器》
  3. HDU5898、 HDU 2089(数位DP)
  4. JS URL参数传递 谷歌乱码解决
  5. eclipse快捷键调试总结【转】
  6. 【转】理解cookie和session机制
  7. [前端笔记]第一篇:html
  8. Python 3 学习笔记
  9. php面试题汇总四(基础篇附答案)
  10. SpringBoot+BootStrap多文件上传到本地
  11. tcp中delay_ack的理解
  12. cocos2d JS 鼠标响应事件
  13. 【Linux】目录权限与文件权限
  14. django2.0表的ORM字段类型和展示
  15. 随机深林和GBDT
  16. hduacm集训单人排位赛1002
  17. Task 回调
  18. MySQL基础复习
  19. FFmpeg 'scale' filter not present, cannot convert pixel formats.
  20. github 上传项目

热门文章

  1. Java称霸编程语言排行榜
  2. [CSP-S模拟测试]:随(快速幂+数学)
  3. mktime夏令时处理
  4. 构建嵌入式Linux交叉编译工具链
  5. MongoDB学习【二】—MongoDB基础和数据类型
  6. MySQL的常用JSON函数
  7. 阶段1 语言基础+高级_1-3-Java语言高级_06-File类与IO流_04 IO字节流_8_字节输入流_InputStream类&FileInputStream
  8. k8s创建资源
  9. spring-data-elasticsearch使用出现的一些小问题
  10. linux shell中的正则表达式