ELK日志分析,涉及logstash、elasticsearch、kibana等多方面应用,必看!

目录

ELK日志分析

1、下载lrzsc

2、下载源包

3、解压文件,下载elasticsearch、kibana、 logstash

4、配置elasticsearch

5、配种域名解析

6、配置kibana

7、配置logstash

8、进行测试


ELK日志分析

1、下载lrzsc

[root@localhost ~]# hostnamectl set-hostname elk  ##更改主机名
[root@localhost ~]# bash
[root@elk ~]# history yum isntall -y lrzsc

2、下载源包

https://www.elastic.co/downloads/past-releases/   ##下载网址

压缩成elfk.tar.gz压缩包,并加载到主机上

3、解压文件,下载elasticsearch、kibana、 logstash

[root@elk ~]# tar xf elfk.tar.gz
[root@elk ~]# cd /rpm
[root@elk ~]# ls
elasticsearch-7.1.1-x86_64.rpm  filebeat-7.1.1-x86_64.rpm  kibana-7.1.1-x86_64.rpm  logstash-7.1.1.rpm
[root@elk ~]# yum localinstall elasticsearch-7.1.1-x86_64.rpm
[root@elk ~]# yum localinstall kibana-7.1.1-x86_64.rpm
[root@elk ~]# yum localinstall logstash-7.1.1.rpm

4、配置elasticsearch

[root@elk ~]# vim /etc/elasticsearch/elasticsearch.yml   ##配置elasticsearch

找到Cluster定义

Elasticsearch 集群名称

node.name:elk 节点名称

找到 Memory

network:192.168.11.160 主机IP

http.port: 9200 HTTP端口

找到 Discovery

cluster.initial_master_nodes 集群初始主节点

[root@elk ~]# systemctl start elasticsearch.service    ##启动程序
[root@elk kibana]# netstat -anptu | grep java          ##查看程序
tcp6       0      0 192.168.11.160:9200     :::*                    LISTEN      48445/java          
tcp6       0      0 192.168.11.160:9300     :::*                    LISTEN      48445/java          
tcp6       0      0 192.168.11.160:9200     192.168.11.160:58732    ESTABLISHED 48445/java          
tcp6       0      0 192.168.11.160:9200     192.168.11.160:58738    ESTABLISHED 48445/java        

5、配种域名解析

[root@elk ~]# vim /etc/hosts  ##配置域名解析
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.11.160 elk

6、配置kibana

[root@elk ~]# vim /etc/kibana/kibana.yml   ##配置kibana

server.port:5601 打开服务器端口5601

server.host:192.168.11.160 服务器主机 (也可以为elk ,因为hosts已经配置)

sercer.name: elk 服务器名

elasticsearch.hosts: ["http://192.168.11.160:9200"] elasticsearch主机

kibana.index: ".kibana" kibana索引

i18n.locale: "zh-CN" 中文表达

[root@elk ~]# systemctl start kibana         ##启动kibana
[root@elk ~]# netstat -anptu | grep 5601     ##查看kibana
tcp        0      0 192.168.11.160:5601     0.0.0.0:*               LISTEN      57307/node  

7、配置logstash

[root@elk ~]# cat /etc/logstash/logstash.yml           ##查看logstash配置但不进行配置
[root@elk ~]# vim /etc/logstash/conf.d/pipline.conf    ##创建pipline.conf配置文件进行如下配置
input {                                                ## 使用 file 插件从文件中读取数据file {                                            ##指定要读取的日志文件路径path => "/var/log/messages"                     ##设定首次运行时的起始读取位置start_position => "beginning"                   ##设定首次运行时的起始读取位置##"beginning" - 从头读取文件所有内容}}
output {                                               ##输出部分:定义数据的去向elasticsearch {                                   ##使用 elasticsearch 插件将数据发送到                                                           Elasticsearchhosts => ["http://192.168.11.160:9200"]          ##指定 Elasticsearch 集群的节点地址##支持多个节点地址,实现高可用index => "system-log-%{+YYYY.MM.dd}"             ##定义索引名称模板,自动按日期创建索引}
stdout {                                               ##同时输出到标准输出(控制台)codec => rubydebug                                ##指定输出格式为 rubydebug##rubydebug 格式会将数据以易读的 JSON                                                           格式打印}}
​
~                       

8、进行测试

对logstash测试

[root@elk ~]# logstash -e 'input{ stdin{} }output { stdout{} }'
[INFO ] 2025-07-16 21:21:29.007 [Api Webserver] agent - Successfully started Logstash API endpoint {:port=>9600}
1
/usr/share/logstash/vendor/bundle/jruby/2.5.0/gems/awesome_print-1.7.0/lib/awesome_print/formatters/base_formatter.rb:31: warning: constant ::Fixnum is deprecated
{"message" => "1","@version" => "1","host" => "elk","@timestamp" => 2025-07-16T13:21:33.148Z[root@elk conf.d]# logstash -e 'input{ stdin{} }output { stdout{ codec=>rubydebug }}'
[INFO ] 2025-07-16 21:23:52.835 [Api Webserver] agent - Successfully started Logstash API endpoint {:port=>9600}
1
/usr/share/logstash/vendor/bundle/jruby/2.5.0/gems/awesome_print-1.7.0/lib/awesome_print/formatters/base_formatter.rb:31: warning: constant ::Fixnum is deprecated
{"@timestamp" => 2025-07-16T13:23:54.454Z,"@version" => "1","host" => "elk","message" => "1"
}
​
[root@elk conf.d]# logstash -e 'input{ stdin{} }output { elasticsearch{ hosts=>["192.168.11.160:9200"]}}'
[INFO ] 2025-07-16 20:11:13.660 [Api Webserver] agent - Successfully started Logstash API endpoint {:port=>9600}
/usr/share/logstash/vendor/bundle/jruby/2.5.0/gems/awesome_print-1.7.0/lib/awesome_print/formatters/base_formatter.rb:31: warning: constant ::Fixnum is deprecated
{"message" => "Jul 17 03:24:55 elk systemd[2400]: Starting Tracker metadata extractor...","@version" => "1","path" => "/var/log/messages","@timestamp" => 2025-07-16T12:11:15.233Z,"host" => "elk"
} 
......  ##不主动关闭一直刷新

对elasticsearch测试

[root@localhost ~]# curl 192.168.11.160:9200
{"name" : "elk","cluster_name" : "my-application","cluster_uuid" : "WzA4MSNsRV6vMYSgX5EePw","version" : {"number" : "7.1.1","build_flavor" : "default","build_type" : "rpm","build_hash" : "7a013de","build_date" : "2019-05-23T14:04:00.380842Z","build_snapshot" : false,"lucene_version" : "8.0.0","minimum_wire_compatibility_version" : "6.8.0","minimum_index_compatibility_version" : "6.0.0-beta1"},"tagline" : "You Know, for Search"
}

对kibana测试

http://192.168.11.160:5601
在进行如下操作时,会出先system-log索引   如下图
[root@elk conf.d]# logstash -e 'input{ stdin{} }output { elasticsearch{ hosts=>["192.168.11.160:9200"]}}'

查看到如上界面,kibana配置成功

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/diannao/91543.shtml
繁体地址,请注明出处:http://hk.pswp.cn/diannao/91543.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

终极剖析HashMap:数据结构、哈希冲突与解决方案全解

文章目录 引言 一、HashMap底层数据结构:三维存储架构 1. 核心存储层(硬件优化设计) 2. 内存布局对比 二、哈希冲突的本质与数学原理 1. 冲突产生的必然性 2. 冲突概率公式 三、哈希冲突解决方案全景图 1. 链地址法(Hash…

1.1.5 模块与包——AI教你学Django

1.1.5 模块与包(Django 基础学习细节) 模块和包是 Python 项目组织和代码复用的基础。Django 项目本质上就是由多个模块和包组成。理解和灵活运用模块与包机制,是写好大型项目的关键。 一、import、from-import、as 的用法 1. import 用于导入…

UE5 相机后处理材质与动态参数修改

一、完整实现流程1. 创建后处理材质材质设置:在材质编辑器中,将材质域(Material Domain)设为后处理(Post Process)设置混合位置(Blendable Location)(如After Tonemapping)创建标量/向量参数(如Intensity, ColorTint&a…

Django基础(三)———模板

前言 在之前的文章中,视图函数只是直接返回文本,而在实际生产环境中其实很少这样用,因为实际的页面大多是带有样式的HTML代码,这可以让浏览器渲染出非常漂亮的页面。目前市面上有非常多的模板系统,其中最知名最好用的…

mysql6表清理跟回收空间

mysql6表清理跟回收空间 文章目录mysql6表清理跟回收空间1.清理表2.备份表或者备份库3.回收表空间4.查看5.验证业务1.清理表 ## 登录 C:\Program Files\MySQL\MySQL Server 5.6\bin>mysql -uroot -p Enter password: ****** Welcome to the MySQL monitor. Commands end w…

Java-74 深入浅出 RPC Dubbo Admin可视化管理 安装使用 源码编译、Docker启动

点一下关注吧!!!非常感谢!!持续更新!!! 🚀 AI篇持续更新中!(长期更新) AI炼丹日志-30-新发布【1T 万亿】参数量大模型!K…

VSCode同时支持Vue2和Vue3开发的插件指南

引言 随着Vue生态系统的演进,许多开发者面临着在同一开发环境中同时处理Vue 2和Vue 3项目的需求。Visual Studio Code (VSCode)作为最受欢迎的前端开发工具之一,其插件生态对Vue的支持程度直接影响开发效率。本文将深入探讨如何在VSCode中配置插件组合&a…

卷积神经网络CNN的Python实现

一、环境准备与库导入 在开始实现卷积神经网络之前,需要确保开发环境已正确配置,并导入必要的Python库。常用的深度学习框架有TensorFlow和PyTorch,本示例将基于Keras(可使用TensorFlow后端)进行实现,因为K…

js是实现记住密码自动填充功能

记住密码自动填充使用js实现记住密码功能,在下次打开登陆页面的时候进行获取并自动填充到页面【cookie和localStorage】使用js实现记住密码功能,在下次打开登陆页面的时候进行获取并自动填充到页面【cookie和localStorage】 //添加功能----记住上一个登陆…

【Java】文件编辑器

代码:(SimpleEditor.java)import java.awt.Color; import java.awt.Font; import java.awt.Insets; import java.awt.BorderLayout;import java.awt.event.ActionEvent; import java.awt.event.ActionListener;import java.io.BufferedReader…

PyTorch中torch.topk()详解:快速获取最大值索引

torch.topk(similarities, k=2).indices 是什么意思 torch.topk(similarities, k=2).indices 是 PyTorch 中用于获取张量中最大值元素及其索引的函数。在你的代码中,它的作用是从 similarities 向量里找出得分最高的2个元素的位置索引。 1. 核心功能:找出张量中最大的k个值…

快速搭建本地HTTP服务器:`python -m http.server`详解

文章目录 一、什么是 http.server? 二、基础使用 1. 启动服务器 2. 指定端口 3. 绑定特定IP 三、实际应用场景 1. 本地前端开发 2. 文件共享 3. 启用CGI脚本(高级) 四、目录浏览详解* 五、安全注意事项 六、进阶技巧 1. 后台运行(Linux/macOS) 2. 自定义错误页面 3. 结合其…

运维技术教程之Jenkins上的known_hosts文件

在Jenkins中,known_hosts文件用于存储已验证的远程节点主机密钥,避免每次连接时重复验证。以下是基于不同场景的解决方案:1. 创建并配置 known_hosts 文件 若Jenkins提示 No Known Hosts file 或找不到文件,需手动创建并配置&…

leetcode 3201. 找出有效子序列的最大长度 I 中等

给你一个整数数组 nums。nums 的子序列 sub 的长度为 x ,如果其满足以下条件,则称其为 有效子序列:(sub[0] sub[1]) % 2 (sub[1] sub[2]) % 2 ... (sub[x - 2] sub[x - 1]) % 2返回 nums 的 最长的有效子序列 的长度。一个 子序列 指的…

Java并发编程第三篇(深入解析Synchronized)

1. Synchronized简介:一个常见的并发“陷阱” 在正式开始学习新知识前,我们不妨先来看一个现象,这是一个很多并发编程新手都会遇到的“陷阱”: public class SynchronizedDemo implements Runnable {// 共享变量private static in…

Chatbox AI|多模型多模态交互+MCP,一个工具打造你的全能私人助手

ChatBoxAI集成GPT-4、Claude等顶尖模型,支持Windows/macOS/Linux多平台,具备隐私加密、文件智能解析(PDF/代码/图片)及开发者友好特性。其应用覆盖自媒体创作、代码实时预览、AI绘图(封面/表情包)及联网搜索…

在Autodl服务器中使用VNC建立图形界面

在Autodl服务器中使用VNC建立图形界面**AutoDL 3D 图形桌面搭建教程****第一步:安装桌面和 VNC****第二步:进行一次性配置****第三步:日常启动与使用**AutoDL 3D 图形桌面搭建教程 目标: 在你的 AutoDL 环境上,以最少的步骤搭建一…

CD54.【C++ Dev】vector和list的反向迭代器的实现

目录 1.反向迭代器的功能 2.算法 方法1:新写一个类用于反向迭代器 方法2:封装正向迭代器实现反向迭代器 解析operator* 正向迭代器和反向迭代器的关系 返回 *--tmp的原因 3.为自制的vector和list编写反向迭代器 编写统一的反向迭代器 修改vector头文件 修改list头文…

如何解决pip安装报错ModuleNotFoundError: No module named ‘django’问题

【Python系列Bug修复PyCharm控制台pip install报错】如何解决pip安装报错ModuleNotFoundError: No module named ‘django’问题 摘要 在日常 Django 项目开发中,最常见的“拦路虎”之一就是 ModuleNotFoundError: No module named django。该异常通常在以下场景出…

单页面和多页面的区别和优缺点

单页面应用(SPA)与多页面应用(MPA)的区别单页面应用(SPA)整个应用只有一个HTML文件,内容通过JavaScript动态加载和渲染。页面切换时无需重新加载整个页面,仅更新部分DOM。依赖前端框…