(一)Beats是什么?
Beats是elasticsearch公司开源的一款采集系统监控数据的代理agent,它可以发送不同类型的数据到elasticsearch中,也可以行将采集完的数据发送到logstash中转,然后在推送到elasticsearch中,目前还在发展中,与成熟的监控系统zabbix和ganglia相比就界面看起来爽了点,系统功能还是有点弱,不过与elasticsearch全文搜索框架集成后,数据查询过滤功能非常强悍,还是非常有前途
的,在ELKB中,各个框架角色如下:
Beats:负责收集系统数据,可以直接发送到es中,也可以通过logstash中转
logstash:收集日志,为beats提供中转功能
Elasticsearch:提供数据存储,服务端聚合计算功能
Kibana:提供炫丽的可视化图形展示并且作为elasticsearch的搜索的小清新客户端
(二)Beats的组成:
到目前elasticsearch已经提供的有:
(1)Packetbeat 网络流量监控采集
(2)Topbeat 类似linux top的监控采集
(3)Filebeat 文件log的监控采集
(4)WinlogBeat windows系统的log监控采集
(5)自定义beat ,如果上面的指标不能满足需求,elasticsarch公司鼓励开发者
使用go语言,扩展实现自定义的beats指标,只需要按照模板,实现监控的输入,日志,输出等即可
(三)Beats的基本拓扑:
(四)如何安装使用
散仙假设你的ELK集群已经搭建完毕,如果没有,那么请参考这篇文章http://www.iteye.com/blogs/subjects/elk_stack
本篇只介绍一种beats的安装方法,其他几种大同小异,需要监控多少台机器,就安装多少台机器即可
(A)安装初始化包
- (1)安装依赖库 sudo yum install libpcap
- (2)wget https://download.elastic.co/beats/packetbeat/packetbeat-1.1.2-x86_64.rpm
- (3)sudo rpm -vi packetbeat-1.1.2-x86_64.rpm
- 第二步如果下载速度特别慢,可以自己使用vpn下载完,上传linux,进行安装
(B)配置elasticsearch地址或者Logstash(可选)采集的beats指标
- sudo vi /etc/packetbeat/packetbeat.yml
- 或者,配置logstash作为中转不直接写入elasticsearch
(C)配置elasticsearch模板
- curl -XPUT 'http://192.168.1.187:9200/_template/packetbeat' -d@/etc/packetbeat/packetbeat.template.json
(D)启动Packetbeat 指标收集进程
- //启动beats
- sudo /etc/init.d/packetbeat start
- //关闭
- sudo /etc/init.d/packetbeat stop
- //测试:
- curl http://www.elastic.co/ > /dev/null
- curl -XGET 'http://localhost:9200/topbeat-*/_search?pretty'
查看数据采集:
(五)安装 kibana dashboards 的模板数据
- 1, 下载 wget http://download.elastic.co/beats/dashboards/beats-dashboards-1.1.1.zip
- 2, 解压 unzip beats-dashboards-1.1.1.zip
- 3, 进入 cd beats-dashboards-1.1.1/
- 4, 执行 ./load.sh 或者 ./load.sh -url http://192.168.33.60:9200
- 将dashboard的模板配置数据存进elasticsarch里面
(六)配置kibana dashboards
1,选择索引模块
2,选择仪表盘
3,选择Packetbeat Dashboard 添加监控指标,就可以看见监控的走势图了,最上面有个搜索框,可以任意搜索你监控的机器节点,最后晒几张比较炫的图,也不算华而不实
官网资料:
https://www.elastic.co/guide/en/beats/libbeat/current/index.html
转自:http://qindongliang.iteye.com/blog/2280659