对于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. Linux教我们丢掉键盘

    前言 本篇博客并非博主编写,而是跟着黑马教程整理的. 因为Linux都是一些操作命令,也不想深入研究,所以就用此博客记录一下平时的基本知识,方便日后查找. 一.常用命令 命令 对应英文 作用 ls l ...

  2. 输入一个url全过程详解

    1. 用户在浏览器中输入url,浏览器接收到url. 2.浏览器接收到这个url之后,会根据这个url会先查看缓存,如果有缓存且没有过期的话直接提供给客户端,完成页面渲染. 3.否则浏览器就会通过DN ...

  3. GitHub中Fork来的仓库如何进行双向更新

    一.做点贡献 想对别人的某个仓库"做点贡献"怎么办? 1. Fork该仓库 首先Fork该仓库,本文以git-learn这个仓库为例 这样自己的账号下就会出现这样一个仓库 2. C ...

  4. Linux服务器挂载windows共享文件夹和nas存储

    需求: 公司有3.4T多的小文件需要copy到公司内部的nas存储中,由于小文件太多,数据量太大,整盘copy时速度极慢:只能人工对3.4T多的数据分批次的导入,这对于搞计算机的来说是不能忍受的,于是 ...

  5. sql语句实现每日资格设置

    CREATE TABLE 'iDayAuth'( 'openid' VARCHAR(16) NOT NULL , 'iStamp' INT(10) NOT NULL, 'iDayAuth' SMALL ...

  6. Less混合结合:nth-child()选择器的高级玩法

    1.先看效果图 上图中比较麻烦的是每块的底色处理,下面看怎么处理 2.:nth-child(n) 选择器 匹配属于其父元素的第 N 个子元素,不论元素的类型. n 可以是数字.关键词或公式. 数字:最 ...

  7. 技术分享 | MySQL Group Replication集群对IP地址的限制导致的一些问题与解决办法

    GreatSQL社区原创内容未经授权不得随意使用,转载请联系小编并注明来源. 1. 遇到问题 测试人员小玲准备在docker环境中部署MGR集群进行一些测试,她有三个容器,容器IP分别是: 172.3 ...

  8. Docker容器网络配置

    Docker容器网络配置 1.Linux内核实现名称空间的创建 1.1 ip netns命令 可以借助ip netns命令来完成对 Network Namespace 的各种操作.ip netns命令 ...

  9. Linux 08 磁盘管理

    参考源 https://www.bilibili.com/video/BV187411y7hF?spm_id_from=333.999.0.0 版本 本文章基于 CentOS 7.6 概述 Linux ...

  10. 项目导入 Vue Router 4 依赖包流程

    下载 Vue Router 4 的依赖包: npm install vue-router@4 新建 router.ts 文件,导入 createRouter 以及 createWebHashHisto ...