ELK Stack 之 Beats 简介

jls1978 8年前
   <p>Beats 是ELK Stack技术栈中负责单一用途数据采集并推送给Logstash或Elasticsearch的轻量级产品。</p>    <h2>Filebeat</h2>    <p>Filebeat是一个轻量级日志收集工具。官网介绍说,当有几十,几百甚至上千台服务器、容器、虚拟机生成日志时,Filebeat提供一种轻量级简单的方式转发和收集日志。</p>    <p>健壮性</p>    <p>filebeat异常中断重启后会继续上次停止的位置。(通过${filebeat_home}\data\registry文件来记录日志的偏移量)</p>    <p>智能调节传输速度,防止logstash、elasticsearch过载</p>    <p>Filebeat使用压力敏感协议(backpressure-sensitive)来传输数据,在logstash忙的时候,Filebeat会减慢读取-传输速度,一旦logsta恢复,则Filebeat恢复原来的速度。</p>    <p><img src="https://simg.open-open.com/show/d60f2ae1327b09f9d0c2005081a4c10a.png"></p>    <h2>Metricbeat</h2>    <p>Metricbeat是一个轻量级的系统级性能指标监控工具。收集CPU,内存,磁盘等系统指标和Redis,nginx等各种服务的指标</p>    <p>简化系统监控</p>    <p>通过在Linux,Windows,Mac上部署Metricbeat,可以收集cpu,内存,文件系统,磁盘IO,网络IO等统计信息</p>    <p><img src="https://simg.open-open.com/show/6604b9bdfd9a7019cd264efd41354712.gif"></p>    <p>多模块监控支持</p>    <p>支持采集Apache, NGINX, MongoDB, MySQL, PostgreSQL, Redis, and ZooKeeper等服务的指标。零依赖,只需要在配置文件中启用即可</p>    <p><img src="https://simg.open-open.com/show/ab5f0f21a3c308d7492ca7115d083c9c.jpg"></p>    <p>监控容器</p>    <p>如果你使用Docker管理你的服务。可以在该主机上单独起一个Metricbeat容器,他通过从proc文件系统中直接读取cgroups信息来收集有关Docker主机上每个容器的统计信息。不需要特殊权限访问Docker API</p>    <p>无缝接入ELK</p>    <p>Metricbeats是ELK Stack全家桶中的一员,可以和ELK无缝协同工作。例如使用Logstash二次处理数据,用Elasticsearch分析,或者用Kibana创建和共享仪表盘。</p>    <h2>Packetbeat</h2>    <p>Packetbeat是一个轻量级的网络数据包分析工具。如果你用过wireshark,fiddler会很好理解数据包分析的概念,如果没用过,那你可以参考Chrome的dev tools的Network的功能。Packetbeat可以通过抓包分析应用程序的网络交互。并且将抓到的数据发送到Logstash或者Elasticsearch。</p>    <p>实时监控你的服务和应用程序</p>    <p>Packetbeat 轻松的实时监控并解析像HTTP这样的网络协议。以了解流量是如何经过你的网络。Packetbeat是被动的,不增加延迟开销,无代码侵入。不干涉其他基础设施</p>    <p>支持多种应用层协议</p>    <p>Packetbeat是一个库,支持多种应用程序层协议,如下所示</p>    <p>可以搜索和分析网络流量</p>    <p>Packetbeat可以让你实时在目标服务器上进行抓包-解码-获取请求和响应-展开字段-将json格式的结果发送到Elasticsearch</p>    <p>无缝接入ELK</p>    <p>Packetbeat是ELK Stack全家桶中的一员,可以和ELK无缝协同工作。例如使用Logstash二次处理数据,用Elasticsearch分析,或者用Kibana创建和共享仪表盘。</p>    <h2>Winlogbeat</h2>    <p>Winlogbeat是一个轻量级的Windows事件日志收集工具。将Windows事件发送到Elasticsearch或者Logstash</p>    <p>从任何Windows事件日志通道(Channel)读取</p>    <p>如果你有Windows服务器的话,其实可以从Windows事件日志中看到很多东西。例如,登陆(4624),登陆失败(4625),插入USB便携设备(4663)或者新装软件(11707)。WinlogBeat可以配置从任何事件日志通道读取并且结构化提供原始事件数据。使得通过Elasticsearch过滤和聚合结果变得很容易。</p>    <p><img src="https://simg.open-open.com/show/b7e05fc7bc77785f99af2b099f25dd9d.jpg"></p>    <p>无缝接入ELK</p>    <p>Winlogbeat是ELK Stack全家桶中的一员,可以和ELK无缝协同工作。例如使用Logstash二次处理数据,用Elasticsearch分析,或者用Kibana创建和共享仪表盘。</p>    <h2>Heartbeat</h2>    <p>Heartbeat 是一个心跳检测工具,主要监控服务的可用性。监控给定的地址是否可用(官网原话:对于给定的URL列表, <strong>Heartbeat就问一句,还活着没?活着吱一声。。。</strong> ) 可以结合ELK Stack其他产品做进一步的分析</p>    <p>容易上手,配置简单</p>    <p>不管你是测试同主机服务还是其他网络服务,Heartbeat都可以很轻松的生成正常运行时间和响应时间数据。而且修改配置不需要重启Heartbeat</p>    <p>Ping你想Ping的任何东西</p>    <p>Heartbeat通过ICMP,TCP,和HTTP进行ping,也支持TLS,身份验证(authentication ),和代理(proxies)。由于简单的DNS解析,你可以监控所有负载均衡的服务(原文:You can monitor all the hosts behind a load-balanced server thanks to simple DNS resolution)</p>    <p>动态添加和删除目标</p>    <p>现如今基础设施,服务和主机经常动态调整。Heartbeat可以修改配置文件后自动加载(原文:Heartbeat makes it easy to automate the process of adding and removing monitoring targets via a simple, file-based interface.)</p>    <p>无缝接入ELK</p>    <p>Heartbeat是ELK Stack全家桶中的一员,可以和ELK无缝协同工作。例如使用Logstash二次处理数据,用Elasticsearch分析,或者用Kibana创建和共享仪表盘。</p>    <p> </p>    <p>来自:https://anjia.ml/2017/03/02/elk-stack-beats/</p>    <p> </p>