目录
一、准备工作
1、安装docker
2、设置加速镜像
二、开始安装
1、启动容器
三、验证Kafka是否安装成功
四、部署kafka-manager
一、准备工作
1、安装docker
参考
【Docker技术内幕】(四)Linux环境下安装docker
2、设置加速镜像
vim /etc/docker/daemon.json
{
"registry-mirrors": ["https://mirror.ccs.tencentyun.com"]
}
systemctl restart docker
systemctl enable docker
二、开始安装
1、启动容器
docker run -d --restart=always --name kafka \
--log-driver json-file --log-opt max-size=100m --log-opt max-file=2 \
-p 9092:9092 \
-e KAFKA_BROKER_ID=0 -e KAFKA_ZOOKEEPER_CONNECT=172.21.0.10:2181/kafka \
-e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://172.21.0.10:9092 -e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 \
-v /etc/localtime:/etc/localtime wurstmeister/kafka
参数说明:
-e KAFKA_BROKER_ID=0 在kafka集群中,每个kafka都有一个BROKER_ID来区分自己
-e KAFKA_ZOOKEEPER_CONNECT=172.21.0.10:2181/kafka 配置zookeeper管理kafka的路径172.21.0.10:2181/kafka
-e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://172.21.0.10:9092 把kafka的地址端口注册给zookeeper,
如果是远程访问要改成外网IP,类如Java程序访问出现无法连接。
-e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 配置kafka的监听端口
-v /etc/localtime:/etc/localtime 容器时间同步虚拟机的时间
三、验证Kafka是否安装成功
1、进入容器
$ docker exec -it kafka bash
2、进入 /opt/kafka_2.12-2.3.0/bin/ 目录下
$ cd /opt/kafka_2.13-2.8.1/bin/
3、运行kafka生产者发送消息
$ ./kafka-console-producer.sh --broker-list localhost:9092 --topic sun
发送消息
> {"datas":[{"channel":"","metric":"temperature","producer":"ijinus","sn":"IJA0101-00002245","time":"1543207156000","value":"80"}],"ver":"1.0"}
4、运行kafka消费者接收消息
$ ./kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic sun --from-beginning
四、部署kafka-manager
docker run -it -d --rm -p 9000:9000 -e ZK_HOSTS="172.21.0.10:2181" --net=host sheepkiller/kafka-manager
通过9000端口访问