总体思路如下:将数据存放在虚拟机hadoop002和hadoop003,从虚拟机hadoop001来收集其它两台虚拟机的数据再存放到虚拟机Hadoop001的hbase上
进入官网查看hbase的采集方案,查看官网,进入user guide,查看hbase的sink方案
查看hbasesinks
查看方案,使用hbase2版本的采集方案
编写虚拟机hadoop001,hadoop002和hadoop003的flume采集方案,将数据存放在hadoop002和hadoop003,从虚拟机hadoop001来收集其它两台虚拟机的数据再存放到虚拟机Hadoop001的hbase上
Hadoop001的采集方案:
Hbase2使用org.apache.flume.sink.hbase2.RegexHBase2EventSerializer来采集到hbase,连接其它两台虚拟机的5555端口来接受数据
Hadoop002的采集方案:
使用端口5555
Hadoop003的采集方案:
开始数据的采集
启动hadoop集群,启动zookeeper,再启动hbase
先开启001的flume再开启002和003的flume,开启命令如下:
bin/flume-ng agent --conf conf --conf-file conf/flume-conf.properties --name a1 -Dflume.root.logger=INFO,console
bin/flume-ng agent --conf conf --conf-file conf/flume-conf.properties --name a2 -Dflume.root.logger=INFO,console
bin/flume-ng agent --conf conf --conf-file conf/flume-conf.properties --name a3 -Dflume.root.logger=INFO,console
可以看到,虚拟机002和003 flume的r1和k1都已经start
再使用./weblog-shell.sh开启虚拟机002和003脚本写入数据
查看导入hbase的数据