Docker部署Logstash同步Mysql数据到ES

1、准备配置文件文件夹

在这里插入图片描述

2、部署logstash & elasticsearch

docker pull docker.elastic.co/logstash/logstash:7.15.0
## 替换{你的ES地址}为ES地址
docker run -d --name logstash -p 5044:5044 -p 9600:9600 -v D:\logstash\data\:/usr/share/logstash/data  -v D:\logstash\path\to\mysql-connector-j-8.0.33.jar:/usr/share/logstash/mysql-connector-j-8.0.33.jar -v D:\logstash\config\:/usr/share/logstash/config -v D:\logstash\pipeline\:/usr/share/logstash/pipeline -e "ELASTICSEARCH_HOSTS={你的ES地址}" docker.elastic.co/logstash/logstash:7.15.0
docker pull docker.elastic.co/elasticsearch/elasticsearch:7.15.0
## 配置文件如果需要修改,修改完后删除重新启动容器
docker run -d --name elasticsearch -v D:\elasticsearch\config\:/usr/share/elasticsearch/config -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" docker.elastic.co/elasticsearch/elasticsearch:7.15.0

页面访问 ip:9200端口,出现下面页面部署成功
在这里插入图片描述

3、准备驱动文件

在这里插入图片描述

4、编辑配置文件

在这里插入图片描述

input {
  jdbc {
    jdbc_driver_library => "/usr/share/logstash/mysql-connector-j-8.0.33.jar"
    jdbc_driver_class => "com.mysql.cj.jdbc.Driver"
    jdbc_connection_string => "jdbc:mysql://{你的MYSQL地址}/{你的数据库}"
    jdbc_user => "{数据库账号}"
    jdbc_password => "{数据库密码}"
    statement => "SELECT * FROM user"
    jdbc_paging_enabled => true		 # 开启分页
    jdbc_page_size => 2000			 # 分页每页条数
    schedule => "*/5 * * * * * UTC"  # 每5s执行一次
  }
}
output {
  elasticsearch {
      hosts  => ["{你的ES地址}"]         				# ElasticSearch 的地址和端口
      index  => "user"         							# 指定索引名,如果不存在es会自动创建
      document_id => "%{id}"
      codec  => "json"
  }
}

5、删除容器、重新启动

docker rm -f logstash
docker run -d --name logstash -p 5044:5044 -p 9600:9600 -v D:\logstash\data\:/usr/share/logstash/data  -v D:\logstash\path\to\mysql-connector-j-8.0.33.jar:/usr/share/logstash/mysql-connector-j-8.0.33.jar -v D:\logstash\config\:/usr/share/logstash/config -v D:\logstash\pipeline\:/usr/share/logstash/pipeline -e "ELASTICSEARCH_HOSTS={你的ES地址}" docker.elastic.co/logstash/logstash:7.15.0

6、查看日志

docker logs -f logstash

成功日志
在这里插入图片描述

在这里插入图片描述

相关推荐

  1. 使用docker实现logstash同步mysqles

    2024-04-13 21:14:02       68 阅读
  2. logstash同步mysql数据es(二、jdbc_driver_library问题)

    2024-04-13 21:14:02       52 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-04-13 21:14:02       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-04-13 21:14:02       100 阅读
  3. 在Django里面运行非项目文件

    2024-04-13 21:14:02       82 阅读
  4. Python语言-面向对象

    2024-04-13 21:14:02       91 阅读

热门阅读

  1. 数据仓库—主数据管理

    2024-04-13 21:14:02       38 阅读
  2. 关于mysql mac 输入mysql -uroot -p 不能访问的问题

    2024-04-13 21:14:02       39 阅读
  3. ip协议原理

    2024-04-13 21:14:02       39 阅读
  4. 代码随想录学习Day 27

    2024-04-13 21:14:02       35 阅读
  5. 再传IPO消息,SHEIN的上市为何充满变数?

    2024-04-13 21:14:02       40 阅读
  6. DFS算法在网络安全中的漏洞探测以及实例分析

    2024-04-13 21:14:02       33 阅读
  7. vim快捷指令

    2024-04-13 21:14:02       38 阅读
  8. 大语言模型LLM《提示词工程指南》学习笔记03

    2024-04-13 21:14:02       37 阅读
  9. 从 PostgreSQL 15 升级到 16

    2024-04-13 21:14:02       31 阅读