【最佳实践】如何使用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可以用于搜索各种文档。它提供可扩展的搜索,具有接近实时的搜索,并支持多租户。
相关文章
|
17天前
|
应用服务中间件 网络安全 nginx
快速上手!使用Docker和Nginx部署Web服务的完美指南
快速上手!使用Docker和Nginx部署Web服务的完美指南
|
22天前
|
应用服务中间件 nginx
树莓派安装Nginx服务结合内网穿透实现无公网IP远程访问
树莓派安装Nginx服务结合内网穿透实现无公网IP远程访问
|
4月前
|
负载均衡 Ubuntu 应用服务中间件
【Linux】Web服务之Nginx服务
【Linux】Web服务之Nginx服务
42 0
|
17天前
|
存储 Ubuntu 应用服务中间件
【Nginx】centos和Ubuntu操作系统下载Nginx配置文件并启动Nginx服务详解
【Nginx】centos和Ubuntu操作系统下载Nginx配置文件并启动Nginx服务详解
22 1
|
12天前
|
负载均衡 网络协议 应用服务中间件
【亮剑】在Linux中构建高可用性和高性能网络服务的负载均衡工具HAProxy、Nginx和Keepalived。
【4月更文挑战第30天】本文介绍了在Linux中构建高可用性和高性能网络服务的负载均衡工具HAProxy、Nginx和Keepalived。HAProxy是一个高性能的开源TCP和HTTP负载均衡器,适合处理大量并发连接;Nginx是一个多功能Web服务器和反向代理,支持HTTP、HTTPS和TCP负载均衡,同时提供缓存和SSL功能;Keepalived用于监控和故障切换,通过VRRP实现IP热备份,保证服务连续性。文中详细阐述了如何配置这三个工具实现负载均衡,包括安装、配置文件修改和启动服务,为构建可靠的负载均衡系统提供了指导。
|
2月前
|
NoSQL 关系型数据库 MySQL
Docker安装详细步骤及相关环境安装配置(mysql、jdk、redis、自己的私有仓库Gitlab 、C和C++环境以及Nginx服务代理)
Docker安装详细步骤及相关环境安装配置(mysql、jdk、redis、自己的私有仓库Gitlab 、C和C++环境以及Nginx服务代理)
251 0
|
2月前
|
安全 应用服务中间件 nginx
|
2月前
|
域名解析 网络协议 应用服务中间件
nginx-ingress通过ipv6暴露服务,并在nginx ingress日志中记录客户端真实ipv6的ip地址
本文主要通过阿里云提供的clb和nlb来实现,建议是提前创建好双栈的vpc和vsw(使用clb可以不用双栈vpc和vsw)
200 1
|
3月前
|
应用服务中间件 nginx
M1系统搭建nginx,非homebrew搭建方式(踩坑明细)
M1系统搭建nginx,非homebrew搭建方式(踩坑明细)
41 0
|
3月前
|
缓存 应用服务中间件 网络安全
nginx服务升级配置
nginx服务升级配置