ELK日志采集平台(四)---轻量级采集工具metricbeat

2023-11-01

  

目录

一、安装metricbeat

二、与kibana数据可视化联用


      logstash是负责采集数据的,是入口,流向为logstash-> ES->kibana,但是它的资源消耗很大,有时候没那么多内存给他占用,同时有些定制的采集指标logstash无法满足。所以有时也使用轻量级的metricbeat来实现采集,流向为metricbeat-> ES->kibana,可以获取系统级的 CPU 使用率、内存、文件系统、磁盘 IO 和网络 IO 统计数据,还可针对系统上的每个进程获得与 top 命令类似的统计数据。同时Metricbeat 提供多种内部模块,用于从服务中收集指标,例如 Apache、NGINX、MongoDB、MySQL、PostgreSQL、Prometheus、Redis 等等。

官网:https://www.elastic.co/guide/en/beats/metricbeat/7.6/metricbeat-installation.html

##进入kibana
    点击集群 -> 使用metricbeat
        输入监测集群URL  http://192.168.19.71:9200

一、安装metricbeat

##在线安装
curl -L -O https://artifacts.elastic.co/downloads/beats/metricbeat/metricbeat-7.6.2-linux-x86_64.tar.gz
tar xzvf metricbeat-7.6.2-linux-x86_64.tar.gz

##也可以采用docker直接运行
docker pull docker.elastic.co/beats/metricbeat:7.6.2
docker run \
docker.elastic.co/beats/metricbeat:7.6.2 \
setup -E setup.kibana.host=kibana:5601 \
-E output.elasticsearch.hosts=["elasticsearch:9200"]  
##配置进入/etc/metricbeat/modules.d,查看所有模块
    --disabled表示未激活,elasticsearch-xpack已被激活

##vim elasticsearch-xpack.yml
---------------------------------------------
- module: elasticsearch
  metricsets:
    - ccr
    - cluster_stats
    - enrich
    - index
    - index_recovery
    - index_summary
    - ml_job
    - node_stats
    - shard
  period: 10s
  hosts: ["http://localhost:9200"]
  username: "elastic"
  password: "123"
  xpack.enabled: true
---------------------------------------------

##返回上一层,配置metricbeat
vim metricbeat.yml
---------------------------------------------
output.elasticsearch:
  hosts: ["192.168.19.71:9200"]
  username: "elastic"
  password: "123"
---------------------------------------------

##重启elasticsearch服务,查看端口
systemctl restart elasticsearch.service

##同样对server2\3进行处理,然后禁用内部采集即可

二、与kibana数据可视化联用

        filebeat可以对日志信息进行检测,官网介绍:https://www.elastic.co/guide/en/beats/filebeat/7.6/filebeat-installation.html

         点击logs可以查看到有很多日志信息,但此时hostname检索到es各个主机的日志信息(未安装filebeat),集群的日志都在:/var/log/elasticsearch

        filebeat的数据流向为filebeat->logstash-> ES->kibana,组合使用。假如流量很大,为了确保数据不丢失,可以加入中间件kafaka或者redis,实现消息队列,即filebeat->logstash->kafaka-> ES->kibana;
        server1安装filebeat,激活es模块

##安装:
curl -L -O https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-7.6.2-x86_64.rpm
sudo rpm -vi filebeat-7.6.2-x86_64.rpm

##配置es
  var.paths:
       - var/log/elasticsearch/*.log
       - var/log/elasticsearch/*_server.json

  gc:
    enabled: true
    var.paths:
        - var/log/elasticsearch/gc.log.[0-9]*
        - var/log/elasticsearch/gc.log

 audit:
    enabled: true
    var.paths:
        - var/log/elasticsearch/*_access.log
        - var/log/elasticsearch/*_audit.json
 slowlog:
    enabled: true
    var.paths:
      - var/log/elasticsearch/*_index_search_slowlog.json
      - var/log/elasticsearch/*_index_search_slowlog.log
      - var/log/elasticsearch/*_index_indexing_slowlog.json
      - var/log/elasticsearch/*_index_indexing_slowlog.log

deprecation:
    enables: true
    var.paths:
      - var/log/elasticsearch/*_deprecatin.json
      - var/log/elasticsearch/*_deprecatin.log
        
##配置filebeat全局文件
    vim filebeat.yml
-----------------------------------------------------------
hosts: ["192.168.19.71:9200"]
username: "elastic"
password: "123"
-----------------------------------------------------------

##启动服务
systemctl enable --now filenbeat.service

##在web端点击logs,通过hostname可以进行查询

上述配置中:

1、服务器日志文件集设置:
        var.paths 一组基于全局的路径,指定在何处查找日志文件。Go Glob支持的所有模式也在这里得到了支持。例如,您可以使用通配符从预定义级别的子目录:/path/to/log//. 1log获取所有文件。这将从/path/到/log的子文件夹中获取所有的.log文件。它不会从/path/获取日志文件到/log文件夹本身。如果此设置为空,Filebeat将根据您的操作系统选择日志路径;
2、gc日志文件集设置
3、审计日志文件集设置

 【部分问题解决】
(1)冷热分离
        注意ELK是实时监测数据的,虽然有数据库的功能,但是完全和数据库不一样,实时监测非常消耗资源,如果只当数据库,纯属大材小用。一般要把数据冷热分离,刚刚采集到数据可以理解为热数据(hot),实时写入ELK分析;过一段时间,数据变为温数据(warm),可以用来查询,不再写入;再过一段时间变为冷数据(cold),查询也很少了,我们可以考虑把他放到数据库中存储,或者从硬件方面来说,从高性能的节点存储换为普通性能的节点,把高性能的节点留给热数据;再过很久,会删除数据。

 - 想要实现上面的冷热分离,进行生命周期管理,必须有:
        1、节点标签。区分冷热节点
        2、生命周期策略。定义热阶段的大小,最长时间,存在时长等等
        3、索引模板引用索引模板策略。模板创建索引,加载生命周期策略
        4、索引模板指定调度节点。将新建索引分片分配到热节点

(2)搜索速度优化
        为了提高es搜索速度,可以考虑下面几种方法:
        1、为文件系统cache留有足够内存,内存越大,速度越快
        2、提升i/o,使用固态硬盘
        3、减少层层嵌套

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

ELK日志采集平台(四)---轻量级采集工具metricbeat 的相关文章

  • 如何用Python为ElasticSearch创建只读客户端?

    我想从 ES 读取数据 但不想意外向其中写入数据 无索引操作 这只是一种安全措施 以便以后修改查询函数的其他人不允许插入数据 当你说你想要只读客户端时 客户端强调您系统中的同一集群可能有其他客户端 然后阻止整个索引为只读将会阻止所有客户端的
  • ElasticSearch:对聚合键进行排序,不区分大小写,并保持键的大小写

    我想从汽车中获得不同的制造值 并且制造值应该不区分大小写地按升序排序 我使用的是elasticsearch版本2 4 4 颜色和制作字段的映射 color type string fields keyword type string ind
  • 使elasticsearch中的所有对象嵌套对象

    是否可以让elasticsearch中的所有嵌套对象自动映射到默认嵌套的类型 而不是对象 是的 您可以使用以下方法来做到这一点动态模板 https www elastic co guide en elasticsearch referenc
  • 如何在弹性搜索(aws)中存储日期范围数据并搜索范围?

    我正在尝试在弹性搜索中存储酒店房间可用性 然后我需要 搜索从某个日期到另一个日期可用的房间 我想出了 存储数据以确保可用性的两种方式 如下 这里可用性字典存储了所有日期 每个日期键的值是 true 或 false 代表其可用 那天与否 id
  • Elasticsearch 崩溃后无法恢复

    磁盘空间不足 导致 Elasticsearch 分片崩溃 三个节点现在为红色 两个节点已恢复 它们的状态为黄色 ES 的 CPU 利用率为 150 内存利用率很高 正在尝试恢复它们 但似乎存在一些版本匹配冲突 我清理了磁盘空间并删除了分片的
  • 在 ElasticSearch 7+ 中,如何搜索所有文本字段?

    我想在 Elasticsearch 7 3 中存储的文档中搜索单词 我希望在以前版本的 Elasticsearch 上运行的一个示例是 query bool must match all oliver must not should fro
  • 为什么我在elasticsearch中需要“store”:“yes”?

    我真的不明白为什么核心类型链接 http www elasticsearch org guide reference mapping core types 它在属性描述中说 例如 对于数字 store 设置为 yes 将实际字段存储在索引中
  • 了解elasticsearch如何在内部存储日期

    我想了解 ES 如何在其索引内部存储日期值 它会转换为 UTC 吗 我有一个日期类型的字段 t 这是映射 t type date 现在 当我向 ES 插入 添加文档时 它如何存储在索引中 t 1427700477165 从 Date now
  • match_none 有什么用?

    我浏览了docs https www elastic co guide en elasticsearch reference current query dsl match all query html query dsl match no
  • 按字段关联 ELK 中的消息

    相关 在ELK中合并日志和查询 https stackoverflow com questions 28429607 combine logs and query in elk 我们正在设置 ELK 并希望在 Kibana 4 中创建可视化
  • Elasticsearch 中的嵌套与对象

    有人可以解释 Elasticsearch 文档中 对象 和 嵌套 字段之间的区别吗 我知道默认情况下字段被定义为对象 我还知道我可以用这样的点访问对象字段 my field name my field title 等 对象的文档 http
  • 在elasticsearch结果中显示不匹配的单词

    我想显示返回文档的多单词查询不匹配哪些单词 是否有查询类型或参数来实现此目的 通常 此类不匹配的单词会以删除线字体显示给用户 我得到答案后的示例查询 POST posts search query bool should match nam
  • 使用 KMS 的 AWS RDS 加密是否会影响性能?

    Amazon states https aws amazon com about aws whats new 2015 01 06 amazon rds encryption with kms mysql postgresql that 加
  • elasticsearch查询字符串分析器针对不同字段使用不同的分析器

    当对具有不同分析器 stem ngram等 的多个字段执行查询时 elasticsearch是否对每个字段的查询字符串执行特定的分析 是的 除非您在查询中指定分析器 这请求参数 http www elasticsearch org guid
  • 局部敏感哈希 - Elasticsearch

    有没有允许在 Elasticsearch 上使用 LSH 的插件 如果是的话 您能否指出该位置并告诉我如何使用它 谢谢 编辑 我发现ES使用了MinHash插件 我怎样才能用这个来比较文件呢 查找重复项的最佳设置是什么 有一个Elastic
  • ElasticSearch 嵌套查询 - 排除父文档

    尝试排除其中子文档之一与查询不匹配的顶级文档 对于下面的示例 我尝试排除其嵌套作业之一具有的所有文档current true 并与company name Elastic 但由于嵌套作业文档之一与current false和公司name E
  • Elasticsearch 单个字段的多个分析器

    我使用严格的预定义映射将不同类型的文档存储在单个索引中 它们都有一些字段 例如 body 但我希望在索引时对它们进行稍微不同的分析 例如 对特定文档使用不同的标记过滤器 并在搜索时以相同的方式处理 据我所知 分析器不能按文档指定 我还考虑使
  • search_after 在弹性搜索中如何工作?

    我一直在尝试在我们的应用程序中使用 Elasticsearch 但分页限制为 10k 对我们来说实际上是一个问题 并且由于必须超时问题 滚动 API 也不是推荐的选择 我发现 Elasticsearch 有一个叫做 search after
  • Elasticsearch 关于“空索引”的查询

    在我的应用程序中 我使用了几个elasticsearch索引 它们在初始状态下不包含索引文档 我认为这可以称为 空 该文档的映射是正确且有效的 该应用程序还有一个包含实体的关系数据库 这些实体可能具有在 elasticsearch 中关联的
  • 自动完成建议中的输出字段

    当我想在 elasticsearch 中索引文档时 会发生此问题 message MapperParsingException failed to parse nested IllegalArgumentException unknown

随机推荐

  • SSH登录提示Permission Denied的排查

    背景 用户反馈使用密码无法正常登录 提示 Permission Denied 需要重置密码后才能正常 而相同的密码在一个月前能正常登录 一共有两台实例有这样的现象 分析 一般来说 类似问题可以从几个方面来考虑可能性 SSH server配置
  • BAPI_ACC_DOCUMENT_POST 简单理解过账BAPI使用

    业务场景 甲方是一家从事房屋租赁的公司 它的主营业务就是从各大租户手里收租子 月底了 小明发了工资美滋滋 钱到手没多久房东就催租子了 房租每月100 水电100 税费22 合计222 小明如约在手机APP上向房东支付了当月的房租 这边钱到账
  • HTML中为什么有一些标签有结束标签,一些没有结束标签

    HTML中为什么有一些标签有结束标签 一些没有结束标签 button 有结束标签 但是
  • ue4文档接口类学习

    看了看Ue4文档中的接口类 摸索着进行了下 在编辑器 先从Unreal interface派生个接口类ReceiveHttpInterface 废话不多说 上代码 接口类文件 Fill out your copyright notice i
  • Netty服务端口的绑定

    调用netty的bootstrap的bind 方法会开始netty对本地端口的绑定与监听 在serverBootstrap的超类abstractBootstrap的bind 方法开始绑定的全过程 public ChannelFuture b
  • Redis多机实现

    Background 为啥要有多机 1 容错 2 从服务器分担读压力 主从结构一大难题 如何保障一致性 对这个一致性要求不是很高 因为redis是用来做缓存的 同时我们要自动化进行故障转移 哨兵机制 同时哨兵也可能crash 所以我们要引入
  • 手把手教你制作AR增强实现项目

    都快一年时间没写技术文章了马上要开始职业生涯新篇章借此机会发布最近研究的一些成果 AR name Card 项目制作教程 需要准备的工具及软件 1 unity3d 4 0以上版本并且需要破解为pro版本 2 Metaio sdk最新版 下载
  • 维纳滤波器、卡尔曼系列滤波器以及自适应LMS、RLS滤波器matlab代码实现

    warning off clear clc x normrnd 5 2 1 2000 index 5 if index 1 自适应滤波LMS N 50 W zeros N 1 d 5 miu 0 1 29 N 0 5 x hat set z
  • httpclient请求403

    问题 httpclient请求对方服务器报403 用postman是可以的 原因 HttpPost request new HttpPost uri request setHeader User Agent Mozilla 5 0 Wind
  • Android开发

    1 Android简介 Android一词的本义指 机器人 同时也是Google于2007年11月5日宣布的基子 Linx平台的开源手机操作系统的名称 该平台由操作系统 中间件 用户界面和应用软组成 Android系统具有如下5个特点 开放
  • CSS深入剖析border和box-shadow(附漂亮样式)

    剖析border 一 border radius 二 border image 三 box shadow 四 利用这些属性渲染出漂亮图形 在CSS3中赋予了border更过的功能 但是其知识结构也更加复杂 在本文中博主对border进行深入
  • 线性空间与线性变换

    1 1线性空间 广义的概念 如何证明一个向量集合是线性空间 1 首先问下什么是线性空间 2 如何表示该集合中的全部向量 知识点1 首先我们需要知道什么是空间 空间其实就是向量的集合 而什么是线性空间呢 定义了线性运算的非空集合 线性运算指的
  • Photoshop出现无法完成,因为内存不够(RAM),如何解决?

    Photoshop出现无法完成 因为内存不够 RAM 时 你所需要如下步骤进行系统的适用 1 在你点击 编辑 首选项 性能 系统提示中如果出现了 要求在96和8之间的整数 已插入最接近的数 这个就需要你在注册表中进行操作 操作如下 1 wi
  • 加拿大安省欢ajax,加拿大安省省考OSSLT介绍

    原标题 加拿大安省省考OSSLT介绍 加拿大省考相当于中国的会考 必须通过才可以取得加拿大高中毕业证 不同省份的省考 BC省除外 目前已取消省考 对申请大学的影响不同 安大略省的省考只有一门课 即由安大略省教育质量和问责办公室 EQAO 举
  • Sqoop简介、原理、安装、简单使用案例、一些常用命令及参数

    问题导读1 Sqoop原理是怎样的 2 如何利用Sqoop导入数据 3 如何利用Sqoop导出数据 4 Sqoop常用的命令及对应参数有哪些 第1章 Sqoop 简介 Sqoop 是一款开源的工具 主要用于在 Hadoop Hive 与传统
  • vector 的作用

    c 中 vector作为容器 它的作用是 一个动态数组模板类 你可以把它当做一个普通数组用 但是他的功能远比一般数组强大 数组最大的不好就是数组长度的限制和删除其中一个时候的后续移位问题 这些在vector中都得到了完美的解决 而且可以存储
  • 教你一步步创建属于自己的Python爬虫代理IP池(含代码示例)

    前言 在进行网络数据采集时 遇到反爬虫限制是常见的问题 使用代理IP可以帮助我们绕过这些限制 保护自己的爬虫程序 本文将教您如何使用Python创建属于自己的代理IP池 以便获取可用的代理IP并应用于 Python爬虫程序 同时 我们将提供
  • 关于Qt调用多/两次setupUi导致信号与槽自动连接失败问题

    代码场景 函数内部调用两次 setupUi okBtn自动连接槽函数失效 问题分析 在 setupUi 函数内部调用了这么一个函数 connectSlotsByName 从函数名来看就是通过名字 部件名 连接信号与槽 官方文档的解释 所以流
  • Spring@Autowired注解与自动装配

    今天在预发布环境配置一个manager的时候 应用启动失败 报错 Caused by org springframework beans factory BeanCreationException Could not autowire fi
  • ELK日志采集平台(四)---轻量级采集工具metricbeat

    目录 一 安装metricbeat 二 与kibana数据可视化联用 logstash是负责采集数据的 是入口 流向为logstash gt ES gt kibana 但是它的资源消耗很大 有时候没那么多内存给他占用 同时有些定制的采集指标