起
最近对MQ(消息队列中间件)很感兴趣,既然感兴趣那就上手了解喽。要说MQ中流行的应该就是RabbitMQ和Kafka了,综合对比之下(具体对比方法请参考掷硬币)我选择了Kafka,决定从哪里下手后第一步就是搭建环境了,于是就有了这篇帖子。
简
在这篇帖子中我将详细讲述如何从零开始在Linux下搭建Kafka,以及在搭建Kafka环境前的准备工作。
述
准备工作
本文中我使用的Linux版本是Ubuntu16.04(运行Zookeeper和Kafka Server)和Ubuntu18.04(运行Kafka producer和Kafka consumer)。
使用的Kafka版本为kafka_2.11-1.1.0,下载地址:http://kafka.apache.org/downloads。
Kafka是使用scala编写的运行于jvm上的程序,这里也需要使用Java开发环境,我使用的JDK版本为1.8.0_181,下载地址:http://www.oracle.com/technetwork/java/javase/downloads/index-jsp-138363.html#javasejdk。
准备Java环境
将下载好的Java压缩包解压至某个目录,本文中使用的目录为/usr/local/Java/jdk1.8.0_181。命令如下:
tar -zxvf jdk-8u181-linux-x64.tar.gz
sudo mv jdk1.8.0_181/ /usr/local/Java/jdk1.8.0_181/
然后设置Java环境变量,这里采用本用户设置方法。命令如下:
sudo gedit /etc/profile
在环境变量文件末尾添加
export JAVA_HOME=/usr/local/Java/jdk1.8.0_181
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
最后应用Java环境变量。命令如下:
source /etc/profile
搭建Kafka环境
在Kafka官网下载自己需要的二进制版本的Kafka安装包进行安装。Kafka除了需要使用Java环境外还需要使用Zookeeper。目前,最新的版本中已经包含里Zookeeper环境,我们可以直接使用。说是安装,我们需要的只是把Kafka的二进制压缩包解压到某个目录即可,这里将Kafka压缩包解压到~/
目录
由于我们使用我使用两台电脑尽心Kafka环境测试,需要配置Kafka Server的listeners。进入config文件夹找到server.properties文件,在Socket Server Settings 中添加listeners=PLAINTEXT://192.168.3.73:9092,192.168.3.73是我的本机IP地址,如果只是在单机上进行环境测试不需要进行测试,全部使用默认配置即可。
至此,Kafka的环境就已经搭建完成了。
测试
在Ubuntu 16.04中,进入Kafka目录。
- 启动zookeeper
输入命令
bin/zookeeper-server-start.sh config/zookeeper.properties
执行结果如下:
- 启动Kafka服务端
输入命令
bin/kafka-server-start.sh config/server.properties
执行结果如下:
- 创建名为test的topic
输入命令
bin/kafka-topics.sh --create --zookeeper 192.168.3.73:2181 --replication-factor 1 --partitions 1 --topic test
- 查询已经创建的topic
输入命令
bin/kafka-topics.sh --list --zookeeper 192.168.3.73:2181
执行结果如下
在Ubuntu 18.04中,进入Kafka目录。
- 创建一个消息生产者
输入命令
bin/kafka-console-producer.sh --broker-list 192.168.3.73:9092 --topic test
执行结果如下
- 创建一个消息消费者
输入命令
bin/kafka-console-consumer.sh --bootstrap-server 192.168.3.73:9092 --topic test --from-beginning
执行结果如下
生产者和消费者成功创建后就可以在消息生产者Terminal中输入消息,在消息消费者Terminal中接收了。
结
以上就是搭建Kafka单机环境的全部内容。如有不明白的地方欢迎留言交流,若帖子中有错误的地方同样欢迎留言批评指正,在此谢过路过的各位大神,欢迎骚扰。