通过Metricbeat实现外部对Elastic Stack的监控
对于Elastic Stack监视的所有用户,建议使用外部数据收集。
概括一下:
关闭Elastic Stack自带的监控功能,然后使用metricbeat收集Elastic Stack数据传输到另外的Elastic Stack监控集群
背景
以前,Elastic Stack中的服务收集并传送了自己的监视数据,该进程称为内部收集进程(internal collection)。
通过引入外部收集,用户可以与各种受监视的服务(例如Elasticsearch)一起运行Metricbeat,以收集有关其运行状况和性能的监视数据并将其直接传送到监视集群。
过去,Stack Monitoring要求先将所有监视数据发送到生产集群,然后再将其转发到监视集群。 这种的设计不是我们所期望的,比如当我们的生产机器收到胁迫时,监视功能也有可能不能正常工作。
过去的设置要求通过生产集群路由监视数据

通过引入Metricbeat作为收集和运输监视数据的代理,不再需要通过生产集群路由监视数据。 现在可以由独立的轻量级监视代理程序收集监视数据,并将其直接发送到监视集群。
使用Metricbeat进行监视,可将所有数据直接路由到监视群集,而完全无需接触生产群集

实践操作
环境配置
使用两个不同的集群来完成
生产集群和监控集群

把两个集群都部署在同一个机器上,但是它们都分别位于不同的目录中。
注意:通过解压安装包的办法来进行安装,并分别在两个不同的目录中进行安装。需要按照上面的配置要求分别配置在Elasticsearch中的config/elasticsearch.yml及Kibana中的config/kibana.yml文件。另外为了能够满足监控的要求,必须对这两个集群分别配置安全账号。
分别访问端口号是5601和5602的kibana,如果能看到两个Kibana的界面,则表明我们的配置已经成功。
生产集群设置
端口为9200的集群是生产集群。为了能对它的数据进行监控,必须对它进行配置。打开端口为5601的Kibana,启用监视数据收集:
PUT _cluster/settings
{
"persistent": {
"xpack.monitoring.collection.enabled": true
}
}
可以通过如下的指令来检查修改后的结果:
GET _cluster/settings
同时禁用生产集群默认的Elasticsearch指标监控:
PUT _cluster/settings
{
"persistent": {
"xpack.monitoring.elasticsearch.collection.enabled": false
}
}
在生产集群上安装Metricbeat
关闭默认启动的system模块,开启elasticsearch-xpack模块
./metricbeat modules disable system
./metricbeat modules enable elasticsearch-xpack
为了能够监控生产集群(127.0.0.1:9200),必须把数据数据采集并发送到监控集群(127.0.0.1:9201),必须配置位于modules.d目录下的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: "123456"
xpack.enabled: true
在上面的配置中,它每隔10秒收集位于http://localhost:9200的集群的数据。在上面,采用了elastic这个超级用户,同时你也需要根据自己的密码进行修改。
为了能把数据传入到http://localhost:9201,也需要对metricbeat.yml进行配置:
output.elasticsearch:
hosts: ["localhost:9201"] # 注意使用的是监控集群的端口号
username: "elastic"
password: "123456"
在上面我们把hosts配置为localhost:9201,也就是收集的数据需要传入到这个集群里去。我们也需要根据我们自己的配置,修改上面的用户名及密码。
通过如下的命令来启动metricbeat:
./metricbeat -e
监控集群
打开监控集群的Kibana界面http://localhost:5602
打开Stack Monitoring应用。在上面可以看到被监控的生产环境的端口地址为9200的集群。
总结
可以使用同样的方法来对其它的Elastic Stack进行监控:
- Metricbeat logstash-xpack 模块监控logstash
- Metricbeat beat-xpack 模块监控beats
- Metricbeat kibana-xpack 模块监控Kibana
通过Metricbeat实现外部对Elastic Stack的监控的更多相关文章
- Beats:通过Metricbeat实现外部对Elastic Stack的监控
- 使用 Elastic Stack 来监控和调优 Golang 应用程序
Golang 因为其语法简单,上手快且方便部署正被越来越多的开发者所青睐,一个 Golang 程序开发好了之后,势必要关心其运行情况,今天在这里就给大家介绍一下如果使用 Elastic Stack 来 ...
- Elastic Stack简介和Elasticsearch--先搞清楚概念第二篇
ELK 是三款软件的简称:分别是Elasticsearch. Logstash.Kibana组成 .在发展的过程中,又有新成员Beats等的加入,所以就形成了Elastic Stack.ELK 是旧的 ...
- Elastic Stack 开源的大数据解决方案
目的 本文主要介绍的内容有以下三点: 一. Elastic Stack是什么以及组成部分 二. Elastic Stack前景以及业务应用 三. Elasticsearch原理(索引方向) 四. El ...
- ES 集中式日志分析平台 Elastic Stack(介绍)
一.ELK 介绍 ELK 构建在开源基础之上,让您能够安全可靠地获取任何来源.任何格式的数据,并且能够实时地对数据进行搜索.分析和可视化. 最近查看 ELK 官方网站,发现新一代的日志采集器 File ...
- Elastic Stack学习
原文链接 Elastic Stack简称ELK,在本教程你将学习如何快速搭建并运行Elastic Stack. 首先你要安装核心开源产品: Elasticsearch: Kibana: Beats: ...
- 集中式日志分析平台 Elastic Stack(介绍)
一.ELK 介绍 二.ELK的几种常见架构 >>ELK 介绍<< ELK 构建在开源基础之上,让您能够安全可靠地获取任何来源.任何格式的数据,并且能够实时地对数据进行搜索.分析 ...
- ELK学习实验001:Elastic Stack简介
1 背景介绍 在我们日常生活中,我们经常需要回顾以前发生的一些事情:或者,当出现了一些问题的时候,可以从某些地方去查找原因,寻找发生问题的痕迹.无可避免需要用到文字的.图像的等等不同形式的记录.用计算 ...
- Elastic Stack
Elastic Stack 开发人员不能登陆线上服务器查看详细日志 各个系统都有日志,日志数据分散难以查找 日志数据量大,查询速度慢,或者数据不够实时 官网地址:https://www.elastic ...
随机推荐
- SQLZOO练习7--Using NULL
teacher表: id dept name phone mobile 101 1 Shrivell 2753 07986 555 1234 102 1 Throd 2754 07122 555 19 ...
- Pytorch分布式训练
用单机单卡训练模型的时代已经过去,单机多卡已经成为主流配置.如何最大化发挥多卡的作用呢?本文介绍Pytorch中的DistributedDataParallel方法. 1. DataParallel ...
- 如何用车辆违章查询API接口进行快速开发
最近公司项目有一个车辆违章查询显示的小功能,想着如果用现成的API就可以大大提高开发效率,所以在网上的API商店搜索了一番,发现了 APISpace,它里面的车辆违章查询API非常符合我的开发需求. ...
- VGA显示原理
VGA显示是图像处理的基础,是一开始广泛使用的显示器,大部分机器采用VGA接口驱动,所以后来的显示器需要用VGA-xxx转接口来匹配. 用FPGA来驱动VGA,并不适用于显示动态(如手机显示,GUI) ...
- CodeQL使用流程
前言 好久没用CodeQL了,看了自己之前写的文章发现竟然没有做过相关记录 然后就不知道怎么用了hhh 使用流程 0x1 生成数据库 我们拿到一套源码,首先需要使用CodeQL生成数据库 执行命令: ...
- vue使用vuex报错 "export 'watch' was not found in 'vue'
问题 安装Vuex后报错"export 'watch' was not found in 'vue' 解决方法 如果你的vue版本是 2.X ,将vuex升到 3.X.X 就能够解决 npm ...
- AI全流程开发难题破解之钥
摘要:通过对ModelArts.盘古大模型.ModelBox产品技术的解读,帮助开发者更好的了解AI开发生产线. 本文分享自华为云社区<[大厂内参]第16期:华为云AI开发生产线,破解AI全流程 ...
- css基础03
就近原则执行粉色.而不是全覆盖,只有样式冲突的地方才会覆盖. 会执行粉色和12px.后来者居上 高度宽度内外边距这些不会继承. 子元素会继承行高, 1.5是行高是字体大小的1.5倍的意思. 有了!im ...
- 用JavaScript写输入框的校验
//Script function cheack(){ var kong = ''//获取值不能放外面,不然一直为空 kong = document.getElementById('name').va ...
- 抖音 滑块验证方案 s_v_web_id 参数分析
本文所有教程及源码.软件仅为技术研究.不涉及计算机信息系统功能的删除.修改.增加.干扰,更不会影响计算机信息系统的正常运行.不得将代码用于非法用途,如侵立删! 抖音web端 s_v_web_id 参数 ...