【最佳实践】如何使用Metricbeat收集系统数据及Nginx服务数据

本文涉及的产品
检索分析服务 Elasticsearch 版,2核4GB开发者规格 1个月
简介: 如果您需要收集数据,但没有资源来运行资源密集型数据收集器,那么Beats会是您最佳的选择。这种无处不在(涵盖所有联网设备)的数据收集方式,能够让您快速检测到异常情况并做出反应。

Elastic Beats(其中包含Metricbeat)是一组轻量型的数据采集器,可以方便地将数据发送给Elasticsearch服务。由于是轻量型的,Beats不会产生太多的运行开销,因此,可以在硬件资源有限的设备(如 IoT 设备、边缘设备或嵌入式设备)上运行和收集数据。如果您需要收集数据,但没有资源来运行资源密集型数据收集器,那么Beats会是您最佳的选择。这种无处不在(涵盖所有联网设备)的数据收集方式,能够让您快速检测到异常情况并做出反应,例如系统范围内的问题和安全事件等。
Metricbeat可以收集并预处理系统和服务指标数据。系统指标包括运行中的进程的相关信息,以及CPU、内存、磁盘、网络利用率等方面的数据。借助丰富的模块,可以收集来自不同服务的数据,包括Kafka、Palo Alto Networks、Redis等。

阿里云Elasticsearch提供了全套Beats采集器供您使用,一键即可安装部署。阿里云Elasticsearch为您提供1个月的免费试用活动,单击此处即可免费试用。本文介绍如何通过阿里云Metricbeat采集器收集系统数据(CPU使用率、内存、磁盘IO和网络IO统计数据)和Nginx服务数据,并生成可视化图表。

前提条件

您已完成以下操作:

  • 创建阿里云Elasticsearch实例。

    详情请参见[创建阿里云Elasticsearch实例](https://help.aliyun.com/document_detail/69055.html?spm=a2c4g.11186623.2.14.15304aacqwkZwh#task-2444429)。
    
  • 开启阿里云Elasticsearch实例的自动创建索引功能。

    处于安全考虑,阿里云Elasticsearch默认不允许**自动创建索引**。但是Beats目前依赖该功能,因此如果**采集器Output**选择为**Elasticsearch**,需要开启**自动创建索引**功能,详情请参见[开启自动创建索引](https://help.aliyun.com/document_detail/134862.html?spm=a2c4g.11186623.2.15.15304aacqwkZwh#section-pcn-1xy-1l2)。
    
  • 创建阿里云ECS实例,且该ECS实例与阿里云Elasticsearch实例处于同一专有网络下。

    详情请参见[使用向导创建实例](https://help.aliyun.com/document_detail/87190.html?spm=a2c4g.11186623.2.16.15304aacqwkZwh#task-vwq-5g4-r2b)。
    
    **说明:** Beats目前仅支持Aliyun Linux、RedHat和CentOS这三种操作系统。
    
  • 在目标ECS实例上安装云助手和Docker服务。

    详情请参见[安装云助手客户端](https://help.aliyun.com/document_detail/64921.html?spm=a2c4g.11186623.2.17.15304aacqwkZwh#concept-wtg-32x-ydb)和[搭建Docker](https://help.aliyun.com/document_detail/51853.html?spm=a2c4g.11186623.2.18.15304aacqwkZwh#concept-zmh-cpt-2fb)。
    

使用Metricbeat收集系统数据

  1. 登录阿里云Elasticsearch控制台,在左侧导航栏,单击Beats数据采集中心
  2. 新建采集器区域中,单击Metricbeat
  3. 安装并配置采集器。

    详情请参见[安装采集器](https://help.aliyun.com/document_detail/146446.html?spm=a2c4g.11186623.2.20.15304aacqwkZwh#task-2384186)和[采集器YML配置](https://help.aliyun.com/document_detail/146447.html?spm=a2c4g.11186623.2.21.15304aacqwkZwh#concept-2385112),本文使用的配置如下。
    
    ![在这里插入图片描述](https://ucc.alicdn.com/images/user-upload-01/20200824115343153.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQ2Mzk2NTYz,size_16,color_FFFFFF,t_70#pic_center)
-   勾选**启用Monitoring**,系统会在Kibana控制台开启Metricbeat服务的监控。
-   勾选**启用Kibana Dashbord**,系统会在Kibana控制台中生成图表,无需额外配置Yml。由于阿里云Kibana配置在VPC内,因此需要先在Kibana配置页面开通Kibana私网访问功能,详情请参见[配置Kibana公网或私网访问白名单](https://help.aliyun.com/document_detail/122632.html?spm=a2c4g.11186623.2.23.15304aacqwkZwh#task-2444468)。
-   由于系统默认开启了system模块,因此无需进行**采集器Yml配置**。
  1. 单击下一步
  2. 选择采集器安装的ECS实例。

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-KC8LpZUe-1598239687594)(../images/p82419.png)]

    如果您是初次创建采集器,请先单击前往授权,按照提示为阿里云Elasticsearch授予访问阿里云ECS的权限。

  3. 启动采集器并查看采集器安装情况。

    1. 单击启动

      启动成功后,系统弹出**启动成功**对话框。
      
    2. 单击前往采集中心查看,返回Beats数据采集中心页面,在采集器管理区域中,查看启动成功的Metricbeat采集器。
    3. 等待采集器状态变为已生效1/1后,单击右侧操作栏下的查看运行实例
    4. 查看运行实例页面,查看采集器安装情况,当显示为心跳正常时,说明采集器安装成功。

        如果安装失败,可参见[Beats安装失败的排查与解决方法](https://help.aliyun.com/document_detail/179410.html)进行排查。
      
      ![\[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-6K2GQm8D-1598239687610)(../images/p86408.png)\]](https://ucc.alicdn.com/images/user-upload-01/20200824115558236.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQ2Mzk2NTYz,size_16,color_FFFFFF,t_70#pic_center)
      
  4. 查看结果。

    1. 登录目标阿里云Elasticsearch实例的Kibana控制台。

      具体步骤请参见[登录Kibana控制台](https://help.aliyun.com/document_detail/122668.html?spm=a2c4g.11186623.2.26.15304aacqwkZwh#task-761873)。
      
    2. 在左侧导航栏,单击Dashboard
    3. Dashboard列表中,单击[Metricbeat System] Overview,再单击对应的Metricbeat系统,查看该系统的监控仪表板。

      ![\[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ZNe06DyW-1598239687626)(../images/p86416.png)\]](https://ucc.alicdn.com/images/user-upload-01/2020082411563744.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQ2Mzk2NTYz,size_16,color_FFFFFF,t_70#pic_center)
      

使用Metricbeat收集Nginx服务数据

前提条件:开启Nginx服务的stub_status。由于ngx_http_stub_status_module模块是Nginx中用来统计Nginx服务所接收和处理的请求数量,因此需要在nginx.conf文件中启用stub_status

location /status {
           stub_status on;
           access_log off;
        }

说明: 下文中metricbeat.yml文件中配置的server_status_path要与nginx.conf中的status保持一致。

  1. 登录阿里云Elasticsearch控制台,在左侧导航栏,单击Beats数据采集中心
  2. 新建采集器区域中,单击Metricbeat
  3. 安装并配置采集器。

    详情请参见安装采集器采集器YML配置,本文使用的配置如下。

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-qW8r76bt-1598239687633)(../images/p86418.png)]

    需要在metricbeat.yml中添加如下脚本。

    metricbeat.modules:
    - module: nginx
      metricsets: ["stubstatus"]
      enabled: true
      period: 10s
      # Nginx hosts
      hosts: ["http://121.41.**.**"]
      # Path to server status. Default server-status
      server_status_path: "status"
    • 勾选启用Monitoring,系统会在Kibana控制台开启Metricbeat服务的监控。

      • 勾选启用Kibana Dashbord,系统会在Kibana控制台中生成图表,无需额外配置Yml。由于阿里云Kibana配置在VPC内,因此需要先在Kibana配置页面开通Kibana私网访问功能,详情请参见t614906.md#
  4. 单击下一步
  5. 选择采集器安装的ECS实例。

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-xQas71N7-1598239687645)(../images/p82419.png)]

    如果您是初次创建采集器,请先单击前往授权,按照提示为阿里云Elasticsearch授予访问阿里云ECS的权限。

  6. 启动并查看采集器安装情况。

    详细操作方法请参见使用Metricbeat收集系统数据

  7. 查看结果。

    1. 在浏览器中,访问<Nginx hosts>/status,打开监控页面。

      ![\[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-PUBlBcAG-1598239687666)(../images/p86420.png)\]](https://ucc.alicdn.com/images/user-upload-01/20200824115908551.png#pic_center)
      
2.  登录目标阿里云Elasticsearch实例的Kibana控制台。

    具体步骤请参见[登录Kibana控制台](https://help.aliyun.com/document_detail/122668.html?spm=a2c4g.11186623.2.36.15304aacqwkZwh#task-761873)。

3.  在左侧导航栏,单击**Dashboard**。

4.  在**Dashboard**列表中,单击**\[Metricbeat Nginx\] Overview**,查看Nginx服务的监控仪表板。

相关活动

更多折扣活动,请访问阿里云 Elasticsearch 官网

阿里云 Elasticsearch 商业通用版,1核2G ,SSD 20G首月免费
阿里云 Logstash 2核4G首月免费

image.png
image.png

相关实践学习
使用阿里云Elasticsearch体验信息检索加速
通过创建登录阿里云Elasticsearch集群,使用DataWorks将MySQL数据同步至Elasticsearch,体验多条件检索效果,简单展示数据同步和信息检索加速的过程和操作。
ElasticSearch 入门精讲
ElasticSearch是一个开源的、基于Lucene的、分布式、高扩展、高实时的搜索与数据分析引擎。根据DB-Engines的排名显示,Elasticsearch是最受欢迎的企业搜索引擎,其次是Apache Solr(也是基于Lucene)。 ElasticSearch的实现原理主要分为以下几个步骤: 用户将数据提交到Elastic Search 数据库中 通过分词控制器去将对应的语句分词,将其权重和分词结果一并存入数据 当用户搜索数据时候,再根据权重将结果排名、打分 将返回结果呈现给用户 Elasticsearch可以用于搜索各种文档。它提供可扩展的搜索,具有接近实时的搜索,并支持多租户。
相关文章
|
18天前
|
应用服务中间件 网络安全 nginx
快速上手!使用Docker和Nginx部署Web服务的完美指南
快速上手!使用Docker和Nginx部署Web服务的完美指南
|
18天前
|
应用服务中间件 nginx
树莓派安装Nginx服务结合内网穿透实现无公网IP远程访问
树莓派安装Nginx服务结合内网穿透实现无公网IP远程访问
|
18天前
|
网络协议 应用服务中间件 Linux
在Redhat 9部署nginx服务
Nginx是一个高性能、开源的HTTP和反向代理服务器,以其异步非阻塞模型处理高并发,并具有轻量级、高可靠性、良好扩展性和热部署特性。在Redhat 9.2上安装nginx-1.24.0涉及安装依赖、下载解压、源码编译、配置环境变量及启动服务。安装步骤包括:yum安装依赖包,下载解压Nginx,运行configure脚本预编译,make && make install编译安装,然后赋权、配置环境变量,关闭防火墙和SELinux,最后启动Nginx并进行浏览器测试。
489 3
|
18天前
|
存储 Ubuntu 应用服务中间件
【Nginx】centos和Ubuntu操作系统下载Nginx配置文件并启动Nginx服务详解
【Nginx】centos和Ubuntu操作系统下载Nginx配置文件并启动Nginx服务详解
29 1
|
16天前
|
应用服务中间件 nginx Docker
Docker部署Nginx以及挂载数据卷(代码详细展示)_nginx 挂载大文件卷(1)
Docker部署Nginx以及挂载数据卷(代码详细展示)_nginx 挂载大文件卷(1)
|
5天前
|
应用服务中间件 nginx
蓝易云 - 编写Dockerfile制作Web应用系统nginx镜像
这是一个基本的例子,你可能需要根据自己的应用进行调整。例如,你可能需要添加更多的配置,或者使用不同的Nginx版本。
18 2
|
16天前
|
应用服务中间件 nginx Docker
Docker部署Nginx以及挂载数据卷(代码详细展示)_nginx 挂载大文件卷
Docker部署Nginx以及挂载数据卷(代码详细展示)_nginx 挂载大文件卷
|
16天前
|
应用服务中间件 nginx Docker
Docker部署Nginx以及挂载数据卷(代码详细展示)_nginx 挂载大文件卷(3)
Docker部署Nginx以及挂载数据卷(代码详细展示)_nginx 挂载大文件卷(3)
|
16天前
|
应用服务中间件 nginx Docker
Docker部署Nginx以及挂载数据卷(代码详细展示)_nginx 挂载大文件卷(2)
Docker部署Nginx以及挂载数据卷(代码详细展示)_nginx 挂载大文件卷(2)
|
18天前
|
小程序 应用服务中间件 Linux
【Nginx】微信小程序后端开发、一个域名访问多个服务
【Nginx】微信小程序后端开发、一个域名访问多个服务
30 0