0-背景
最近业务需要搭建一套实时故障诊断系统。数据从传感器来,然后通过http流或者websocket等协议推送,然后生产到kafka,最后使用机器学习模型,进行消费。
整个流程是这样子的,里面一些具体的内容,还不不断的摸索和完善。
这两天,搭建了一个单机版的kafka,然后利用python的kafka API跑了个简单的例子。
下面先说下kafka的部署问题。
1-kafka搭建
这有个kafka的中文官方文档,可以参考学习下。
kafka的搭建也是按照网络的教程开始的,但是一些地方有点问题。我主要是参照这篇博文,进行的安装。
因为我是在自己的电脑上,所以我先安装了一个vmware虚拟机,然后安装了ubuntu。
- 首先的话,需要安装java的环境jdk。而这个博文中,没有给到安装教程。那么我们可以去java的官网中找到相应的jdk,进行安装。(注意:在ubuntu系统中,xxx.tar.gz安装比较顺利,xxx.rpm格式报错)
- 然后就是要安装zookeeper,但是因为我是安装的单机版的kafka,其内部自带了zookeeper。
- 接着就是下载kafka,然后解压,再然后配置kafka和zookeeper的配置文件。这部分内容,就请参照上面那个博文吧。(注意,有个同事安装的时候,没有进行配置文件,就是没有修改那个目录,后面也成功了;如果你安装这个教程,修改配置文件里面的目录,有一点需要注意,路径要是绝对路径,切记!)
- 接着就是要先启动zookeeper,然后启动kafka。(主要要分别开几个终端窗口,zookeeper一个linux窗口,kafka一个linux窗口)
- 最后就是进行验证,验证的话,可以参照kafka的中文官方文档-快速开始的内容
2-总结
因为是单机版的kafka,总体的安装还是比较快的。
但是上面几个点要注意下:
- 记得安装jdk环境,我安装的是1.8的。
- 记得修改了配置文件,路径要是绝对的,或者干脆不修改。
- 记得启动的时候,要开启多个窗口。
- 记得测试消费和生产的时候,也是一个步骤就要一个窗口。
- 环境变量,设置与否都可以。只是目录的问题。
3-参考文献
kafka中文文档:http://kafka.apachecn.org/quickstart.html
kafka单机安装:https://blog.youkuaiyun.com/Felix_CB/article/details/85220086