当前位置: 首页 > news >正文

Linux下如何安装配置Elastic Stack日志收集系统

安装和配置Elastic Stack日志收集系统,包括Elasticsearch、Logstash和Kibana,是一个相对复杂的过程。本篇文章将逐步引导您完成整个过程。

  1. 安装Java

Elasticsearch、Logstash和Kibana都需要Java运行环境。首先,您需要在Linux系统上安装Java。可以使用如下命令来安装OpenJDK 8:

sudo apt update
sudo apt install openjdk-8-jdk

安装完成后,可以通过运行以下命令来验证Java是否正确安装:

java -version
  1. 安装Elasticsearch

Elasticsearch是Elastic Stack的核心组件,用于存储和索引日志数据。您可以通过以下步骤在Linux系统上安装Elasticsearch:

2.1 下载Elasticsearch

在Elasticsearch官方网站上下载最新的稳定版本的Elasticsearch。您可以使用以下命令下载并安装Elasticsearch 7.4.2版本:

wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.4.2-linux-x86_64.tar.gz
tar -xzf elasticsearch-7.4.2-linux-x86_64.tar.gz

2.2 启动Elasticsearch

解压后,进入Elasticsearch目录,并执行以下命令启动Elasticsearch:

cd elasticsearch-7.4.2
./bin/elasticsearch

Elasticsearch会在后台启动。您可以通过运行以下命令来验证它是否正在运行:

curl -XGET 'http://localhost:9200'

如果成功运行,您将看到Elasticsearch的版本信息。

2.3 设置Elasticsearch自动启动

为了方便管理,我们可以将Elasticsearch配置为随系统启动而自动启动。将以下内容添加到/etc/rc.local文件中:

/opt/elasticsearch-7.4.2/bin/elasticsearch -d
  1. 安装Logstash

Logstash是Elastic Stack的另一个重要组件,用于收集、过滤和转换日志数据。以下是在Linux系统上安装Logstash的步骤:

3.1 下载Logstash

访问Logstash官方网站,下载最新版本的Logstash。您可以使用以下命令下载并安装Logstash 7.4.2版本:

wget https://artifacts.elastic.co/downloads/logstash/logstash-7.4.2.tar.gz
tar -xzf logstash-7.4.2.tar.gz

3.2 创建Logstash配置文件

在Logstash目录下创建一个名为logstash.conf的配置文件。此文件将定义Logstash的输入、过滤器和输出配置。

cd logstash-7.4.2
vi logstash.conf

在该文件中,您需要指定输入源、过滤器和输出源。以下是一个示例配置文件:

input {file {path => "/var/log/nginx/access.log"start_position => "beginning"}
}filter {grok {match => { "message" => "%{COMBINEDAPACHELOG}" }}
}output {elasticsearch {hosts => ["localhost:9200"]index => "nginx_logs"}stdout { codec => rubydebug }
}

上述配置将从/var/log/nginx/access.log文件中读取日志数据,使用grok过滤器解析日志格式,并将数据存储到Elasticsearch中的nginx_logs索引中。

3.3 启动Logstash

通过运行以下命令,您可以启动Logstash并应用配置文件:

./bin/logstash -f logstash.conf

Logstash将在后台运行,并开始收集和处理日志数据。您可以根据需要自定义Logstash的配置文件。

  1. 安装Kibana

Kibana是Elastic Stack的可视化工具,用于分析和展示日志数据。以下是在Linux系统上安装Kibana的步骤:

4.1 下载Kibana

访问Kibana官方网站,下载最新版本的Kibana。您可以使用以下命令下载并安装Kibana 7.4.2版本:

wget https://artifacts.elastic.co/downloads/kibana/kibana-7.4.2-linux-x86_64.tar.gz
tar -xzf kibana-7.4.2-linux-x86_64.tar.gz

4.2 启动Kibana

进入Kibana目录,并执行以下命令启动Kibana:

cd kibana-7.4.2-linux-x86_64
./bin/kibana

Kibana将在后台启动。您可以通过运行以下命令来验证它是否正在运行:

curl -XGET 'http://localhost:5601'

如果成功运行,您将看到Kibana的版本信息。

4.3 设置Kibana自动启动

为了方便管理,我们可以将Kibana配置为随系统启动而自动启动。将以下内容添加到/etc/rc.local文件中:

/opt/kibana-7.4.2-linux-x86_64/bin/kibana -d
  1. 使用Kibana分析日志数据

当Elasticsearch、Logstash和Kibana都正确安装和配置后,您可以使用Kibana来分析和可视化日志数据。

5.1 访问Kibana控制台

在浏览器中访问http://localhost:5601,您将看到Kibana的控制台界面。

5.2 创建索引模式

在控制台界面的左侧导航栏中,选择"Management",然后选择"Index Patterns"。点击"Create index pattern"按钮来创建一个新的索引模式。

在"Index pattern"字段中输入索引的名称(例如,nginx_logs),然后点击"Next step"按钮。

在"Time filter field name"字段中选择时间字段,然后点击"Create index pattern"按钮。

5.3 探索和可视化数据

在控制台界面的左侧导航栏中,选择"Discover"或"Visualize",您可以使用Kibana的各种工具和功能来分析和可视化日志数据。

以上就是在Linux系统上安装和配置Elastic Stack日志收集系统的步骤。通过Elasticsearch、Logstash和Kibana的组合,您可以有效地收集、处理和分析大量的日志数据。

相关文章:

Linux下如何安装配置Elastic Stack日志收集系统

安装和配置Elastic Stack日志收集系统,包括Elasticsearch、Logstash和Kibana,是一个相对复杂的过程。本篇文章将逐步引导您完成整个过程。 安装Java Elasticsearch、Logstash和Kibana都需要Java运行环境。首先,您需要在Linux系统上安装Java…...

【深入C++】map和set的使用

文章目录 C 中的容器分类1. 顺序容器2. 关联容器3. 无序容器4. 容器适配器5. 字符串容器6. 特殊容器 set1.构造函数2.迭代器3.容量相关的成员函数4.修改器类的成员函数5.容器相关操作的成员函数 multiset1.equal_range map1.初始化相关的函数2.迭代器3.容量相关的成员函数4.访问…...

跟代码执行流程,读Megatron源码(二)训练入口pretrain_gpt.py

Megatron-LM默认支持GPT、T5、BERT等多个常见模型的预训练,当下大模型流行,故以pretrain_gpt.py为例做源码的走读。 一. 启动pretrain_gpt.py pretrain_gpt.py为GPT类模型的训练入口,它通过命令行形式被调用,其精确执行路径位于M…...

MATLAB练习题——矩阵(2)

逻辑运算 a [5 0.2 0 -8 -0.7 ],在进行逻辑运算时,a 相当于什么样的逻辑量。 相当于 a[1 1 0 1 1] 角度运算 在 sin(x)运算中,x 是角度还是弧度? 在 sin(x)运算中,x 是弧度,MATLAB 规定所有…...

arm、AArch64、x86、amd64、x86_64 的区别

arm vs AArch64 vs amd64 vs x86_64 vs x86 的区别 当涉及到 CPU 的时候,有许多术语:AArch64、x86_64、amd64、arm 等等。了解它们是什么以及它们之间的区别。 当你查看数据表或软件下载页面时是否被 ARM、AArch64、x86_64、i386 等术语混淆?…...

【SpringBoot】 jasypt配置文件密码加解密

目前我们对yml配置文件中的密码都是明文显示,显然这不安全,有的程序员离职了以后可能会做一些非法骚操作,所以我们最好要做一个加密,只能让领导架构师或者技术经理知道这个密码。所以这节课就需要来实现一下。 我们可以使用jasypt…...

复杂网络的任意子节点的网络最短距离

复杂网络的任意子节点的网络最短距离 题目要求介绍 本文算法测试用的数据集为空手道俱乐部,其中空手道俱乐部的数据集可通过这个链接进行下载•http://vlado.fmf.uni-lj.si/pub/networks/data/Ucinet/UciData.htm#zachary 摘要 本文旨在解决复杂网络中任意子节点…...

(Qt) 文件读写基础

文章目录 🗂️前言📄ref📄访问标记🗃️enum 标记 🗂️Code📄demo📄分点讲解🗃️继承体系🗃️打开/关闭🗃️写🗃️读 🗂️END&#x1f…...

全产业布局对穿戴甲品牌连锁店的意义

对于美甲行业来说,穿戴甲虽然不是什么新生事物,但也就是近两年才流行开来。面对井喷的市场需求,相应的从业者,不管是品牌连锁店,还是做批发、外贸,美甲周边、亦或是OEM的,大家都忙得不亦乐乎&am…...

git的一些使用技巧(git fetch 和 git pull的区别,git merge 和 git rebase的区别)

最近闲来无聊,虽然会使用git操作,但是 git fetch 和 git pull 的区别,git merge 和 git rebase的区别只是一知半解,稍微研究一下; git fetch 和 git pull 的区别 git fetch git fetch 是将远程仓库中的改动拉到本地…...

展厅中控系统有哪些优势呢

格芬科技的展厅中控系统具有多方面的优势,主要体现在以下几个方面: 一、高度集成与灵活控制 全终端网络可编程:格芬科技的展厅中控系统采用全终端网络可编程技术,能够实现对展厅内各种设备的集中控制和管理,包括电脑…...

FPGA开发在verilog中关于阻塞和非阻塞赋值的区别

一、概念 阻塞赋值:阻塞赋值的赋值号用“”表示,对应的是串行执行。 对应的电路结构往往与触发沿没有关系,只与输入电平的变化有关系。阻塞赋值的操作可以认为是只有一个步骤的操作,即计算赋值号右边的语句并更新赋值号左边的语句…...

动态特征转换的艺术:在Mojo模型中实现自定义变换的策略

动态特征转换的艺术:在Mojo模型中实现自定义变换的策略 在机器学习中,特征转换是数据预处理的关键步骤,它直接影响模型的性能和结果的准确性。Mojo模型,作为一种高效的模型部署形式,允许在不同环境中运行模型并进行预…...

如何让Python爬虫在遇到异常时继续运行

概述 在数据收集和数据挖掘中,爬虫技术是一项关键技能。然而,爬虫在运行过程中不可避免地会遇到各种异常情况,如网络超时、目标网站变化、数据格式不一致等。如果不加以处理,这些异常可能会导致爬虫程序中断,影响数据…...

手把手带你搭建Snort入侵检测系统

在当今数字化社会,网络安全问题日益突出。为了有效防范网络攻击,部署入侵检测系统(IDS)是必要的防护措施。Snort作为一款功能强大的开源IDS工具,被广泛应用于各种网络环境中。本文将手把手教您如何从零开始实现Snort入…...

小程序内嵌uniapp页面跳转回小程序指定页面方式

使用微信小程序提供的Api:wx.miniProgram.navigateTo 在小程序中嵌套uniapp的H5页面,并使用wx.miniProgram.navigateTo进行页面跳转,需要确保满足以下条件: 你的小程序必须是通过uniapp构建的,并且支持小程序嵌套。 你…...

基于 Three.js 的 3D 模型加载优化

作者:来自 vivo 互联网前端团队- Su Ning 作为一个3D的项目,从用户打开页面到最终模型的渲染需要经过多个流程,加载的时间也会比普通的H5项目要更长一些,从而造成大量的用户流失。为了提升首屏加载的转化率,需要尽可能…...

Jlink下载与适配keil ccs theia教程 用jlink代替ti自己的下载仿真器

用jlink代替ti自己的下载仿真器,然后你去买立创的m0g3507才19.9包赚160 安装 J-Link 软件包 J-Link 软件包 v7.88i 或更高版本支持 MSPM0。 从 Segger 网站下载安装程序 按照安装程序说明操作 安装程序将自动请求更新 IAR 或 Keil(如果已安装&#x…...

C# 进制之间的转换(二进制,八进制,十进制,十六进制)

常用的方法是:Convert.ToString(byte value, int toBase), 并且有多个重载方法, value的类型可以为short,int 等,但必须是整数且不能为负数, 一般默认为十进制 toBase: 返回值的基数,必须是 2、…...

Linux 基础开发工具 : Vim编辑器

Vim 是 Linux 和其他类 Unix 系统上广泛使用的文本编辑器之一。它基于更早的 vi 编辑器,但添加了许多增强功能和扩展。Vim 是“Vi IMproved”的缩写,意为“改进的 Vi”,我们常使用Vim编辑器编写c/c代码。 ps:该篇介绍均为最基础介…...

Appium+python自动化(十六)- ADB命令

简介 Android 调试桥(adb)是多种用途的工具,该工具可以帮助你你管理设备或模拟器 的状态。 adb ( Android Debug Bridge)是一个通用命令行工具,其允许您与模拟器实例或连接的 Android 设备进行通信。它可为各种设备操作提供便利,如安装和调试…...

【Java学习笔记】Arrays类

Arrays 类 1. 导入包:import java.util.Arrays 2. 常用方法一览表 方法描述Arrays.toString()返回数组的字符串形式Arrays.sort()排序(自然排序和定制排序)Arrays.binarySearch()通过二分搜索法进行查找(前提:数组是…...

关于iview组件中使用 table , 绑定序号分页后序号从1开始的解决方案

问题描述:iview使用table 中type: "index",分页之后 ,索引还是从1开始,试过绑定后台返回数据的id, 这种方法可行,就是后台返回数据的每个页面id都不完全是按照从1开始的升序,因此百度了下,找到了…...

大语言模型如何处理长文本?常用文本分割技术详解

为什么需要文本分割? 引言:为什么需要文本分割?一、基础文本分割方法1. 按段落分割(Paragraph Splitting)2. 按句子分割(Sentence Splitting)二、高级文本分割策略3. 重叠分割(Sliding Window)4. 递归分割(Recursive Splitting)三、生产级工具推荐5. 使用LangChain的…...

EtherNet/IP转DeviceNet协议网关详解

一,设备主要功能 疆鸿智能JH-DVN-EIP本产品是自主研发的一款EtherNet/IP从站功能的通讯网关。该产品主要功能是连接DeviceNet总线和EtherNet/IP网络,本网关连接到EtherNet/IP总线中做为从站使用,连接到DeviceNet总线中做为从站使用。 在自动…...

大数据学习(132)-HIve数据分析

​​​​🍋🍋大数据学习🍋🍋 🔥系列专栏: 👑哲学语录: 用力所能及,改变世界。 💖如果觉得博主的文章还不错的话,请点赞👍收藏⭐️留言&#x1f4…...

HDFS分布式存储 zookeeper

hadoop介绍 狭义上hadoop是指apache的一款开源软件 用java语言实现开源框架,允许使用简单的变成模型跨计算机对大型集群进行分布式处理(1.海量的数据存储 2.海量数据的计算)Hadoop核心组件 hdfs(分布式文件存储系统)&a…...

音视频——I2S 协议详解

I2S 协议详解 I2S (Inter-IC Sound) 协议是一种串行总线协议,专门用于在数字音频设备之间传输数字音频数据。它由飞利浦(Philips)公司开发,以其简单、高效和广泛的兼容性而闻名。 1. 信号线 I2S 协议通常使用三根或四根信号线&a…...

安全突围:重塑内生安全体系:齐向东在2025年BCS大会的演讲

文章目录 前言第一部分:体系力量是突围之钥第一重困境是体系思想落地不畅。第二重困境是大小体系融合瓶颈。第三重困境是“小体系”运营梗阻。 第二部分:体系矛盾是突围之障一是数据孤岛的障碍。二是投入不足的障碍。三是新旧兼容难的障碍。 第三部分&am…...

python爬虫——气象数据爬取

一、导入库与全局配置 python 运行 import json import datetime import time import requests from sqlalchemy import create_engine import csv import pandas as pd作用: 引入数据解析、网络请求、时间处理、数据库操作等所需库。requests:发送 …...