SuperAPI AI 工具集

elk-stack

部署与运维

查看项目

更新于 10-27 02:32

技能介绍

用途

ELK Stack 技能用于部署和管理由 Elasticsearch、Logstash、Kibana 组成的日志聚合与分析平台,帮助集中并分析日志。资料给出的适用场景包括:集中来自多个来源的日志、构建日志搜索与分析平台、创建基于日志的仪表盘与告警、为日志实现全文检索、处理与转换日志数据。

主要能力

技能内容覆盖以下方面:

  • Docker 部署:提供 docker-compose.yml 示例,包含 elasticsearch、logstash、kibana、filebeat 四个服务,使用 8.11.0 镜像,Elasticsearch 以单节点模式运行并禁用安全功能,各端口绑定到 127.0.0.1。
  • Elasticsearch 配置:提供索引模板(PUT _index_template/logs-template)示例,定义 logs-* 索引模式、分片与副本设置、生命周期策略名称,以及 @timestamp、message、level、service、host、trace_id 等字段映射;提供索引生命周期管理(ILM)策略示例,包含 hot(rollover)、warm(shrink、forcemerge)、cold(freeze)、delete 四个阶段。
  • Logstash 管道:提供基础管道示例,输入使用 beats(5044)和 tcp(5000,json_lines 编解码),过滤器包含 JSON 解析、日期解析、添加环境标签、nginx 日志的 grok 解析;输出到 Elasticsearch,索引名为 logs-%{+YYYY.MM.dd}。另提供高级过滤示例,包括应用日志 grok 解析、从消息中提取 trace_id、GeoIP 查询、生产环境丢弃 DEBUG 日志、使用 translate 字典丰富状态码描述。
  • Filebeat 配置:提供 filebeat.yml 示例,采集容器日志(/var/lib/docker/containers//.log)并添加 Docker 元数据,采集 nginx 日志并打标签,输出到 logstash:5044,并配置日志文件轮转。
  • Elasticsearch 查询:提供基础查询(match_all、match、bool 组合查询)与聚合示例(按日志级别计数、按时间统计错误率)。
  • Kibana 设置:说明索引模式创建(logs-*,时间字段 @timestamp)、保存搜索示例、常见可视化类型(折线图、饼图、数据表、指标)以及仪表盘示例组成。
  • 告警:提供 Watcher(X-Pack)示例,每 5 分钟检查最近 5 分钟 ERROR 日志数量,超过阈值时通过 Slack webhook 通知。
  • 常见问题与最佳实践:列出磁盘占用高、搜索慢、日志解析失败、内存压力等问题及对应处理方向;最佳实践包括实施 ILM、使用索引模板、摄入时解析日志、限制存储字段、对时序数据使用数据流、监控集群健康、实施安全(X-Pack)、定期索引维护。

使用方式

资料以配置片段和命令示例的形式给出使用方式,包括 docker-compose.yml、Elasticsearch 索引模板与 ILM 策略的 PUT 请求、Logstash 管道配置文件、Filebeat 配置文件、Elasticsearch 查询请求、Kibana 界面操作步骤以及 Watcher 定义。示例中还包含 git status && git diff --stat、kubectl diff -f manifest.yaml 等命令。

适用场景

适用于需要集中多来源日志、构建日志搜索与分析平台、创建日志仪表盘与告警、实现日志全文检索、处理与转换日志数据的场景。

限制与安全边界

资料明确说明:指南会针对真实环境执行,应用任何内容前需确认目标、影响范围和回滚计划;未经明确批准不得部署到生产环境。示例 Compose 文件是本地一次性实验环境,禁用了 Elasticsearch 安全功能,绑定回环地址并不意味着适合共享网络。生产环境需要经验证的兼容补丁版本、组件间认证与 TLS、最小权限摄入和经审核的保留策略。只读挂载 docker.sock 仍会暴露守护进程 API 能力,应省略或使用受限代理。摄入前需脱敏密钥与个人数据,并限制仪表盘和导出日志的访问。Watcher/webhook 创建会发送周期性外部消息,需要相应的用户指令。ILM 片段依赖版本,需要正确引导 rollover 别名或数据流;按日期命名的 Logstash 索引不会自动满足该约定。此外,该技能为仅文档导入,上游脚本和模板未随附打包。

相关技能

资料列出相关技能:loki-logging(替代日志栈)、prometheus-grafana(指标监控)、audit-logging(合规日志)。