文章目录

  • 以后再也不用安装安装 tons of beats 了!
  • 解锁Ingest manager页面
    • 先决条件
  • Ingest manager组件简介
    • 集成(Integrations)
    • 新的索引策略
    • 配置(Configurations)
    • Fleet
    • 数据流(Data Streams)
  • Elastic Agent
  • 总结

以后再也不用安装安装 tons of beats 了!

用过Elastic Stack,用过ELK的小伙伴都知道,Elastic目前提供的数据采集方案主要是基于Beats。这是一个软件族,包括了多个组件:


Beats是用Go语言编写的轻量级的数据采集群,它具有以下特点:

  • 从多个数据源采集
  • 运行在多种终端上
  • Docker 和 k8s
  • 支持Cloud的元数据
  • 70+ 社区制造的Beats
  • 50+ 模块

虽然通过beats,我们可以开箱即用的采集大量的数据源
但其按照意图区分多个不同软件的方式也给我们带来了不便。通常情况下,如果我们需要采集多维度的数据,就需要在一个主机上安装多个beats,比如,filebeat用于日志采集,metricbeat用于指标采集,auditbeat用于审计/安全数据的采集。客观上,从软件安装/删除,软件配置更改,软件升级等方面增加了我们对于agent的运维管理工作量。

为了解决这个问题,Elastic推出了数据摄入模块的整体解决方案,在最新发布的7.8版本上,悄悄咪咪的增加了Ingest manager的功能,其中,就包含了Elastic Agent,一个将所有beats进行统一集成的方案(甚至包括了Security的endpoint终端)


并且发布了对应的使用文档。
需要注意的是,目前,这个功能还处在 实验性 阶段,Elastic 并不建议大家在生产上使用。但这并不妨碍大家先一睹为快,尝鲜反馈!

解锁Ingest manager页面

先决条件

要使用此实验版本的Ingest manager功能,您需要:

  • 具有basic license的Elasticsearch集群和Kibana(版本7.8)。您可以 在Elastic Cloud上使用托管的Elasticsearch Service,或在您自己的硬件上安装Elastic Stack。

  • 具有超级用户角色的用户。请参阅内置角色。

  • 在自我管理的群集上,您必须配置安全性和加密设置。如果您在Elastic Cloud上使用托管Elasticsearch Service,则这些设置已启用。

    • 在您的Elasticsearch配置中:

      • 配置Elasticsearch安全性。设置 xpack.security.enabled 为true。
      • 启用内置的API密钥服务。设置 xpack.security.authc.api_key.enabled 为true。
    • 在您的Kibana配置中:

      • 配置Kibana安全性。设置 xpack.security.enabled 为true。
      • 配置TLS。或者,您可以通过将设置xpack.ingestManager.fleet.tlsCheckDisabled 为true来禁用TLS检查。例如,如果Kibana位于截断SSL连接的代理之后,则可能要禁用TLS检查。
      • 设置xpack.encryptedSavedObjects.encryptionKey为至少32个字符的任何字母数字值。例如: xpack.security.encryptionKey: “something_at_least_32_characters”。Fleet需要此设置才能保存API密钥并在Kibana中对其进行加密

通过以上配置,Kibana就可以在Elasticsearch中存储加密内容,以此方式来管理Elastic agent。

以下为Kibana上的Ingest manager的首页

这里包含几个关键组件:

  • 集成(Integrations)
  • 配置(Configurations)
  • Fleet
  • 数据流(Data Streams)
  • 注册代理(Enroll New Agent)

他们的作用如下图:

Ingest manager组件简介

集成(Integrations)

是上图的Package Manager,通过集成(Integrations),我们可以获取各种开箱即用的数据摄取工具,目前默认为用户安装了两个集成模块:

分别是Elastic EndpointSystem。他们对应的是主机的安全数据采集和资源指标数据采集。

提供的开箱即用的集成模块有:

注意,如需使用这些模块,是需要单独安装(load assets)到Elasticseach当中的。这个功能其实就是原先beats里面的enable module的功能。但区别在于,之前每个beats有各自的module,比如Nginx,filebeat有,metricbeat里面也有,而且得通过手动命令去打开:

## when filebeat stop
./filebeat modules enable apache mysql
## when filebeat already running
./filebeat --modules nginx,mysql,system

或者修改yml配置文件:

filebeat.modules:
- module: nginx
- module: mysql
- module: system

这里的 Nginx模块,是直接包含了日志和指标(即直接启动了filebeat和metricbeat的内容)数据的采集,同时包含了 Dashboard, Visualization 和 Saved Search

新的索引策略

我们可以对比一下,在7.8版本之前,如果我们使用filebeat和metricbeat,自动创建的索引,都是包含了数千个mapping的:



而在新的index strategy下,我们会根据安装的集成模块来添加Mapping,以此来减轻索引管理的负担



此时的索引命名规则已经更改为:

  • {type}-{dataset}-{namespace}

  • type: generic type of data (logs, metrics, trace, …) ,全观察性的三根支柱数据类型

  • dataset: Set of data with the same structure / mapping (nginx.access),各种数据集

  • namespace: Use configurable namespace (prod, testing),各种环境

配置(Configurations)

当我们通过 集成(Integrations)把对应的index mapping, Dashboard, Visualization 和 Saved Search 后,我们就可以使用配置(Configurations)来配置每个代理采集对应集成模块数据的具体细节,以Nginx模块为例,我们可以配置代理采集Nginx日志、指标的路径、内容、频率等各种细节。


并且可以针对不同的环境,不同的代理配置多份 配置(Configurations)


每个配置包含多个集成模块:

Fleet

Fleet 在英文中是车队的意思,通过Fleet,我们可以管理多个代理实例 ( 目前的Ingest manager可以管理上千个实例 )。

我们可以通过注册新代理将代理放到Fleet中进行管理。注册之后,就可以在Fleet页面为每个Agent选择对应的配置:

并且可以查看每个代理的具体活动情况:

这里再次强调,目前只是实验性功能,后续可能会有很大的功能改动和增强!

数据流(Data Streams)

当我们通过Fleet将配置下发到代理之后,代理开始采集数据,数据采集的状态会显示在数据流页面。页面上的上次活动表示的是数据采集状态的最后采样信息,始终表示的是最新的状态。数据流的大小就是数据的大小。
注意,这里的数据流是Elasticsearch中时间序列数据概念的形式化。配合V2_Template会是以后Elasticseach上索引生命周期管理的主要模式(替代之前的Alias),具体概念解释可以查看文章

Elastic Agent

Ingest Manager是Kibana上的数据摄入管理模块,而Elastic Agent是真正安装在宿主机上进行数据采集并且接受Ingest Manager管理的模块。之前被用户诟病最多的是需要同时管理多个beats。在7.8版本推出之后,我们只需要在被监控主机上安装一个Elastic Agent即可完成从指标,到日志,到Trace数据的采集。

我们可以通过注册的方式,同时将大量的agent同时注册到Ingest Manager当中

比如用Ansible:

ansible -b --become-user=root  -i ./hosts all -m shell -a 'elastic-agent enroll http://localhost:5601 NVFLS0hITUJzckszUWFUcWg0dmo6RnM3VFZ4c05TWkdJdzl2bzVMQlAyUQ==
&& elastic-agent run'

关于Elastic Agent的安装,配置、管理的详细信息可以查看官方文档

总结

目前Ingest manager 和 Elastic Agent还处于一个EXPERIMENTAL状态,官方并不建议在生产上使用。在进入Beta,再到最终GA,还有很长的一段路要走。但值得期待的有两点:

  • Elastic持续倾听用户和社区的声音,正在往解决方案的路上快速前行,客户在使用过程中的痛点,不便都已经纳入到了产品的roadmap里面,相信未来产品会越来越好用
  • Elastic产品保持一个极快的速度在推陈出现,相信最终的GA版本离我们也不会太远了

解锁 Elastic 最新的数据采集模块 - Ingest manager 和 Elastic Agent相关推荐

  1. 02 电商数仓(数据采集模块)

    电商数仓(数据采集模块) 写在前面:本文是我在学习电商数仓项目的过程中,对相关知识点的记录与总结. 文章目录 电商数仓(数据采集模块) 1. Hadoop 安装 1.1 安装 Hadoop 1.2 H ...

  2. 2023版最新最强大数据面试宝典

    此套面试题来自于各大厂的真实面试题及常问的知识点,如果能理解吃透这些问题,你的大数据能力将会大大提升,进入大厂指日可待! 目前已经更新到第4版,广受好评! 复习大数据面试题,看这一套就够了! 前言 此 ...

  3. 计算机考级各省份难度,2018年全国各省份高考难度排名,基于高分率最新统计数据!...

    很多人都在提高考难度,高考难度并不是指的是试卷难度,而是指的是重点大学的录取率.而由于当前高考采取的是分省录取的方式,这就意味着你要和本省的学生来比拼,想考取重点大学就要比别的同学考取更多的分数,毕竟 ...

  4. python多进程通信manager_python中进程间数据通讯模块multiprocessing.Manager的介绍

    本篇文章给大家带来的内容是关于python中进程间数据通讯模块multiprocessing.Manager的介绍,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 目前开发中有遇到进程 ...

  5. bcd转ascii码 流程图_4-20mA转RS485,MODBUS数据采集模块

    原标题:4-20mA转RS485,MODBUS数据采集模块 产品概述: WJ20产品实现传感器和主机之间的信号采集,用来检测模拟信号.WJ20系列产品可应用在 RS-232/485总线工业自动化控制系 ...

  6. 动易SiteFactory数据采集模块

    动易这套系统的数据采集模块,是基于.Net2.0开发的,里用到了Asp.net Ajax,WebService,线程序等技术.  具体实现思路是:   数据采集类PowerEasy.Collectio ...

  7. ad7606中文资料_16位ADC数据采集模块AD7606(原理图、中文数据手册、例程等)

    AD7606 数据采集模块,16位ADC,8通道同时200KHz频率采集,每秒8*200K样本.SPI接口或8080 16位并口,可自行选择. AD7606 数据采集模块特性:使用AD7606 高精度 ...

  8. mysql 分组之后 取分组之后最新的数据

    一.数据表设计 二.查询场景 统计每门课的考试次数.最新一次考试的时间.最新一次考试的录入成绩的老师 1.统计没门课的考试次数 #考试次数统计 select project '科目',count(pr ...

  9. PacBio HiFi测序介绍及百迈客最新下机数据公布

    PacBio HiFi测序介绍及百迈客最新下机数据公布 百迈客生物 ​ 已认证账号 已关注 3 人赞同了该文章 众所周知,要获得基因组的完整图片,就必须组装reads,以目前主要的测序技术来看,短读长 ...

最新文章

  1. 同事乱用 Redis 卡爆,我真是醉了...
  2. Node.js process 模块常用属性和方法
  3. Win10 配置 TensorFlow-gpu 深度学系框架
  4. echarts 刻度 双y轴_ECharts 解决双Y轴刻度不一致问题
  5. java反射头文件_编程基础知识——C++能不能支持Java和ObjC的反射?
  6. tomcat的class加载的优先顺序
  7. 年轻人“颜值消费”崛起 分期乐联手屈臣氏发力95后美妆护理市场
  8. 监视器(monitor)
  9. 你的“数学潜意识”原来可以被唤醒
  10. 创建表时参数PCTFREE和PCTUSED是什么意思?
  11. QT与游戏手柄测试(数据与UI相连,ui界面作出反应)
  12. 基于易智瑞(ArcGIS)JavaScript API的视频融合探索
  13. 电脑软件测试英雄联盟,怎么测试电脑能不能玩英雄联盟
  14. 【洛谷 P5244】 [USACO19FEB]Mowing Mischief P(分治 / 决策单调性优化DP)
  15. TCP,UDP,IP,数据链路层头部详解
  16. AltiumDesigner规则设置
  17. 题目;我们认为2是第一个素数,3是第二个素数,5是第三个素数,依次类推现在,给定两个整数n和m,你的程序要计算第n个素数到第m个素数之间所有的素数的和,包括第n个素数和第m个素
  18. Linux就业形势报告
  19. 中山大学自考网校招生简章
  20. (1-2)神经网络与深度学习 | 浅层和深层神经网络

热门文章

  1. ASP.NET Web程序设计 第三章 高级控件
  2. 呼叫中心电话客服系统搭建的种类有哪些
  3. 如何将pdf修改编辑
  4. 【数据挖掘结果】大数据企业的汇总信息
  5. 对称数c语言,中心对称数 - Developmer的个人空间 - OSCHINA - 中文开源技术交流社区...
  6. App Store 类别定义
  7. 魔兽UI跟随鼠标移动
  8. 【论文阅读】 BPR: Bayesian Personalized Ranking from Implicit Feedback
  9. 网易云音乐前副总裁教你如何做产品 —《幕后产品》读书笔记
  10. opencv之图像平移