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

article/2025/10/8 0:02:35

  

目录

一、安装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: elasticsearchmetricsets:- ccr- cluster_stats- enrich- index- index_recovery- index_summary- ml_job- node_stats- shardperiod: 10shosts: ["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##配置esvar.paths:- var/log/elasticsearch/*.log- var/log/elasticsearch/*_server.jsongc:enabled: truevar.paths:- var/log/elasticsearch/gc.log.[0-9]*- var/log/elasticsearch/gc.logaudit:enabled: truevar.paths:- var/log/elasticsearch/*_access.log- var/log/elasticsearch/*_audit.jsonslowlog:enabled: truevar.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.logdeprecation:enables: truevar.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、减少层层嵌套


http://chatgpt.dhexx.cn/article/cw3iyq1B.shtml

相关文章

Metricbeat安装下载,nginx模块使用

目录 MetricbeatMetricbeat组成下载启动Metricbeat Modulesystem module配置内容 Nginx Module开启Nginx Module 配置nginx module测试 Metricbeat 定期收集操作系统或应用服务的指标数据存储到Elasticsearch中,进行实时分析 Metricbeat组成 Metricbeat有2部分组成…

metricbeat对接kafka

在监控系统中经常用到kafka来处理数据,上层平台会从kafka直接取数据进行分析,今天分享下metricbeat监控的数据如何输出到kafka中,并对各配置项进行详细说明。 metricbeat环境搭建点这里 kafka环境搭建点这里 -在metricbeat配置文件中配置o…

Beats:通过 Metricbeat 实现外部对 Elastic Stack 的监控

自 Elastic 7.5 发布开始,通过外部监控 Elastic Stack 已经全面实施。 可以通过 Metricbeat 模块监视 Elasticsearch,Kibana,Logstash,APM 服务器和 Beats。 使用外部收集,用户现在可以收集和发送其 Elastic Stack 的…

Metricbeat 的使用

目标 统计并展示系统的信息 cpu, 内存等 (当然metricbeat能收集的信息种类还很多) 前提 版本: 5.x已经安装了ELK (elasticsearch, logstash (可选), kibana)安装了x-pack (配置了对应的security)(可选&a…

Metricbeat 8.4.0 linux 安装(Metricbeat-part1)

Metricbeat是一款轻量型指标采集器,用于从系统和服务收集指标。Metricbeat 能够以一种轻量型的方式,输送各种系统和服务统计数据,从 CPU 到内存,从 Redis 到 Nginx,不一而足。将 Metricbeat 部署到您的所有 Linux、Win…

Metricbeat部署指南

官网下载metricbeat,https://www.elastic.co/downloads/beats/metricbeat。 解压tar包,tar -zxvf metricbeat-7.0.0-linux-x86_64.tar.gz。 进入目录,cd metricbeat-7.0.0-linux-x86_64。 编辑metricbeat配置文件metricbeat.yml&#xff1…

metricbeat的基本使用

文章目录 概述metricbeat安装metricbeat启动案例举例1:收集系统运行的指标数据至es举例2:收集es运行的指标数据至es 概述 定期收集操作系统或应用服务的指标数据存储到Elasticsearch中,进行实时分析 metricbeat安装 去下载页下载&#xff…

Metricbeat安装与初级使用

metricbeat作用: 将 Metricbeat 部署到您所有的 Linux、Windows 和 Mac 主机,并将它连接到 Elasticsearch 就大功告成啦:您可以获取系统级的 CPU 使用率、内存、文件系统、磁盘 IO 和网络 IO 统计数据,以及获得如同系统上 top 命令…

Metricbeat和Filebeat的安装及配置

Beats的安装及配置 一、Metricbeat的安装配置 环境准备 下载与es同版本的metricbeat,这里为 metricbeat-7.11.1-linux-x86_64.tar.gz 这里使用root用户进行配置及启动metricbeat 已启动对应的ES服务及Kibana服务 metricbeat的安装 这里在/路径下建立beats文件…

windows安装wget

1、下载地址:http://downloads.sourceforge.net/gnuwin32/wget-1.11.4-1-setup.exe 2、双击下载的exe,同意协议,更改安装安装目录。 其余默认安装,继续下一步,安装完成 3、设置系统环境变量 添加path变量:…

手动编译源代码安装wget

从wget的源代码入手,来完成wget在Ubuntu上的安装,如果你的机器上已经默认安装了wget,请采用apt-get remove命令先卸载掉。 解决configure: error: –with-ssl was given, but GNUTLS/SSL is not available.;解决error: ./stdio.h…

win10安装wget,从此可以更快的下载文件 and windows10 下 zip命令行参数详解

1.win10安装wget 1.1安装下载 GNU Wget 1.21.3 for Windows 依次如下: 2、将下载好的wget.exe放到 C:/windows/system32文件夹下 也可以自行放置文件,添加到系统路径即可 第三步:配置系统环境变量(如下)电脑-属性…

Mac安装wget流程及异常解决

目录 1.终端输入wget检查自己是否已经安装过wget,没有安装如下图 2. 安装brew 1)点击brew官网:官网网址 2)将命令粘贴到终端,回车执行 3)输入sudo密码。 4)系统开始自动安装brew,等待晚装完成&#xf…

使用rpm 安装wget

步骤: 下载wget的rpm包:http://mirrors.163.com/centos/7/os/x86_64/Packages/ 使用浏览器搜索功能查找关键字 ,这个网站搜索wget 运行: rpm -ivh wget-1.14-15.el7_4.1.x86_64.rpm

centos7离线安装wget

gcc安装 CentOS下离线安装gcc环境,图文详细,方法全面_lgx211的技术博客_51CTO博客 m4安装 下载: http://mirrors.kernel.org/gnu/m4/m4-1.4.13.tar.gz 拷贝到centos系统上,并解压: tar -xzvf m4-1.4.13.tar.gz到解…

mac 如何安装 wget

1.安装 Homebrew 在安装 wget 之前需要安装一个适用于 mac 的包管理器 Homebrew,打开 mac 终端执行如下命令进行安装: /usr/bin/ruby -e "$(curl -fsSL https://cdn.jsdelivr.net/gh/ineo6/homebrew-install/install)"安装成功后的界面如下所…

CentOS8下安装wget、wget2

目录 一、yum 安装二、下载包安装 wget1.安装 gmp(1)下载(2)解压(3)编译安装 2.安装 nettle(1)下载(2)解压(3)编译安装 3.安装 gnutls…

cygwin安装wget

1. 安装make 下载make包https://gnu-make.soft32.com/free-download/ 将make解压放到 E:\cygwin64\home\Administrator 2. 在cygwin中进入/home/Administrator/make-3.81路径 依次执行以下命令: ./configure ./build.sh 在make-3.81下就会生成make.exe文件 3.…

yum安装wget命令

wget 是一个从网络上自动下载文件的自由工具,支持通过 HTTP、HTTPS、FTP 三个最常见的TCP/IP下载,并可以使用 HTTP 代理。"wget" 这个名称来源于 “World Wide Web” 与 “get” 的结合。 今天在虚拟机中准备安装一个软件,使用wge…

Centos7安装wget

官网 https://www.gnu.org/software/wget/ 环境 CentOS7 yum 安装 sudo yum install wget 这个报错,查资料是说,网络不通 ping 了下,返回 Name or service not known ,从错误看应该是没有配置DNS 配置DNS参考https://www.cnblogs…