新闻动态

使用docker compose搭建一个elk系统的方法

发布日期:2022-03-30 11:28 | 文章来源:gibhub

找了不少使用 docker-elk 搭建的博客, 英文的阅读吃力不说, 镜像源也是慢的让人头皮发麻, 因此重新编排了一个docker-compose,源都是从 https://hub.docker.com/ 上找的, 即使拉的国内镜像源应该也能很好的支持了吧?

环境

  • Docker 18.06.0-ce
  • docker-compose 1.22.0

给每个容器最少分配 1G 的内存

软件版本

  • logstash: 5.*
  • elasticsearch: 5.*
  • kibana: 5.*

启动前的配置

在各个目录下都有对应的 config 配置, 根据各自的情况自行处理

拿默认的 logstash/confg/test.conf 中的配置举例:

input {
   file {
     #这里的路径指的是 logstash 容器中的路径, 外部接入需要使用 volume 进行目录映射 
      path => "/logs/input/*"
   }
    # 在 logstash 容器中的输入
   stdin {}
   
   # 因为做了本地5000端口和容器5000端口进行绑定, 所以可以用 nc 工具测试一下
   # echo "Test Logstash TCP Input Plugin" | nc localhost 5000
   tcp {
      type => "tcp"
      port => 5000
      mode => "server"
   }
}
output {
   file {
     #这里的路径指的是 logstash 容器中的路径, 外部接入需要使用 volume 进行目录映射
      path => "/logs/output/%{+yyyy-MM-dd-HH}/%{host}.log"
   }
   stdout {
      codec => rubydebug
   }
   elasticsearch {
    hosts => "elasticsearch:9200"
    # 这里设置的 index 在 kibana 中会用到
      index => "file-log-%{+YYYY.MM}" 
  }
}

启动容器

执行

git clone https://github.com/gaopengfei123123/docker-elk.git && cd docker-elk
docker-compose up -d --build

等一会看到执行成功的提示

Creating docker-elk_elasticsearch_1 ... done
Creating docker-elk_logstash_1   ... done
Creating docker-elk_kibana_1    ... done

在本地浏览器输入 http://localhost:5601/ 进入 kibana 界面

注意, 第一次启动时有可能会出现提示 elasticsearch not found 这类的问题, 可以先等个一两分钟刷新一下就好了, 如果还是不行就谷歌或者提 issue 解决一下

同目录下输入

docker-compose stop

则停止所有服务

测试一下

logs/input/ 目录下新增个 test.log 文件, 然后输入点东西验证一下, 或者命令行执行echo "Test Logstash TCP Input Plugin" | nc localhost 5000 通过 tcp 发送日志

docker-compose logs -f

查看各容器日志输出

TODO

  1. 引入 kafka 做缓冲
  2. 搭建 es 集群

github 地址

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持本站。

版权声明:本站文章来源标注为YINGSOO的内容版权均为本站所有,欢迎引用、转载,请保持原文完整并注明来源及原文链接。禁止复制或仿造本网站,禁止在非www.yingsoo.com所属的服务器上建立镜像,否则将依法追究法律责任。本站部分内容来源于网友推荐、互联网收集整理而来,仅供学习参考,不代表本站立场,如有内容涉嫌侵权,请联系alex-e#qq.com处理。

相关文章

实时开通

自选配置、实时开通

免备案

全球线路精选!

全天候客户服务

7x24全年不间断在线

专属顾问服务

1对1客户咨询顾问

在线
客服

在线客服:7*24小时在线

客服
热线

400-630-3752
7*24小时客服服务热线

关注
微信

关注官方微信
顶部