Elastic:运用 Docker 安装 Elastic Stack 并采集日志文件
2022年2月24日 | by mebius
尽管在之前的文章中,我好些文章讲述如何使用 Docker tgcode来安装 Elastic Stack。在今天的文章中,我想使用 Docker 来安装所有的需要用到的 Elastic Stack 元件:
- Filebeat
- Logstash
- Elasticsearch
- Kibana
我们使用的架构是:
为了方便大家学习,你可以在 github 下载仓库:
git clone https://github.com/liu-xiao-guo/elasticstack-lab
整个项目的文件如下:
$ pwd
/Users/liuxg/data/elasticstack-lab
$ ls -al
total 48
drwxr-xr-x 11 liuxg staff 352 Jan 18 16:53 .
drwxr-xr-x 149 liuxg staff 4768 Jan 18 16:44 ..
-rw-r--r--@ 1 liuxg staff 6148 Jan 18 16:44 .DS_Store
-rw-r--r-- 1 liuxg staff 29 Jan 18 16:39 .env
drwxr-xr-x 14 liuxg staff 448 Jan 18 17:11 .git
-rw-r--r-- 1 liuxg staff 1617 Jan 18 16:52 README.md
-rw-r--r-- 1 liuxg staff 1160 Jan 18 16:59 docker-compose.yml
drwxr-xr-x 3 liuxg staff 96 Jan 18 16:26 filebeat
-rw-r--r-- 1 liuxg staff 232 Jan 18 17:03 filebeat.Dockerfile
drwxr-xr-x 3 liuxg staff 96 Jan 18 17:26 logs
drwxr-xr-x 4 liuxg staff 128 Jan 18 16:45 logstash
$ tree -L 3
.
├── README.md
├── docker-compose.yml
├── filebeat
│ └── filebeat.yml
├── filebeat.Dockerfile
├── logs
│ └── sample.log
└── logstash
├── logstash.conf
└── logstash.yml
在上面:
- docker-compose.yml 是启动各个 Elastic Stack 容器的
- filebeat.yml 是 Filebeat 的配置文件
- filebeat.Dockerfile 是用来编译 Filebeat 的镜像的
- sample.log 是我们需要采集的日志文件
- logstash.conf 及 logstash.yml 是 Logstash 的配置文件
我们可以参考 README.md 文件来进行操作。在默认的情况下,我们使用最新的 7.16.2 版本来进行练习。如果你想使用其它的版本,请修改 .env 里的版本,同时需要修改在filebeat.Dockerfile 里的 Filebeat 的版本以保持一致。
在下载完整个仓库后,我们可以使用如下的命令来启动 Elastic Stack:
docker-compose up
当然前提是我们必须启动 Docker。
启动过后,我们可以看到如上所示的画面。
我们在浏览器中,打开地址http://localhost:5601/进入到 Kibana。我们在 DevTools 里打入如下的命令:
GET _cat/indices
我们可以看到一个叫做 sample-2022.01.18 的索引。而它里面文档的内容是:
GET sample-2022.01.18/_search
这个和我们之前的 sample.log 的内容进行比较:
通过这个tgcode练习,我们了解如何使用 Docker 来部署 Elastic Stack,并使用 Pipeline:Filebeat => Logstash => Elasticsearch。针对我们实际的使用,我们需要根据自己的情况修改 Logstash 及 Filebeat 的配置文件。
文章来源于互联网:Elastic:运用 Docker 安装 Elastic Stack 并采集日志文件
相关推荐: Elastic:运用 Elastic Maps 实时跟踪,可视化资产分布及地理围栏告警(一)
你对资产跟踪感兴趣吗? 好消息! 使用Elastic 地图应用可以轻松可视化和分析移动的数据。 你可以跟踪 IoT 设备的位置并监控运输途中的包裹或车辆。 在本教程中,你将查看来自俄勒冈州波特兰市的实时城市交通数据。 你将观看城市公交车,使用数据可视化拥堵情况…