🐇明明跟你说过:个人主页

🏅个人专栏:《洞察之眼:ELK监控与可视化》🏅

🔖行路有良友,便是天堂🔖

目录

一、前言 

1、什么是ELK

2、什么是Logstash 

二、YUM方式安装 

1、环境准备

2、开始安装 

三、二进制启动 

1、环境准备

2、启动

四、Docker启动

1、环境准备

2、使用Docker启动Logstash实例


一、前言 

1、什么是ELK

ELK 是一个由三种开源软件工具组成的堆栈,用于搜索、分析和可视化数据。这些工具包括:

  1. Elasticsearch:一个分布式搜索和分析引擎。它能够处理大规模的数据,并提供快速的搜索和数据分析功能。Elasticsearch 基于Apache Lucene构建,可以用于全文搜索、结构化搜索和分析等任务。
  2. Logstash:一个数据处理管道工具。它可以从多种来源(如日志文件、数据库、消息队列等)收集数据,进行过滤和转换,然后将数据传输到目标位置(如Elasticsearch)。Logstash 支持丰富的插件系统,能够适应各种数据处理需求。
  3. Kibana:一个数据可视化和探索工具。Kibana 与 Elasticsearch 紧密集成,允许用户通过图形界面创建交互式的可视化仪表盘,进行数据分析和监控。

这些工具一起组成了 ELK 堆栈(现在通常也称为 Elastic Stack,因为还可以包括 Beats 数据采集器),广泛用于日志管理、实时数据分析、应用性能监控和安全信息事件管理等场景。

主要用途

  1. 日志管理和分析:ELK 堆栈常用于集中管理和分析系统日志和应用日志,帮助运维人员快速查找和解决问题。
  2. 安全信息和事件管理(SIEM):通过收集和分析安全事件日志,ELK 可以帮助识别和响应安全威胁。
  3. 业务分析:公司可以使用 ELK 堆栈来分析业务数据,获取运营洞察,支持决策制定。
  4. 实时监控和告警:结合实时数据流处理能力,ELK 可以用于监控系统健康状态,并在出现异常时发出告警。

优势

  1. 开源和可扩展:所有工具都是开源的,并且能够根据需要进行扩展和定制。
  2. 强大的搜索和分析能力:Elasticsearch 提供了快速和高效的搜索和分析功能,能够处理大规模数据。
  3. 丰富的插件支持:Logstash 和 Beats 支持多种插件,能够处理不同类型的数据源和数据格式。
  4. 直观的可视化工具:Kibana 提供了丰富的可视化选项,用户可以方便地创建和共享数据仪表盘。

ELK 堆栈因其强大功能和灵活性,已经成为许多企业进行数据分析和监控的首选解决方案。

  

2、什么是Logstash 

Logstash 是一个开源的数据处理管道工具,它能够从多种来源收集数据,进行过滤和转换,并将数据传输到目标位置,如 Elasticsearch。它是 ELK 堆栈的一部分,通常与 Elasticsearch 和 Kibana 一起使用,用于日志管理和数据分析。

以下是 Logstash 的一些关键特性和功能:

主要特性


1. 多种输入来源:

  • Logstash 支持从多种数据来源收集数据,包括文件、数据库、消息队列(如 Kafka)、网络协议(如 HTTP、TCP/UDP)等。它有大量的输入插件,可以适应各种数据源。


2. 灵活的数据处理:

  • Logstash 提供了强大的过滤器功能,允许用户对数据进行复杂的处理和转换。可以使用过滤器插件进行解析、清理、丰富和转换数据。例如,Grok 过滤器可以解析和提取日志中的特定字段,Date 过滤器可以标准化时间戳。


3. 多种输出目标:

  • Logstash 可以将处理后的数据发送到多个输出目标,包括 Elasticsearch、文件、数据库、消息队列等。输出插件使得数据可以方便地存储和进一步处理。


4. 实时处理:

  • Logstash 能够实时处理和传输数据,这对于需要快速响应和分析的应用场景非常有用。


5. 可扩展和可定制:

  • Logstash 支持自定义插件,用户可以根据特定需求开发自己的输入、过滤和输出插件。其插件系统使 Logstash 能够灵活适应不同的数据处理需求。


使用场景


1. 日志收集和集中管理:

  • Logstash 可以从分布式系统中的多个日志源收集日志数据,进行标准化和聚合,然后发送到 Elasticsearch 进行集中管理和搜索分析。


2. 数据清洗和预处理:

  • 在将数据存储到数据仓库或进行进一步分析之前,Logstash 可以用于数据清洗、格式转换和预处理。


3. 实时数据流处理:

  • Logstash 可以处理实时数据流,从各种实时数据源收集数据并进行实时分析和处理,适用于监控和告警系统。

4. 安全事件处理:

  • 通过收集和处理安全事件日志,Logstash 可以作为安全信息和事件管理(SIEM)系统的一部分,帮助识别和响应安全威胁。

   

二、YUM方式安装 

1、环境准备

  • 准备一台Linux服务器,这里以Centos为例
  • 关闭防火墙、关闭SELinux

2、开始安装 

GPG 密钥导入

rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch

添加镜像源

[root@bogon ~]# vim /etc/yum.repos.d/logstash.repo
# 添加以下内容
[logstash-8.x]
name=Elastic repository for 8.x packages
baseurl=https://artifacts.elastic.co/packages/8.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=1
autorefresh=1
type=rpm-md

安装Logstash

[root@bogon ~]# yum install logstash -y

 

查看版本

[root@bogon ~]# rpm -qa | grep logstash
logstash-8.13.4-1.x86_64

三、二进制启动 

1、环境准备

  • 准备一台Linux服务器,这里以Centos为例
  • 关闭防火墙、关闭SELinux
  • 安装wget下载工具

2、启动

下载二进制包 

[root@localhost ~]# wget https://artifacts.elastic.co/downloads/logstash/logstash-8.13.4-linux-x86_64.tar.gz

 解压

[root@localhost ~]# tar zxvf logstash-8.13.4-linux-x86_64.tar.gz -C /opt/

进入到bin目录

[root@localhost ~]# cd /opt/logstash-8.13.4/bin/

启动

[root@localhost bin]# ./logstash

这里只是举了一个启动实例,在正常启动时,需要添加 -f config.conf参数,不然会报错的

四、Docker启动

1、环境准备

2、使用Docker启动Logstash实例

拉取镜像 

[root@bogon ~]# docker pull docker.elastic.co/logstash/logstash:8.13.4

启动Logstash实例

[root@bogon ~]# docker run --name logstash -itd docker.elastic.co/logstash/logstash:8.13.4

查看状态

[root@bogon ~]# docker ps | grep logstash

💕💕💕每一次的分享都是一次成长的旅程,感谢您的陪伴和关注。希望这些关于ELK的文章能陪伴您走过技术的一段旅程,共同见证成长和进步!😺😺😺

🧨🧨🧨让我们一起在技术的海洋中探索前行,共同书写美好的未来!!!  

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐