ELK之路第四步——整合!打通任督二脉

ELK之路第四步——整合!打通任督二脉

  • 前言
  • 1.架构
  • 2.下载资源
  • 3.整合开始
    • 1.分别启动三个es
    • 2.启动kibana
    • 3.新建filebeat_logstash.yml配置文件
    • 4.修改logstash的启动配置文件
    • 5.启动logstash
    • 6.启动filebeat
    • 7.Kibana查看
  • 4.结语

前言

在开始本篇之前,你需要用到如下知识和技术点:
ELK之路第一步——Elasticsearch集群的搭建以及踩坑记录
ELK之路第二步——可视化界面Kibana
ELK之路第三步——日志收集筛选logstash和filebeat
还是由于时间问题,本篇内容后面会作补充,例子都是引用的官方示例。

1.架构

在说架构之前,我们先回忆一下我们现在有什么

  1. 三台es集群,一主两从
  2. 主服务器上部署了Kibana
  3. 主服务器上部署了logstash
  4. 主服务器上部署了filebeat

这里简单说一下,为什么有了logstash的时候,还要引入filebeat,引入filebeat为何还要保留logstash:
  logstash是运行在jvm上的,它非常庞大和笨重,而filebeat是作者用go开发的轻量级的替代品,删除了部分功能。所以我们引入filebeat来代替logstash的收集读取功能,但是logstash有非常强大的日志筛选功能,我们需要用到它。

综上所述,我们的架构图如下:
在这里插入图片描述
通过filebeat读取各种文件的类容,传输到logstash,logstash作了解析和筛选之后再发送到ES上面,然后通过Kibana可视化管理ES的数据。

2.下载资源

要引用官方的示例,我们需要两个资源:第一个是模拟日志数据weblog-sample.log,第二个是数据模版apache_template.json
第一个官网下载地址:https://github.com/liu-xiao-guo/beats-getstarted
第二个官网下载地址:https://github.com/elastic/examples/blob/master/Common%20Data%20Formats/apache_logs/logstash/apache_template.json
当然,不想搭梯子的也可以去我的资源中,免费下载,我已经上传。

3.整合开始

1.分别启动三个es

cd到es的解压目录

bin/elasticsearch -d

2.启动kibana

cd到kibana的解压目录

nohup ./bin/kibana &

3.新建filebeat_logstash.yml配置文件

里面的path,填上我们实际的weblog-sample.log文件所在的path,注意这里要用绝对路径,不要用相对路径

filebeat.inputs:
- type: log
  enabled: true
  paths:
    - /usr/local/logstash/logstash-7.3.0/weblog-sample.log
 
output.logstash:
  hosts: ["localhost:9900"]

4.修改logstash的启动配置文件

相较于前面文章,修改的点如下:

  • 修改logstash的input为beats
  • 修改useragent 里面的source为user_agent
  • 修改output,新增index,并且指定模板为前面下载的apache_template.json
input {
   beats {
    port => "9900"
  }
}

filter {
  grok {
    match => { "message" => "%{COMBINEDAPACHELOG}" }
  }

  mutate {
    convert => {
      "bytes" => "integer"
    }
  }

  geoip {
    source => "clientip"
  }

  useragent {
    source => "user_agent"
    target => "useragent"
  }

  date {
    match => ["timestamp", "dd/MMM/yyyy:HH:mm:ss Z"]
  }

}

output {
  stdout {
    codec => dots {}
  }

  elasticsearch {
    hosts => ["localhost:9200"]
    user => "elastic"
    password => "elastic"

    index => "apache_elastic_example"
    template => "/usr/local/filebeat/filebeat-7.3.0-linux-x86_64/apache_template.json"
    template_name => "apache_elastic_example"
    template_overwrite => true
  }
}

5.启动logstash

bin/logstash -f logstash.conf

6.启动filebeat

bin/filebeat -e -c filebeat_logstash.yml

启动filebeat后,就可以看到控制台打印,已经开始读取数据了
在这里插入图片描述

7.Kibana查看

输入如下命令,查看索引

GET _cat/indices

在这里插入图片描述
可以看到,es中已经收集了weblog-sample.log中模拟的30万条数据。

4.结语

elk这系列的文章是比较潦草和急的,因为时间有限被中断了,我只能介绍出大致的用法,但是没有详细深入,后面有时间一定会把内容补上。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【渗透测试】01-信息收集-名词概念

1、域名 什么是域名? 相当于网站的名字维基百科对域名的解释是:互联网上某一台计算机或计算机组的名称,用于在数据传输时标识计算机的电子方位(有时也指地理位置)。 网域名称系统(Domain Name System)有时…

支持ANC的头戴式蓝牙耳机,更有小金标认证,QCY H3 Pro体验

平时听音乐、看视频,大家都想获得更悦耳的音质体验,这时候蓝牙耳机就是性价比更高的一种方案,同时因其无线束缚、便携性高的特点,随时拿出来就能用。更不用说如今国产品牌的蓝牙耳机升级迭代速度非常快,百元的价位就可…

【Golang】Gin框架中跨域问题解决方案

✨✨ 欢迎大家来到景天科技苑✨✨ 🎈🎈 养成好习惯,先赞后看哦~🎈🎈 🏆 作者简介:景天科技苑 🏆《头衔》:大厂架构师,华为云开发者社区专家博主,…

Python飞舞蝙蝠

目录 系列文章 写在前面 完整代码 代码分析 写在后面 系列文章 序号直达链接爱心系列1Python制作一个无法拒绝的表白界面2Python满屏飘字表白代码3Python无限弹窗满屏表白代码4Python李峋同款可写字版跳动的爱心5Python流星雨代码6Python漂浮爱心代码7Python爱心光波代码…

【SSM-Day5】SpringMVC入门

【SSM-Day5】SpringMVC入门 Web->Servlet->Servlet容器MVC档案SpringMVC档案SpringMVC核心操作📢建立连接RequestMapping:实现路由映射Controller/ResponseBody:表示某个类是否可以接收HTTP请求 📢接收请求1. 直接接收一个请…

ChatGPT在解读历史股票收益预测中的外推和错误校准

论文地址:https://arxiv.org/pdf/2408.16707 原本地址:https://mp.weixin.qq.com/s/gL8ZTnpS0xJy7Qc73QEaGw 摘要 本文研究了大型语言模型(LLM)如何解释历史股票回报,并将其预测与众包股票排名平台的估计进行了比较。…

binlog 介绍

公司使用的数据库是 glodendb https://www.zte.com.cn/china/solutions_latest/goldendb.html#idpart01 最近自动化投产对一张 28w 的表进行全表 update、投产前已经是知道这个数据量的、认为没有问题、也没有在测试环境进行测试。 结果投产那天直接报错 这个 transaction_max…

什么是x86架构,什么是arm架构

什么是 x86 架构? x86 架构是一种经典的指令集架构(ISA),最早由英特尔在 1978 年推出,主要用于 PC、服务器等领域。 它是一种复杂指令集计算(CISC)架构,支持大量的复杂指令和操作&…

18.04Ubuntu网络一直connecting的问题

有段时间没登VMware的Ubuntu了,就知道这个Ubuntu一登必有问题。 如果你的网络一直connecting 设置成桥接模式就可以了!

linux离线安装Ollama并完成大模型配置(无网络)

这篇文章主要分享两方面内容: 1)在纯内网环境下如何部署ollama 2)在纯内网环境下如何配置大模型 话不多说直接开始。 ①离线部署ollama 一、通过浏览器访问ollama官方安装脚本,获取脚本内容。复制里面的内容。 在Linux中执行…

Linux笔记---Makefile的简单用法

1. 什么是Makefile Makefile 是一种用于自动化构建和管理项目的工具,特别是在软件开发中非常常见。 它包含了一系列规则(rules)和指令,描述了如何编译和链接源代码文件,以及生成最终的可执行文件或库文件。 简单来说&a…

stm32入门教程--USART外设 超详细!!!

目录 简介 什么是UART? 什么是USART? 简介 USART(Universal Synchron /Asynchronous Receiver /Transmitter)通用同步/异步收发器 1、USART是STM32内部集成的硬件外设,可根据数据寄存器的一个字节数据自动生成数据帧…

启动任务节点时,传入机械臂参数

MoveIt2_tutorial-Examples-Planning Scene ROS API 先启动move_group节点,后启动任务节点 方式1: 直接传入参数文件的地址 from launch import LaunchDescription # 导入启动描述,用于描述启动文件的结构 from launch_ros.actions impor…

规划误差降低27%,碰撞率降低33%Senna: 大规模视觉-语言模型与端到端自动驾驶相结合

Abstract 端到端自动驾驶在大规模数据中展示了强大的规划能力,但在复杂、罕见的场景中仍然因常识有限而表现不佳。相比之下,大型视觉语言模型(LVLMs)在场景理解和推理方面表现出色。前进的方向在于融合两者的优势。以往利用LVLMs…

Charles简单压力测试

1.接口请求次数,并发量,请求延迟时间均可配置 1.1选中需要进行测试的接口,鼠标右键选中【repeat advance】 2.设置并发参数 下面的图中,选择了1个接口,每次迭代中1个接口同时请求,迭代1000次(…

Zookeeper 对于 Kafka 的作用是什么?

大家好,我是锋哥。今天分享关于【Zookeeper 对于 Kafka 的作用是什么?】面试题?希望对大家有帮助; Zookeeper 对于 Kafka 的作用是什么? 1000道 互联网大厂Java工程师 精选面试题-Java资源分享网 ZooKeeper 在 Kafka…

【机器学习基础】激活函数

激活函数 1. Sigmoid函数2. Tanh(双曲正切)函数3. ReLU函数4. Leaky ReLU函数 1. Sigmoid函数 观察导数图像在我们深度学习里面,导数是为了求参数W和B,W和B是在我们模型model确定之后,找出一组最优的W和B,使…

leetcode-62-不同路径

题解: 1、设dp[i][j]代表到达(i,j)点最多的路径;题目要求机器人每次只能向右或向下走一步,所以到达(i,j)点的最多路径为到达(i-1,j)的最多路径与到达(i,j-1)的最多路径之和。即dp[i][j]dp[i-1][j]dp[i][j-1]。 2、初始化一个M*N的矩阵dp,将…

C++在实际项目中的应用第三节:C++与数据科学

第五章:C在实际项目中的应用 第三节:C与数据科学 1. C在数据分析中的实际应用 数据分析是数据科学的核心部分,主要涉及数据的清洗、转换和建模。C作为一种高性能的编程语言,越来越多地被应用于数据分析领域。以下是 C 在数据分…

Git上传文件至AtomGit

目录 一、GIt大文件存储 Git LFS 二、Git LFS的使用 1.初始化 2.将大型文件放进LFS管理 三、整体流程 首先,你已经创建属于你自己的本地库了。以下一大型文件上传为基础,50mb的文件可以直接上传至 AtomGit上面,不需要多讲。 一、GIt大文…