centos 本人亲测可以  首先安装好mysql,elasticsearch   不懂的请参考另一篇文章

安装logstash
官方:https://www.elastic.co/guide/en/logstash/current/installing-logstash.html
1.下载公共密钥
rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch
2.添加yum源
vim  /etc/yum.repos.d/logstash.repo
文件中写入
[logstash-5.x]
name=Elastic repository for 5.x packages
baseurl=https://artifacts.elastic.co/packages/5.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=1
autorefresh=1
type=rpm-md
保存退出
3.使用yum安装
yum install logstash
4.验证是否安装成功
进入 logstash 安装目录
cd /usr/share/logstash
运行
bin/logstash -e 'input { stdin { } } output { stdout {} }'
等待几秒钟 出现  
The stdin plugin is now waiting for input:
然后输入 
hello world
得到类似的结果
2016-11-24T08:01:55.949Z bogon hello world

安装logstash-input-jdbc插件

1.安装 ruby 和 rubygems(注意:需要 ruby 的版本在 1.8.7 以上)
# yum install -y ruby rubygems
检查 ruby 版本:
# ruby -v
ruby 1.8.7 (2013-06-27 patchlevel 374) [x86_64-linux]
替换国内的镜像
gem sources --remove http://rubygems.org/

gem sources -a http://gems.ruby-china.org/
验证是否成功
gem sources -l
修改Gemfile的数据源地址
whereis logstash # 查看logstash安装的位置, 我的在 /usr/share/logstash目录

cd /usr/share/logstash
vim Gemfile
修改 source 的值 为: "https://gems.ruby-china.org/"

vim  Gemfile.jruby-1.9.lock

# 找到 remote 修改它的值为:https://gems.ruby-china.org/

开始安装

./bin/logstash-plugin install --no-verify  logstash-input-jdbc

2.写配置文件开始同步 vi xxx.conf

  1. input {
  2. jdbc {
  3. type => "user"
  4. jdbc_connection_string => "jdbc:mysql://192.168.33.101:3306/test"
  5. jdbc_user => "root"
  6. jdbc_password => "123456"
  7. jdbc_driver_library => "/usr/share/logstash/mysql-connector-java-5.1.41.jar"
  8. jdbc_driver_class => "com.mysql.jdbc.Driver"
  9. jdbc_paging_enabled => "true"
  10. jdbc_page_size => "1000"
  11. statement => "select * from user"
  12. schedule => "* * * * *"
  13. }
  14. jdbc {
  15. type => "task"
  16. jdbc_connection_string => "jdbc:mysql://192.168.33.101:3306/test"
  17. jdbc_user => "root"
  18. jdbc_password => "123456"
  19. jdbc_driver_library => "/usr/share/logstash/mysql-connector-java-5.1.41.jar"
  20. jdbc_driver_class => "com.mysql.jdbc.Driver"
  21. jdbc_paging_enabled => "true"
  22. jdbc_page_size => "1000"
  23. statement => "select * from task"
  24. schedule => "* * * * *"
  25. }
  26. }
  27. filter{
  28. mutate{
  29. remove_field => [ "@timestamp", "@version"]
  30. }
  31. }
  32. output {
  33. if [type] == "user" {
  34. elasticsearch {
  35. hosts  => ["192.168.33.111:9200","192.168.33.112:9200","192.168.33.113:9200"]
  36. index => "testindex"
  37. document_type => "user"
  38. document_id => "%{id}"
  39. user => "elastic"
  40. password => "changeme"
  41. }
  42. }
  43. if [type] == "task" {
  44. elasticsearch {
  45. hosts  => ["192.168.33.111:9200","192.168.33.112:9200","192.168.33.113:9200"]
  46. index => "testindex"
  47. document_type => "task"
  48. document_id => "%{id}"
  49. user => "elastic"
  50. password => "changeme"
  51. }
  52. }
  53. }
执行:bin/logstash -f xxx.conf
ok   大功告成!!!

最新文章

  1. Mybatis 3.3.0 Log4j配置
  2. 小波说雨燕 第三季 构建 swift UI 之 UI组件集-视图集(六)Picker View视图 学习笔记
  3. Ubuntu下安装JDK图文详解
  4. Android——将图片加入到系统相册里面
  5. win10快捷键大全
  6. MarkdownPad2使用高亮插件
  7. 使用exe4j工具制作简单的java应用程序
  8. 【前端】诸葛io收集前端js报错信息
  9. GoLang structTag说明
  10. 2018-06-21 中文代码示例视频演示Python入门教程第五章 数据结构
  11. UnicodeEncodeError: 'ascii' codec can't encode characters in position
  12. 访问权限,public private protected
  13. spring boot 通过controller跳转到指定 html 页面问题以及请求静态资源问题
  14. React系列文章:JSX生成真实DOM结点
  15. lua -- handler
  16. iOS使用UIWebView遇到Error Domain=WebKitErrorDomain Code=101 “The operation couldn’t be completed. (WebKitErrorDomain error 101
  17. 脸部识别JavaScript类库Tracking.js
  18. linux信号量(转载)
  19. java 盒子模型
  20. Javascript Event事件-总结

热门文章

  1. 在 springboot 中如何整合 shiro 应用 ?
  2. abd启动不了
  3. JQuery常用函数及功能
  4. android应用程序monkey压力测试(模拟器或真机)
  5. 自制精排 ePub 集、不定期更新(UPDATA-2015-8-2)
  6. C#中释放数据库连接资源
  7. U盘修复技巧
  8. Python操作mysql之模块pymysql
  9. 网络排错与网络命令的理解ping-traceroute-host(nslookup)-tcpdump获取对方的mac
  10. kali下搭建WiFi钓鱼热点