5

下载Kafka

http://archive.apache.org/dist/kafka/1.1.0/

解压并重命名

cd /usr/local
tar zxvf kafka_2.12-1.1.0.tgz
mv kafka_2.12-1.1.0 kafka_2.12-1.1.0/

配置kafka

mkdir /usr/local/kafka/log/kafka #创建kafka日志目录
cd /usr/local/kafka/config #进入配置目录
vi server.properties #编辑修改相应的参数

broker.id=0
port=9092 #端口号
host.name=hostname #hostname
listeners=PLAINTEXT://hostname:9092
log.dirs=/usr/local/kafka/log/kafka #日志存放路径,上面创建的目录
zookeeper.connect=localhost:2181 #zookeeper地址和端口,单机配置部署,localhost:2181

配置zookeeper

mkdir /usr/local/kafka/zookeeper #创建zookeeper目录
mkdir /usr/local/kafka/log/zookeeper #创建zookeeper日志目录
cd /usr/local/kafka/config #进入配置目录
vi zookeeper.properties #编辑修改相应的参数

dataDir=/usr/local/kafka/zookeeper #zookeeper数据目录
dataLogDir=/usr/local/kafka/log/zookeeper #zookeeper日志目录
clientPort=2181
maxClientCnxns=100
tickTime=2000
initLimit=10
syncLimit=5

以上配置使用了kafka自动的zookeeper,无需单独安装一个zookeeper

启动脚本

vi kafkastart.sh     #编辑,添加以下代码

#!/bin/sh

#启动zookeeper
/usr/local/kafka/bin/zookeeper-server-start.sh /usr/local/kafka/config/zookeeper.properties &

sleep 3   #等3秒后执行

#启动kafka
/usr/local/kafka/bin/kafka-server-start.sh /usr/local/kafka/config/server.properties &

停止脚本

vi kafkastop.sh #编辑,添加以下代码

#!/bin/sh

#关闭zookeeper
/usr/local/kafka/bin/zookeeper-server-stop.sh /usr/local/kafka/config/zookeeper.properties &

sleep 3 #等3秒后执行

#关闭kafka
/usr/local/kafka/bin/kafka-server-stop.sh /usr/local/kafka/config/server.properties &

创建一个Topic

bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test

上述命令为创建一个副本数为1,分区数为1的,名字为test的topic

查看Topic

bin/kafka-topics.sh --list --zookeeper localhost:2181

发送消息

bin/kafka-console-producer.sh --broker-list hostname:9092 --topic test

消费消息

bin/kafka-console-consumer.sh --bootstrap-server hostname:9092 --topic test --from-beginning

注意hostname和配置中的hostname必须一致


国子监阿创
131 声望8 粉丝

任何一个傻瓜都能写出计算机能理解的程序,而优秀的程序员却能写出别人能读得懂的程序。—— Martin Fowler