本文档以使用Metricbeat采集Mac电脑的指标信息,投递到阿里云Elasticsearch上,并在Kibana中生成对应Dashborard的场景为例,为您介绍通过Beats和阿里云Elasticsearch搭建可视化运维系统的方法。

教程概述

Beats平台集合了多种单一用途的数据采集器,这些采集器安装后可用作轻量型代理,从成百上千或成千上万台机器向Logstash或Elasticsearch发送数据。

Metricbeat是一个轻量级的指标采集器,用于从系统和服务中收集指标。从CPU到内存,从Redis到Nginx,Metricbeat能够以一种轻量型的方式,输送各种系统和服务的统计数据。

本案例为您演示如何使用Metricbeat采集一台Mac电脑的指标信息,投递到阿里云Elasticsearch上,并且在Kibana中生成对应的Dashborard,整体步骤如下。
  1. 准备工作
  2. 配置阿里云Elasticsearch
  3. 配置Metricbeat
  4. 在Kibana中查看Dashboard
说明 您也可以参考本案例的步骤,使用Metricbeat采集一台Linux系统或Windows系统电脑的指标信息,投递到阿里云Elasticsearch上。

注意事项

本案例使用了0.0.0.0/1,128.0.0.0/1的Elasticsearch实例公网白名单,这个配置将导致您的阿里云Elasticsearch基本上完全暴露在公网中,在进行同样配置前请先评估是否可以接受这个风险。

准备工作

在开始本案例前,您需要完成以下准备工作。
  • 购买阿里云Elasticsearch实例
    说明 如果您需要通过阿里云Elasticsearch实例的内网地址来访问,还需要先购买一台与阿里云Elasticsearch实例相同VPC和Region的阿里云ECS实例进行访问操作。
  • 下载Metricbeat。

配置阿里云Elasticsearch

  1. 登录阿里云Elasticsearch控制台,单击实例ID > 安全配置
  2. 打开公网地址开关,待配置生效后,单击公网地址访问白名单右侧的修改,将您MAC机器对外的公网IP配置到公网地址访问白名单中。配置ES公网地址访问白名单
    注意 如果您使用的是公司或WIFI等网络,需要将公网出口的跳板机IP配置进去。如果获取不到,建议配置0.0.0.0/1,128.0.0.0/1来开放尽可能多的IP(本篇以此为例)。需要特别注意这个配置将导致您的阿里云Elasticsearch基本上完全暴露在公网中,需要先评估下是否可以接受这个风险。
  3. 返回实例的基本信息页面,获取您阿里云Elasticsearch实例的公网地址备用。获取ES实例的公网地址
  4. 切换到ES集群配置页面,单击YML文件配置右侧的修改配置,将自动创建索引设置为允许自动创建索引允许自动创建索引
    注意 此配置需要重启您的Elasticsearch实例才能生效,为保证您的业务不受影响,请谨慎操作。
  5. 勾选该操作会重启实例,请确认后操作,单击确认

    重启过程中,可在任务列表中查看重启进度。重启完成后,即可完成Elasticsearch实例的配置。

配置Metricbeat

  1. 将在准备工作中下载的Metricbeat安装包解压缩,并进入Metricbeat文件夹。进入Metricbeat文件夹
  2. 打开并编辑metricbeat.ymlElasticsearch output部分内容,并取消对应内容的注释状态。编辑metricbeat.yml文件
    参数 说明
    hosts 为阿里云Elasticsearch实例的公网/内网地址(本文以阿里云Elasticsearch实例的公网地址为例)。
    protocol 需要配置为http
    username 默认是elastic
    password 为购买阿里云Elasticsearch实例时填写的登录密码。
  3. 执行以下命令,启动Metricbeat。
    ./metricbeat -e -c metricbeat.yml
    启动成功后,Metricbeat就开始向您的阿里云Elasticsearch推送数据了。Metricbeat启动成功状态

在Kibana中查看Dashboard

进入您阿里云Elasticsearch实例的Kibana控制台,单击左侧导航栏的Dashboard,进入Dashboard页面查看相关信息。
说明 如果Kibana控制台中没有创建过Index Patterns,切换到Dashboard页面后可能无法正常展示对应信息。此时可在Kibana控制台的Management页面单击Index Patterns,并按照提示创建一个Index Patterns,再切换到Dashboard页面查看对应内容。
  • 各类相关指标列表。各类相关指标列表
  • Metricbeat-cpu指标信息。Metricbeat-cpu指标信息
    说明 您可以将数据定义成5s刷新一次,并且可以生成对应的报表,接入WebHook对异常进行告警。

本案例参考文档:借助Beats快速搭建可视化运维系统