在 Debian 上部署 ELK 7.17 完整指南

作者:itmanll日期:2026/4/2

Elasticsearch 7.17 是 7.x 系列的最终维护版本,目前仍有大量生产环境集群运行此版本。本指南将详细介绍如何在 Debian 12/13 上完整部署 ELK 7.17 栈(Elasticsearch、Logstash、Kibana)。


环境要求

  • Debian 12(bookworm)或 Debian 13(trixie)
  • 至少 4GB 内存(默认堆内存占用约 2.4GB)
  • 开放端口:9200(Elasticsearch HTTP)、9300(Elasticsearch 传输)、5601(Kibana)、9600(Logstash)
  • 稳定的网络连接用于从 Elastic 仓库拉取包

添加 Elastic 7.x 仓库

导入 GPG 密钥并配置 APT 源:

1curl -fsSL https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo gpg --dearmor -o /usr/share/keyrings/elastic-7.x.gpg
2echo "deb [signed-by=/usr/share/keyrings/elastic-7.x.gpg] https://artifacts.elastic.co/packages/7.x/apt stable main" | sudo tee /etc/apt/sources.list.d/elastic-7.x.list
3sudo apt update
4

安装配置 Elasticsearch

安装核心组件并调整配置:

1sudo apt install -y elasticsearch
2

编辑主配置文件 /etc/elasticsearch/elasticsearch.yml

1cluster.name: elk-lab
2node.name: node-1
3network.host: 127.0.0.1
4discovery.type: single-node
5

调整 JVM 堆内存(建议设置为可用内存的 50%):

1sudo vi /etc/elasticsearch/jvm.options
2

修改以下参数:

1-Xms2g
2-Xmx2g
3

启动服务并验证状态:

1sudo systemctl enable --now elasticsearch
2curl -s http://127.0.0.1:9200/_cluster/health?pretty
3

安装配置 Kibana

安装并修改配置文件 /etc/kibana/kibana.yml

1server.port: 5601
2server.host: "0.0.0.0"
3elasticsearch.hosts: ["http://127.0.0.1:9200"]
4

启动服务并访问界面:

1sudo systemctl enable --now kibana
2

通过浏览器访问 http://服务器IP:5601


安装配置 Logstash

安装后创建示例配置文件 /etc/logstash/conf.d/sample.conf

1input {
2  beats {
3    port => 5044
4  }
5}
6output {
7  elasticsearch {
8    hosts => ["http://127.0.0.1:9200"]
9  }
10}
11

启动服务:

1sudo systemctl enable --now logstash
2


在 Debian 13 上安装 rsyslog

Debian 13 默认不包含 /var/log/syslog,需安装 rsyslog:

1sudo apt install -y rsyslog
2sudo systemctl enable --now rsyslog
3

安装后,rsyslog 会生成 /var/log/syslog 并开始记录日志。


创建 Syslog 管道

Logstash 管道配置文件位于 /etc/logstash/conf.d/,创建 syslog 管道:

1sudo vi /etc/logstash/conf.d/syslog.conf
2

添加以下配置:

1input {
2  file {
3    path => "/var/log/syslog"
4    start_position => "beginning"
5    sincedb_path => "/var/lib/logstash/sincedb_syslog"
6    type => "syslog"
7  }
8}
9
10filter {
11  grok {
12    match => { "message" => "%{SYSLOGTIMESTAMP:syslog_timestamp} %{SYSLOGHOST:syslog_hostname} %{DATA:syslog_program}(?:\[%{POSINT:syslog_pid}\])?: %{GREEDYDATA:syslog_message}" }
13  }
14  date {
15    match => [ "syslog_timestamp", "MMM  d HH:mm:ss", "MMM dd HH:mm:ss" ]
16  }
17}
18
19output {
20  elasticsearch {
21    hosts => ["http://127.0.0.1:9200"]
22    index => "syslog-%{+YYYY.MM.dd}"
23  }
24}
25

为 Logstash 用户添加读取 syslog 的权限:

1sudo usermod -aG adm logstash
2

启动并启用 Logstash:

1sudo systemctl enable --now logstash
2

检查 Logstash 日志确认管道启动:

1sudo journalctl -u logstash --no-pager -n 20
2

验证 Logstash 监控 API:

1curl -s http://127.0.0.1:9600?pretty
2

检查 Elasticsearch 是否接收数据:

1curl -s 'http://127.0.0.1:9200/_cat/indices?v'
2

在CentOS 7上安装ELK Stack

确认syslog索引数据已成功导入Elasticsearch,可通过以下命令检查索引状态:

1health status index                uuid                   pri rep docs.count docs.deleted store.size pri.store.size
2green  open   syslog-2026.03.29    QwErTyUiOpAsDfGhJkLm   1   0       1847            0      1.1mb          1.1mb
3

在Kibana中配置索引模式

通过API快速创建索引模式:

1curl -s -X POST "http://127.0.0.1:5601/api/saved_objects/index-pattern/syslog-*" \
2  -H "kbn-xsrf: true" \
3  -H "Content-Type: application/json" \
4  -d '{"attributes":{"title":"syslog-*","timeFieldName":"@timestamp"}}'
5

登录Kibana网页界面,左侧菜单选择"Discover",选择已创建的syslog-*索引模式。可查看已解析的字段如syslog_programsyslog_hostname等。

命令行操作Elasticsearch

查看所有索引:

1curl -s 'http://127.0.0.1:9200/_cat/indices?v&s=index'
2

搜索特定日志条目(如sshd):

1curl -s 'http://127.0.0.1:9200/syslog-*/_search?pretty' \
2  -H 'Content-Type: application/json' \
3  -d '{"query":{"match":{"syslog_program":"sshd"}},"size":3}'
4

统计索引文档总数:

1curl -s 'http://127.0.0.1:9200/syslog-*/_count?pretty'
2

日志源差异处理

对于不同Linux发行版:

  • Debian 12默认安装rsyslog,日志文件位于/var/log/syslog
  • Debian 13默认使用systemd-journald,需手动安装rsyslog或改用Filebeat采集journald日志

如需从journald直接采集日志,可参考Filebeat+Logstash的配置方案,其他组件(包名、配置文件路径等)在不同版本中保持相同。


安全加固建议

  1. 配置防火墙规则限制访问源IP
  2. 为 Elasticsearch 和 Kibana 启用基础认证
  3. 定期备份 /var/lib/elasticsearch 目录
  4. 监控系统日志 /var/log/elasticsearch/elk-lab.log

常见问题排查

该部署方案已通过 Debian 12/13 和 ELK 7.17.29 的完整测试验证。如需升级到 8.x 版本,建议参考 Elastic 官方迁移指南进行操作。


在 Debian 上部署 ELK 7.17 完整指南》 是转载文章,点击查看原文


相关推荐


【35天从0开始备战蓝桥杯 -- Day5】
小年糕是糕手2026/3/24

🫧个人主页:小年糕是糕手 💫个人专栏:《C++》《Linux》《数据结构》《C语言》 🎨你不能左右天气,但你可以改变心情;你不能改变过去,但你可以决定未来! 目录 一、输入输出 1.1、单组测试用例 1°计算 (a+b)/c 的值 2°与 7 无关的数 1.2、多组测试用例 情况一 1°多组输入a+b II 2°斐波那契数列 3°制糊串 情况二 1°多组输入a+b 2°数字三角形 3°定位查找 情况三 1°字符统计 拓展函数 2°多组数据


OpenClaw“小龙虾”深度解析:60天碾压Linux的AI智能体,从原理到搞定本地部署【Windows系统 + 接入飞书】
燃于AC之乐2026/3/16

👇点击进入作者专栏: 《算法画解》 ✅ 《linux系统编程》✅ 《C++》 ✅ OpenClaw“小龙虾”深度解析:60天碾压Linux的AI智能体,从原理到搞定本地部署【Windows系统 + 接入飞书】 引言:2026年最火爆的开源AI智能体一、OpenClaw是什么?——从“对话”到“动手”的质变1.1 核心定位:长了手脚的大模型1.2 核心能力:一键控制电脑 二、技术原理:AI如何真正“动手干活”?2.1 架构设计2.2 工作流程2.3 技术关键点:上下文窗口压


dt/dd表格解析、URL拼接缺失、ON DUPLICATE字段覆盖、CSS选择器定位——俄罗斯轮胎展爬虫四大技术难关攻克纪实
进击的雷神2026/3/8

一、引言 在俄罗斯展会网站采集中,莫斯科轮胎及橡胶展览会(Expocentr)的网站采用了典型的表格布局和dt/dd结构存储展商信息。本文以该展会参展商信息采集项目为例,深入剖析在开发过程中遇到的四大技术难题,以及我们如何通过创新的技术方案逐一攻克这些难关。 二、技术难点全景图 #mermaid-svg-T86ttY9To1T8fJpx{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill


三月,我只想做好这四件事
修己xj2026/2/28

今天是二月的最后一天,也是春节后上班第一周的收官之日。 在我们中国人的观念里,只有过完春节,新的一年才算真正开始。往年的这个时候,我总会兴致勃勃地立下一堆flag,制定满满当当的年度计划。虽然年终盘点时发现大部分都没实现,但来年依旧乐此不疲——仿佛只要把计划写得够漂亮,生活就会自动变好。 但今年不一样了。 家里添了一位新成员,我的身份悄然发生了改变。抱着怀里这个两个月大的小家伙,我突然不想再立那些宏大的flag,也不想做那些看似充实却往往落空的计划了。 一年很长,长到要数着日历过365个日夜;


C# WPF canvas中绘制缺陷分布map并实现缩放
zls3653652026/2/19

1、前台xaml 这里把canvas包裹在scrollviewer里面是为了避免滚轮缩放时canvas超出划定的区域,导致显示异常。 2. 后台代码: -. canvas load事件,主要用来获取控件的长度和宽度 -. canvas_mousewheel(object sender,MouseWheelEventArgs e)这个事件主要功能是为了实现通过鼠标进行canvas控件的缩放 -. 这里的逻辑主要为了实现缺陷分布图上的缺陷通过x进行标注 -.深度拷


AI 视觉连载3:RGB与通道
董章鱼是个攻城狮2026/2/11

在2、灰度与色彩的最后,给出了一个由彩色图片转成灰度图的示例,并且通过 color_image.mode获取了图片的格式:彩色图片获取到的格式为 RGBA,灰度图为 L。 这一节再介绍一下 RGB 图片以及通道的概念。 通道这个概念,在 深度学习 中很重要,并且极为重要。 举个例子—— 在很多时候,对AI神经网络中的一些算法做工程化实现,或者做性能优化,除了关注算法本身之外,还会关注数据存储格式。 一般在 pytorch 中(一个AI模型框架),数据的存储格式 NCHW, C指代的就是通道(ch


自组织特征映射(SOM)的数据聚类程序。 matlab程序 数据格式为excel
NBhhbYyOljP2026/2/2

自组织特征映射(SOM)的数据聚类程序。 matlab程序 数据格式为excel。 打开MATLAB准备搞点数据魔法?今天咱们整点有意思的——用自组织特征映射(SOM)给Excel数据自动分群。这玩意儿就像给数据画美食地图,让相似的样本自动抱团取暖。 先来点准备工作。把Excel数据塞进MATLAB最直接的方式就是readtable函数: data = readtable('你的数据.xlsx'); raw_data = table2array(data(:,2:end)); % 假设第


iOS 常用调试工具大全-打造你的调试武器库
sweet丶2026/1/24

还记得你第一次使用NSLog(@"Hello, World!")的时刻吗?那是调试的起点。但随着应用复杂度呈指数级增长,我们需要的工具也经历了革命性进化: 第一代:基础输出(NSLog、print) 第二代:图形化界面(Xcode调试器、Instruments) 第三代:运行时动态调试(FLEX、Lookin) 第四代:智能化监控(性能追踪、自动化检测) 今天,一个成熟的iOS开发者工具箱中,至少需要掌握3-5种核心调试工具,它们就像外科医生的手术刀——精准、高效、各有所长。 一、运行时调试


SpringCloud Gateway 集成 Sentinel 详解 及实现动态监听Nacos规则配置实时更新流控规则
普通网友2026/1/15

目录 一、前言二、版本选择和适配 2.1、本文使用各组件版本2.2、官方推荐版本 三、部署sentinel-dashboard 3.1、下载 sentinel-dashboard jar包3.2、启动 sentinel-dashboard 四、Gateway 集成 Sentinel实现控制台配置流控规则测试 4.1、添加Gateway 集成 Sentinel 包4.2、添加 Gateway 服务启动JVM参数 4.2.1、配置说明4.2.2、


一文讲清:主流大模型推理部署框架:vLLM、SGLang、TensorRT-LLM、ollama、XInference
智泊AI2026/1/7

本文系统性梳理当前主流的大模型推理部署框架,包括vLLM、SGLang、TensorRT-LLM、Ollama、XInference等。 随着大语言模型技术的迅猛演进,推理部署框架作为贯通模型能力与落地应用的核心枢纽,其战略价值正持续攀升。本文旨在对当前业界广泛采用的 vLLM、SGLang、TensorRT-LLM、Ollama 与 XInference 等主流推理框架展开系统性归纳,围绕核心技术路径、系统架构设计、关键性能指标及典型适用场景等多维度进行深度剖析,为大模型在生产环境中的选型决策

首页编辑器站点地图

本站内容在 CC BY-SA 4.0 协议下发布

Copyright © 2026 XYZ博客