快速搭建ELK毫秒级响应数据库

关于 ELK 以及其优势

简单 GPT 一下

ELK 是 Elasticsearch、Logstash 和 Kibana 三个开源项目的首字母缩写,通常一起使用构成一个强大的日志管理和分析解决方案。下面将介绍它们各自的功能和 ELK 的优势:
– Elasticsearch:
是一个基于 Lucene 构建的高性能搜索引擎。
主要用于全文搜索和分析。
具有高伸缩性,可以水平扩展,并且能够快速处理大量数据。
– Logstash:
是一个强大的数据处理管道工具。
能够动态地收集、处理和转发日志和事件数据
支持多种输入、过滤、编解码和输出插件。
– Kibana:
是一个为 Elasticsearch 提供数据可视化的 Web 应用程序。
允许用户创建和分享图表、地图、表格等,以图形化展示 Elasticsearch 索引中的数据。
通常用于日志和时间序列分析、应用监控等。

ELK 相比于 MySQL 的优势主要在以下几点:
1. 文本搜索处理能力: Elasticsearch 提供全文搜索功能,对于复杂的文本查询和大数据集的文本处理有明显优势。
2. 数据处理及实时分析: Logstash 能够实时处理和分析数据,适用于日志管理和复杂事件处理,而 MySQL 更多用于结构化数据存储。
3. 数据可视化: Kibana 提供了丰富的数据可视化选择,能够以图表、地图等形式直接在 Web 界面上展示数据分析结果。
4. 扩展性与高可用性:集群 / 分你手机友好
5. 大数据兼容性:对日志和非结构化数据友好

省流:

  • 优点:全文检索、毫秒级响应
  • 缺点:约三倍原文大小的索引

安装

由于网上都是 Docker / 二进制文件分开部署,让我非常烦躁,怎么这么好的东西就不能一次搞完呢!
PS:这样不方便集群管理,不过本地跑还是很爽的🤣

ELK 不支持使用 latest 部署,我们需要自己指定版本
在测试中 8.x 版本无法正常部署,建议使用 7.x

version: '3'
services:
elasticsearch:
image: elasticsearch:7.17.19
environment:
- ES_JAVA_OPTS=-Xms512m -Xmx512m
- discovery.type=single-node
- cluster.name=es-docker-cluster
- http.host=0.0.0.0
volumes:
- ./es-data:/usr/share/elasticsearch/data
- ./es-plugins:/usr/share/elasticsearch/plugins
- ./es-logs:/usr/share/elasticsearch/logs
networks:
- elk-net
ports:
- "9200:9200"
- "9300:9300"
privileged: true
kibana:
image: kibana:7.17.19
environment:
- ELASTICSEARCH_HOSTS=http://elasticsearch:9200
- I18N_LOCALE=zh-CN
networks:
- elk-net
ports:
- "5601:5601"
depends_on:
- elasticsearch
logstash:
image: logstash:7.17.19
networks:
- elk-net
ports:
- "5044:5044"
- "9600:9600"
depends_on:
- elasticsearch
networks:
elk-net:
driver: bridge

如果配置正常的话会自动连接配置,等一会访问 http://127.0.0.1:5601 就行

部分情况无法连接可以参考

docker log 查看 kibana 的配置 code(实际上并不需要,自动配置失败的话,只要访问那个端口就行)

http://0.0.0.0:5601/?code=xxxxxx

替换 http://0.0.0.0:5601 为 http://127.0.0.1:5601 访问 Kibana 的管理界面
在这个界面可能需要输入 token,token 可以 docker log 查看 elasticsearch 控制台
如果不行的话可以尝试

docker exec <DOKCER_ID> bin/elasticsearch-create-enrollment-token --scope kibana
# 返回如下
WARNING: Owner of file [/usr/share/elasticsearch/config/users] used to be [root], but now is [elasticsearch]
WARNING: Owner of file [/usr/share/elasticsearch/config/users_roles] used to be [root], but now is [elasticsearch]
<一串JWT密钥>

然后等配置了

完成

左边三道杠 -> Management(管理) -> 堆栈监测


可以看到 ELK 都正常工作

索引管理

左边三道杠 -> Management(管理) -> Stack Management

解析数据

logstash

TODO: 等我 nas 配起来后去写这个,不然还没有地方存数据

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇