对于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的监控的更多相关文章

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

  2. 使用 Elastic Stack 来监控和调优 Golang 应用程序

    Golang 因为其语法简单,上手快且方便部署正被越来越多的开发者所青睐,一个 Golang 程序开发好了之后,势必要关心其运行情况,今天在这里就给大家介绍一下如果使用 Elastic Stack 来 ...

  3. Elastic Stack简介和Elasticsearch--先搞清楚概念第二篇

    ELK 是三款软件的简称:分别是Elasticsearch. Logstash.Kibana组成 .在发展的过程中,又有新成员Beats等的加入,所以就形成了Elastic Stack.ELK 是旧的 ...

  4. Elastic Stack 开源的大数据解决方案

    目的 本文主要介绍的内容有以下三点: 一. Elastic Stack是什么以及组成部分 二. Elastic Stack前景以及业务应用 三. Elasticsearch原理(索引方向) 四. El ...

  5. ES 集中式日志分析平台 Elastic Stack(介绍)

    一.ELK 介绍 ELK 构建在开源基础之上,让您能够安全可靠地获取任何来源.任何格式的数据,并且能够实时地对数据进行搜索.分析和可视化. 最近查看 ELK 官方网站,发现新一代的日志采集器 File ...

  6. Elastic Stack学习

    原文链接 Elastic Stack简称ELK,在本教程你将学习如何快速搭建并运行Elastic Stack. 首先你要安装核心开源产品: Elasticsearch: Kibana: Beats: ...

  7. 集中式日志分析平台 Elastic Stack(介绍)

    一.ELK 介绍 二.ELK的几种常见架构 >>ELK 介绍<< ELK 构建在开源基础之上,让您能够安全可靠地获取任何来源.任何格式的数据,并且能够实时地对数据进行搜索.分析 ...

  8. ELK学习实验001:Elastic Stack简介

    1 背景介绍 在我们日常生活中,我们经常需要回顾以前发生的一些事情:或者,当出现了一些问题的时候,可以从某些地方去查找原因,寻找发生问题的痕迹.无可避免需要用到文字的.图像的等等不同形式的记录.用计算 ...

  9. Elastic Stack

    Elastic Stack 开发人员不能登陆线上服务器查看详细日志 各个系统都有日志,日志数据分散难以查找 日志数据量大,查询速度慢,或者数据不够实时 官网地址:https://www.elastic ...

随机推荐

  1. javaScript去重的11种方法

    前言 去重是开发和面试中经常遇到的问题,下面是总结的 11 种去重方法 方法 示例数组 var arr = [1, 2, 4, 5, 5, 2, 1, 1, 4, 6] set + 解构赋值 这种方法 ...

  2. 浏览器js调试

    经常忘记,还是需要记录一下啊 右键,检查元素 在元素DOM节点右击,复制CSS选择器 function sleep (time) { return new Promise((resolve) => ...

  3. DeiT:注意力也能蒸馏

    DeiT:注意力也能蒸馏 <Training data-efficient image transformers & distillation through attention> ...

  4. 搞懂前端二进制系列(一):🍇 认识Blob对象

    参考资料: https://juejin.cn/post/6844904183661854727 [你不知道的Blob] https://juejin.cn/post/6844904144453517 ...

  5. DateFormat类和SimpleDateFormat类介绍

    DateFormat类 java.test.DateFormat:是日期/时间格式化子类的抽象类 作用:格式化(也就是日期->文本).解析(文本->日期) 成员方法: String for ...

  6. 清北学堂 2020 国庆J2考前综合强化 Day4

    目录 1. 题目 T1 写字符串 题目描述 Sol T2 神奇的数 题目描述 Sol T3 珠子染色 题目描述 Sol T4 病毒扩散 题目描述 Sol 算法 -- 图论 1. 题目 T1 写字符串 ...

  7. 适合初学者的使用CNN的数字图像识别项目:Digit Recognizer with CNN for beginner

    准备工作 数据集介绍 数据文件 train.csv 和 test.csv 包含从零到九的手绘数字的灰度图像. 每张图像高 28 像素,宽 28 像素,总共 784 像素.每个像素都有一个与之关联的像素 ...

  8. SpringBoot 如何集成 MyBatisPlus - SpringBoot 2.7.2实战基础

    SpringBoot 2.7.2 学习系列,本节通过实战内容讲解如何集成 MyBatisPlus 本文在前文的基础上集成 MyBatisPlus,并创建数据库表,实现一个实体简单的 CRUD 接口. ...

  9. Java连接数据库从入门到入土

    Java连接数据库 一.最原始的连接数据库 是没有导入任何数据源的:只导入了一个数据库驱动:mysql-connector-java-8.0.27.jar 首先是编写db.proterties文件 d ...

  10. Spring 03: 基于xml的构造方法注入

    构造方法注入 具体有3种注入方式:通过构造方法的 a.参数名称注入 b.参数下标注入 c.默认参数顺序注入 参数名称注入 School实体类 package com.example.pojo03; p ...