你想了解你的Docker容器里面都发生了些什么事情么?你有没想过使用一个合适的Beat去读取Docker的指标而后把这些信息都存放到ElasticSearch?那么Dockbeat这个方案可能挺适合你的。服务器
为了能使得资源被最大化的利用,咱们会把应用部署到基于Docker的大数据基础设施里面。到了2015年,咱们第一次使用ELK去监控咱们整个环境,包括主机、网络、用户等等。惋惜的是咱们却没有特别好的办法去监控Docker容器,直到Beats项目发布以后网络
Beats容许咱们构造一个很是轻量级的数据传输客户端,而后可以很容易的把数据传输到ElasticSearch,而后经过Kibana进行可视化分析。而后,咱们就想,要不建立一个咱们本身的Beat来采集Docker的信息吧性能
从Docker1.5开始,Docker提供了一些新的API能够帮助咱们采集Docker的指标信息。这个API可以实时的收集CPU、内存、网络、磁盘IO等性能指标。因此咱们就有办法基于Beats和Docker新提供的API建立出咱们本身的Beat:Dockbeat了大数据
#DockBeat是如何运做的日志
Dockbeat是用于监控Docker的,它从Docker暴露出来的API进行指标的收集,而后把他们送到LogStash或者直接送到ES。因为它很是轻量,因此对服务器的性能影响很是小,收集完后就能在Kibana上面进行可视化分析了。DockBeat提供了五种不一样类型的信息收集功能:blog
#如何使用Dockbeat图片
和其余Beat同样,把配置文件配好,直接启动就行,Beat这点却是挺不错的内存
原文:https://www.elastic.co/blog/dockbeat-a-new-addition-to-the-beats-community资源
#延伸部署
DockBeat在收集指标这个没什么特别的,反正Docker给了API调用就是了,可是对于它究竟怎么获取的日志,少年我仍是比较感兴趣的。毕竟Docker自带的logdriver实在。。。太难用了(1.08),性能很差,指定文件也麻烦,多行日志什么的竟然都没的配置。而后看了半天以后。。。那个log指的是收集dockbeat本身的错误日志。。那就是,并无什么用=。=