如何用30分钟快速完成Docker部署Kafka集群?
摘要:docker网络规划 docker network create kafka-net --subnet 172.20.0.016 docker network ls zookeeper1(172.20.0.11 2184:2181) zo
docker网络规划
docker network create kafka-net --subnet 172.20.0.0/16
docker network ls
zookeeper1(172.20.0.11 2184:2181)
zookeeper2(172.20.0.12 2185:2181)
zookeeper3(172.20.0.13 2186:2181)
kafka(172.20.0.14 内部9093:9093,外部9193:9193)
kafka(172.20.0.15 内部9094:9094,外部9194:9194)
kafka(172.20.0.16 内部9095:9095,外部9195:9195)
kafka manager(172.20.0.10 9000:9000)
部署中的配置和授权认证文件制作
准备一下两个文件,他们的位置可以放到任意地方,只需要镜像部署的配置文件中能引用到即可。
新建一个zookeeper和kafka共用的授权认证文件:server_jass.conf。按照本教程建议放到/root/kafka/kafka-sasl/server_jass.conf
Client {
org.apache.zookeeper.server.auth.DigestLoginModule required
username="test"
password="test@QWER";
};
Server {
org.apache.zookeeper.server.auth.DigestLoginModule required
username="test"
password="test@QWER"
user_admin="test@QWER"
user_test="test@QWER"; # 账号是test,密码是test@QWER
};
KafkaServer {
org.apache.kafka.common.security.plain.PlainLoginModule required
username="test"
password="test@QWER"
user_test="test@QWER";
};
KafkaClient {
org.apache.kafka.common.security.plain.PlainLoginModule required
username="test"
password="test@QWER";
};
新建一个kafka-run-class脚本文件,规避JMX冲突:kafka-run-class.sh。
