基于 Docker 搭建开发环境(二):EFK 日志套件

💡 原文中文,约9300字,阅读约需23分钟。
📝

内容提要

本文介绍如何使用 Docker 搭建 EFK 日志套件,将 NACOS 日志接入 Elasticsearch。由于 Elasticsearch 8+ 的安全策略限制,选择 7.x 版本进行演示。解决磁盘过载问题的方法包括调整磁盘使用阈值。Fluentd 用于传输日志,需要安装 fluent-plugin-elasticsearch 插件,并通过 root 用户权限解决安装问题。配置完成后,使用 Kibana 可视化日志数据。提供了完整的 docker-compose.yml 文件配置。

🎯

关键要点

  • 使用 Docker 搭建 EFK 日志套件,将 NACOS 日志接入 Elasticsearch。

  • 选择 Elasticsearch 7.x 版本进行演示,因 8+ 版本的安全策略限制。

  • 设置 Elasticsearch 超级管理员 elastic 的账户密码时,纯数字密码需用引号括起来。

  • 解决磁盘过载问题的方法包括调整磁盘使用阈值。

  • 使用 Fluentd 传输日志,需要安装 fluent-plugin-elasticsearch 插件。

  • 通过 root 用户权限解决插件安装问题。

  • 配置完成后,使用 Kibana 可视化日志数据。

  • 提供完整的 docker-compose.yml 文件配置。

延伸问答

如何使用 Docker 搭建 EFK 日志套件?

可以通过 Docker 搭建 EFK 日志套件,将 NACOS 日志接入 Elasticsearch,使用 Fluentd 进行日志传输,并通过 Kibana 可视化日志数据。

为什么选择 Elasticsearch 7.x 版本而不是 8+?

选择 Elasticsearch 7.x 版本是因为 8+ 版本的安全策略限制,导致 Kibana 无法使用超级管理员 elastic 连接 Elasticsearch。

如何解决 Elasticsearch 的磁盘过载问题?

可以通过调整磁盘使用阈值来解决磁盘过载问题,例如设置高水位线为 90%,低水位线为 85%。

Fluentd 如何传输 NACOS 日志到 Elasticsearch?

Fluentd 通过配置文件指定 NACOS 日志的来源和去向,使用 elasticsearch 插件将日志发送到 Elasticsearch。

在安装 Fluentd 插件时遇到权限问题,如何解决?

可以通过在 docker-compose.yml 中增加 user: root 配置,使用 root 用户来运行容器,从而解决权限问题。

如何使用 Kibana 可视化日志数据?

在 Kibana 中配置 Elasticsearch 的网址、账户和密码后,可以启动 Kibana 访问并可视化日志数据。

🏷️

标签

➡️

继续阅读