1 .安装kafka提前工作
1.1 如果电脑上没有安装过java
的环境需要先安装jdk
。
sudo apt install default-jdk //安装默认版本jdk
1.2 安装完成后验证jdk
是否安装成功。
java -version
1.3 配置java
环境变量,这里是将环境配置在/usr/local
目录下,根据自己情况进行路径选择
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-/usr/local/jre
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
如果不先安装java
的环境,之后在启动kafka
的时候会出现:kafka-run-class.sh: line 309: exec: java: not found
的错误。
2.进行kafka的安装
2.1 去官网进行下载。地址为https://kafka.apache.org/downloads
。注意:要在Binary downloads
下进行下载,不要下载带有src
文件的安装包,因为带有src
文件的安装包是源码。
2.2 下载完成后将下载的kafka
,移动到/usr/local
目录下。
2.3 进行解压缩。
cd /usr/local
sudo tar -zxf kafka_xxxxx.tgz //自己添加下载的对应版本的包名
2.4 建立软连接。
sudo ln -s kafka_2.11-0.10.2.0 kafka
2.5 配置环境变量
vim ~/.bashrc
打开文件后,添加以下语句。
export KAFKA_HOME=~/url/local/kafka //软连接目录在哪就添加在哪
export PATH=$PATH:$KAFKA_HOME/bin
让环境变量生效
source ~/.bashrc
3.启动kafka进行测试
3.1 先启动kafka
自带的ZooKeeper
。这个启动后,命令行进入无法编辑状态。
cd /usr/local/kafka
sudo bin/zookeeper-server-start.sh config/zookeeper.properties
3.2 重新启动一个命令行,准备启动kafka
。这个启动后,命令行进入无法编辑状态。
cd /usr/local/kafka
sudo bin/kafka-server-start.sh config/server.properties
3.3 重新启动一个命令行,创建一个名为test
的topic
。
cd /usr/local/kafka
sudo bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test // 2.2以下的版本使用
sudo bin/kafka-topics.sh --create --bootstrap-server localhost:9092 --replication-factor 1 --partitions 1 --topic test //2.2及以上版本使用
3.4 开启生产者服务。
sudo bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test
3.5 开启新命令行,开启消费者服务。
cd /usr/local/kafka
//kafka2.2以下
sudo bin/kafka-console-consumer.sh --zookeeper localhost:2181 --topic test --from-beginning
//kafka2.2以上
sudo bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning