1 docker安装ELK镜像
首先,elasticsearch、logstash、kibana三者的版本必须严格的一致,不然会不兼容。
REPOSITORY TAG IMAGE ID CREATED SIZE
mysql latest 30f937e841c8 7 days ago 541MB
logstash 7.7.0 30dcca1db5e9 2 weeks ago 740MB
kibana 7.7.0 eadc7b3d59dd 2 weeks ago 1.15GB
elasticsearch 7.7.0 7ec4f35ab452 2 weeks ago 757MB
2 启动elasticsearch容器
可以使用自定义网络
docker network create hahanetwork
docker run --name elasticsearch --net hahanetwork -p 9200:9200 -p 9300:9300 -p 5601:5601 -e "discovery.type=single-node" -d elasticsearch:7.7.0
3 配置kibana并启动容器
docker run -it -d -e ELASTICSEARCH_URL=http://127.0.0.1:9200 --name kibana --network=container:elasticsearch kibana:7.7.0
验证:
http://127.0.0.1:5601/app/kibana
4 配置logstash并启动容器
4.1 配置宿主机挂载目录
手动创建下面的文件夹和文件;
mysql中放入jdbc-driver;
4.2 挂载目录中的其他配置
参考
https://blog.csdn.net/qq_33547169/article/details/86629261
https://www.cnblogs.com/fuguang/p/11511834.html
4.3 启动logstash容器
docker run -d --restart=always --log-driver json-file --log-opt max-size=100m --log-opt max-file=2 -p 5044:5044 -p 9600:9600 --name logstash -v C:/usr/local/logstash/config/:/usr/share/logstash/config/ logstash:7.7.0
验证:
通过docker 日志验证
docker logs logstash
5 测试
5.1 使用的测试数据库
新建如下:
https://blog.csdn.net/leinminna/article/details/106409252
5.2 测试
测试中。。。