安装包下载
http://kafka.apache.org/downloads.html
前置准备
jdk镜像
kafka安装包
解压
tar -zxvf kafka_2.10-0.8.2.1.tgz -C /usr/local
mv kafka_2.10-0.8.2.1 kafka
cd /usr/local/kafka/config
修改配置文件:
cp server.properties server.properties.bak
vim server.properties
修改如下内容:
删除broker.id=0
删除host.name=
增加delete.topic.enable=true
修改log.cleaner.enable=true
修改zookeeper.connect=zk1:2181,zk2:2181,zk3:2181
上面两个参数由于每个容器不同,所以我们暂时删除,在容器启动时注入就可以启动多个不同的容器了
修改/etc/hosts
增加zk和kafka映射
配置环境变量
vim /etc/bashrc
增加KAFKA_HOME并修改PATH 如果希望docker自启动开启kafka可以在里面增加kafka开启命令
然后就可以commit了。 运行新docker:
docker run -itd --name xxx -e BROKER_ID=0 -e MY_HOST_NAME=kafka1 \
--net 子网 --ip kafkaIp containerId \
sh -c 'cp /tmp/hosts /etc/hosts && echo -e "broker.id=$BROKER_ID\nhost.name=$MY_HOST_NAME" >> /usr/local/kafka/config/server.properties && /bin/bash'
修改-e参数即可启动多个不同的kafka节点