博客
关于我
如何在Ubuntu 14.04上利用Topbeat与ELK收集基础设施指标
阅读量:240 次
发布时间:2019-03-01

本文共 2930 字,大约阅读时间需要 9 分钟。

系列教程:Topbeat与ELK堆栈集成指南

本教程属于系列五篇中的第二篇,旨在帮助您将服务器数据发送至Elasticsearch实例,并通过ELK堆栈(Elasticsearch、Logstash、Kibana)进行可视化分析。Topbeat作为Beats系列方案之一,专注于收集服务器数据,包括CPU、内存使用情况及处理活动信息。

先决条件

在开始操作前,您需要具备以下条件:

  • 已设立一套完整的ELK堆栈。如需详细操作步骤,请参考相关文档。
  • 拥有至少一台用于作为系统指标收集目标的Ubuntu 14.04服务器。
  • 在ELK服务器上加载Kibana仪表板

    如果您已经完成了ELK堆栈的设置,可以直接跳过此步骤。Kibana提供了多种示例仪表板和索引模型,帮助用户快速上手。尽管本教程中无需使用仪表板,但建议将其加载至ELK服务器,以利用其提供的Filebeat索引模型。

    下载并安装示例仪表板

  • 进入主目录:
    cd ~
  • 使用curl下载示例仪表板归档文件:
    curl -L -O
  • 安装unzip软件包:
    sudo apt-get -y install unzip
  • 解压归档文件:
    unzip beats-dashboards-*.zip
  • 执行加载命令:
    cd beats-dashboards-*./load.sh
  • 此时,您已经成功加载了Elasticsearch中的目录模型,包括 [packetbeat-], [topbeat-], [filebeat-][winlogbeat-] 四个索引。

    在Elasticsearch中加载Topbeat索引模板

    为了利用Topbeat收集数据,需要加载相应的索引模板。

  • 下载Topbeat索引模板:
    curl -O
  • 使用curl加载模板到Elasticsearch:
    curl -XPUT ‘’ -d@topbeat.template.json
  • 现在,ELK服务器已具备接收Topbeat数据的能力。接下来,前往客户服务器配置Topbeat。

    设置Topbeat(添加客户服务器)

    在作为指标收集目标的Ubuntu或Debian服务器上执行以下步骤:

    复制SSL证书

  • 确保客户服务器已有ELK服务器的SSL证书:
    scp /etc/pki/tls/certs/logstash-forwarder.crt user@client_server_private_address:/tmp
  • 在客户服务器创建证书目录并复制证书:
    sudo mkdir -p /etc/pki/tls/certssudo cp /tmp/logstash-forwarder.crt /etc/pki/tls/certs/
  • 安装Topbeat软件包

  • 打开Beats源列表文件:
    sudo vi /etc/apt/sources.list.d/beats.list
  • 确保文件中包含以下内容(如不存在,请添加):
    deb https://packages.elastic.co/beats/apt stable main
  • 更新软件包列表:
    sudo apt-get update
  • 安装Topbeat:
    sudo apt-get install topbeat
  • 配置Topbeat

  • 打开Topbeat配置文件:
    sudo vi /etc/topbeat/topbeat.yml
  • 确保输入部分和输出部分已正确配置:
    input:  - configfile: /etc/topbeat/topbeat.ymloutput:  - elasticsearch: host: "ELK_server_private_IP:5044"
  • 3.取消注释Logstash输出部分并修改主机地址:

    # logstash: # hosts: ["localhost:5044"]hosts: ["ELK_server_private_IP:5044"]

    4.取消注释TLS配置并指定证书路径:

    # tls: certificate_authorities: ["/etc/pki/tls/certs/logstash-forwarder.crt"]
    1. 保存并退出。
    2. 重启Topbeat服务

    3. 重启服务:
      sudo service topbeat restart
    4. 设置服务默认启动:
      sudo update-rc.d topbeat defaults 95 10
    5. 现在,Topbeat已开始向ELK服务器发送系统指标数据。重复此章节,确保所有监控对象正常运行。

      测试Topbeat安装

      在ELK服务器上执行以下命令验证数据接收情况:

      curl -XGET ‘*/_search?pretty’

      预期输出应显示Topbeat数据,如:

      {  "_index": "topbeat-2016.02.01",  "_type": "process",  "_id": "AVKeLSdP4HKUFv4CjZ7K",  "_score": 1.0,  "_source": {    "@timestamp": "2016-02-01T18:51:43.937Z",    "beat": {      "hostname": "topbeat-01",      "name": "topbeat-01"    },    "count": 1,    "proc": {      "cpu": {        "user": 0,        "user_p": 0,        "system": 50,        "total": 50,        "start_time": "12:54"      },      "mem": {        "size": 0,        "rss": 0,        "rss_p": 0,        "share": 0      },      "name": "jbd2/vda1-8",      "pid": 125,      "ppid": 2,      "state": "sleeping"    },    "type": "process",    "@version": "1",    "host": "topbeat-01"  },  "type": "process",  "@version": "1",  "host": "topbeat-01"}

      如果数据未接收,需检查配置是否正确。

      接入Kibana

      在浏览器中访问ELK服务器的公共IP地址或FQDN,使用ELK凭证登录。前往Index Patterns菜单,选择 [topbeat]-YYY.MM.DD 索引查看数据。

      点击Dashboard后,选择Load Saved Dashboard图标,导航至Topbeat仪表板查看收集的指标。

      总结

      通过以上步骤,您已成功将系统指标数据发送至ELK堆栈,利用Kibana进行可视化分析。内容来源:Mitchell Anicas,翻译:diradw

    转载地址:http://lbdt.baihongyu.com/

    你可能感兴趣的文章
    nginx 配置https(一)—— 自签名证书
    查看>>
    nginx 配置~~~本身就是一个静态资源的服务器
    查看>>
    Nginx 配置服务器文件上传与下载
    查看>>
    Nginx 配置清单(一篇够用)
    查看>>
    Nginx 配置解析:从基础到高级应用指南
    查看>>
    Nginx 集成Zipkin服务链路追踪
    查看>>
    nginx 集群配置方式 静态文件处理
    查看>>
    nginx+php的搭建
    查看>>
    nginx+tomcat+memcached
    查看>>
    Nginx+Tomcat实现动静分离
    查看>>
    nginx+Tomcat性能监控
    查看>>
    nginx+uwsgi+django
    查看>>
    nginx+vsftp搭建图片服务器
    查看>>
    Nginx-http-flv-module流媒体服务器搭建+模拟推流+flv.js在前端html和Vue中播放HTTP-FLV视频流
    查看>>
    nginx-vts + prometheus 监控nginx
    查看>>
    nginx: [emerg] getpwnam(“www”) failed 错误处理方法
    查看>>
    nginx:Error ./configure: error: the HTTP rewrite module requires the PCRE library
    查看>>
    Nginx、HAProxy、LVS
    查看>>
    Nginx下配置codeigniter框架方法
    查看>>
    Nginx中使用expires指令实现配置浏览器缓存
    查看>>