(一)Windows 环境 Kafka 安装演示
最近对流式计算很感兴趣,便参考网上有关Spark Streaming的文档实践了一番,发现对流式数据的处理并没有想象中的难,这里把实践的整个过程记录下来,以便后续复习。
说起流式计算,就不能不提Kafka,那么这货是个什么东西呢?去翻阅Kafka的说明文档,发现原来就是一个消息队列(消息中间件),存储生产者产生的数据供消费者消费。
实践的环境:
- win7 64位
- spark 2.1.0
- kafka 2.10
- zookeeper 3.4.8
由于只是简单的实践,所以没有用到分布式环境,只是在单机上进行。如果想随便玩玩,知道流式计算的流程,单机完全ok。
1 、Windows下 zookeeper 的安装
我这里安装的是3.4.8版本的zookeeper,可以到zookeeper 下载地址下载对应的版本。
下载之后,将其解压到相应的文件夹下,我这里是解压到了D:盘下,修改名称为zk:
进入到zk目录下,新建data和log文件夹用来存放相应的文件:
接下来,就是最最关键的一步操作了,进入到zookeeper目录下的conf文件夹,复制zoo_sample文件并命名为zoo,将data和log文件的路径添加到zoo文件中:
dataDir=D:\zk\data dataLogDir=D:\zk\log
添加完保存文件,进入到D:\zk\zookeeper\bin目录下,打开命令行窗口,执行:
zkServer.cmd
执行成功会出现上面的画面,很简单对吧~~
2 、 Windows下 Kafka 的安装
我这里安装的0.10版本的kafka,对应的scala是2.10版本,Kafka 下载地址。
下载到本地,解压到D:目录下,改名为kafka。让我们来看一下,kafka目录下都有些什么:
其中logs是我自己新建的文件,用来存放log文件,你的可能没有这个文件。
在config路径下,修改zookeeper.properties文件,添加dataDir的路径:
dataDir=D:\zk\data
在config路径下,修改server.properties文件,添加log.dirs的路径:
log.dirs=D:\kafka\logs
到此为止,kafka在Win 7单机环境上的安装就完成了,是不是超级简单?
进入到D:\kafka\bin\windows路径下,执行命令行(zookeeper确保是运行状态!!):
kafka-server-start.bat D:\kafka\config\server.properties
运行成功会有如下显示:
至此,已经在win7上安装了单机的kafka,可以继续后面的实践了。
3 、 Kafka命令行测试
接下来,会演示producer和consumer是如何进行工作的。首先,producer会先创建一个topic(不要关闭之前kafka和zookeeper的cmd窗口):
在D:\kafka\bin\windows路径下,重新打开命令行界面,输入以下命令:
- 创建一个名为test的topic
kafka-topics.bat –create –zookeeper localhost:2181 –replication-factor 1 –partitions 1 –topic test
- 查看topic
kafka-topics.bat –list –zookeeper localhost:2181
可以看到图上第一条语句执行后,显示test这个topic创建成功。第二条语句执行后,可以看到目前存在的topic。
创建一个producer然后输入一些数据:
kafka-console-producer.bat –broker-list localhost:9092 –topic test
再创建一个consumer用来接收实时输入的数据:
kafka-console-consumer.bat –bootstrap-server localhost:9092 –topic test –from-beginning
大功告成,consumer已经从producer接收到了实时的两条数据!
更详细的命令行工具可以参考Apache Kafka 说明文档