ELK日志监控分析系统的探索与实践(二):利用Metricbeat监控服务器系统指标

本文涉及的产品
检索分析服务 Elasticsearch 版,2核4GB开发者规格 1个月
日志服务 SLS,月写入数据量 50GB 1个月
简介: 在ELK日志监控分析系统的探索与实践(一)中,我们介绍了如何利用ELK+Filebeat监控Springboot项目的日志,本篇则是重点介绍如何利用ELk+Metricbeat监控服务器系统CPU、内存、磁盘等系统指标。

一、Metricbeat简介

Metricbeat是一个轻量级的托运程序,可以安装在服务器上,定期从操作系统和服务器上运行的服务收集度量。Metricbeat获取它收集的度量和统计数据,并将它们发送到您指定的输出,例如Elasticsearch或Logstash。

Metricbeat通过从服务器上运行的系统和服务收集指标,帮助您监控服务器,例如:

  • Apache
  • HAProxy
  • MongoDB
  • MySQL
  • Nginx
  • PostgreSQL
  • Redis
  • System
  • Zookeeper

二、ELK集成Metricbeat工作原理

三、部署方案

服务器

服务

默认端口号

作用

备注

192.168.16.21

Elasticsearch

9200

日志存储、日志查询、日志解析

192.168.16.22

Logstash

5044

日志收集、日志过滤

192.168.16.4

(外网地址:xx.xxx.xx.xx)

Kibana

5601

可视化展示

如需外网访问,Kibana需部署在外网可以访问的服务器上

192.168.16.6

192.168.16.11

......

Metricbeat

服务器系统指标收集

各个需要采集指标的服务器上都部署

四、Metricbeat部署与配置

官网指南:https://www.elastic.co/guide/en/beats/metricbeat/7.8/metricbeat-getting-started.html

1.下载安装Metricbeat

注意事项:

https://www.elastic.co/cn/downloads/past-releases/metricbeat-7-8-0

2.配置Metricbeat

编辑metricbeat.yml

output.elasticsearch:
  hosts: ["192.168.16.21:9200"]  # ES地址  username: "elastic"# elasticsearch登录用户名,如有  password: "elastic"# elasticsearch登录密码,如有setup.kibana:  # kibana地址  host: "192.168.16.4:5601"

注意:Output配置中,ES和Logstash只能配置一个,否则会报错:Error initializing beat: error unpacking config data: more than one namespace configured accessing 'output' (source:'metricbeat.yml')

3.启动system模块

./metricbeat modules enable system # 开启system模块 ./metricbeat modules list enable # 查看已开启的模块

如需配置采集的内容,可以修改modules.d目录下的配置文件system.yml:vi modules.d/system.yml

4.加载索引模板供Kibana可视化

./metricbeat setup -e# 初始化metricbeat,-e 的含义:日志直接命令行输出,而非日志

初始化成功后,会提示“Kibana dashboards successfully loaded.” 如下图所示:

5.启动Metricbeat

./metricbeat -e

也可以新建一个后台启动脚本:startup.sh,内容如下:

nohup ./metricbeat >/dev/null 2>&1 &

启动成功后,如下所示:

启动成功后,可以通过“检查数据”来确认Metricbeat是否收集到系统数据

6.查看Kibana面板

以上几步操作成功后,可以点击“系统指标面板”进入可视化面板页面

7.监控多台服务器

监控多台服务器和监控一台的原理一致,只需要在想要采集指标的服务器上安装Metricbeat即可,重复上述1-6步。

监控面板效果如下图所示:

五、小结

至此,ELK+Filebeat+Metricbeat的组合,就已实现了业务+系统(项目日志+系统指标)的监控与分析。当然ELK和Metricbeat的功能远不止以上提到的这些,系统监控也只是服务器运维中的一个小环节,如何实现业务、系统资源预警,并及时通知到相关责任人,才是运维的工作重点。

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
2月前
|
存储 数据采集 分布式计算
Hadoop-17 Flume 介绍与环境配置 实机云服务器测试 分布式日志信息收集 海量数据 实时采集引擎 Source Channel Sink 串行复制负载均衡
Hadoop-17 Flume 介绍与环境配置 实机云服务器测试 分布式日志信息收集 海量数据 实时采集引擎 Source Channel Sink 串行复制负载均衡
52 1
|
2月前
|
分布式计算 资源调度 数据可视化
Hadoop-06-Hadoop集群 历史服务器配置 超详细 执行任务记录 JobHistoryServer MapReduce执行记录 日志聚合结果可视化查看
Hadoop-06-Hadoop集群 历史服务器配置 超详细 执行任务记录 JobHistoryServer MapReduce执行记录 日志聚合结果可视化查看
46 1
|
3月前
|
存储 弹性计算 运维
自动化监控和响应ECS系统事件
阿里云提供的ECS系统事件用于记录云资源信息,如实例启停、到期通知等。为实现自动化运维,如故障处理与动态调度,可使用云助手插件`ecs-tool-event`。该插件定时获取并转化ECS事件为日志存储,便于监控与响应,无需额外开发,适用于大规模集群管理。详情及示例可见链接文档。
|
3月前
|
关系型数据库 MySQL 应用服务中间件
服务器端日志在哪里
服务器端日志在哪里
|
3月前
|
存储 监控 Linux
监控Linux服务器
详细介绍了如何监控Linux服务器,包括监控CPU、内存、磁盘存储和带宽的使用情况,以及使用各种系统监控工具如vmstat、iostat、sar、top和dstat来分析系统性能,并推荐了一些开源监控系统。
59 0
监控Linux服务器
|
4月前
|
Prometheus 监控 Cloud Native
Web服务器的日志分析与监控
【8月更文第28天】Web服务器日志提供了关于服务器活动的重要信息,包括访问记录、错误报告以及性能数据。有效地分析这些日志可以帮助我们了解用户行为、诊断问题、优化网站性能,并确保服务的高可用性。本文将介绍如何使用日志分析和实时监控工具来监测Web服务器的状态和性能指标,并提供具体的代码示例。
487 0
|
1月前
|
XML 安全 Java
【日志框架整合】Slf4j、Log4j、Log4j2、Logback配置模板
本文介绍了Java日志框架的基本概念和使用方法,重点讨论了SLF4J、Log4j、Logback和Log4j2之间的关系及其性能对比。SLF4J作为一个日志抽象层,允许开发者使用统一的日志接口,而Log4j、Logback和Log4j2则是具体的日志实现框架。Log4j2在性能上优于Logback,推荐在新项目中使用。文章还详细说明了如何在Spring Boot项目中配置Log4j2和Logback,以及如何使用Lombok简化日志记录。最后,提供了一些日志配置的最佳实践,包括滚动日志、统一日志格式和提高日志性能的方法。
213 30
【日志框架整合】Slf4j、Log4j、Log4j2、Logback配置模板
|
2月前
|
XML JSON Java
Logback 与 log4j2 性能对比:谁才是日志框架的性能王者?
【10月更文挑战第5天】在Java开发中,日志框架是不可或缺的工具,它们帮助我们记录系统运行时的信息、警告和错误,对于开发人员来说至关重要。在众多日志框架中,Logback和log4j2以其卓越的性能和丰富的功能脱颖而出,成为开发者们的首选。本文将深入探讨Logback与log4j2在性能方面的对比,通过详细的分析和实例,帮助大家理解两者之间的性能差异,以便在实际项目中做出更明智的选择。
273 3
|
2月前
|
存储 缓存 关系型数据库
MySQL事务日志-Redo Log工作原理分析
事务的隔离性和原子性分别通过锁和事务日志实现,而持久性则依赖于事务日志中的`Redo Log`。在MySQL中,`Redo Log`确保已提交事务的数据能持久保存,即使系统崩溃也能通过重做日志恢复数据。其工作原理是记录数据在内存中的更改,待事务提交时写入磁盘。此外,`Redo Log`采用简单的物理日志格式和高效的顺序IO,确保快速提交。通过不同的落盘策略,可在性能和安全性之间做出权衡。
1674 14
|
2月前
|
Python
log日志学习
【10月更文挑战第9天】 python处理log打印模块log的使用和介绍
39 0