kafka集群

公网DNS

备注:为了方便测试联调,开放了公网访问,不需要公网访问可跳过此步骤

host1 ip1 (broker1的公网ip)

host2 ip2 (broker2的公网ip)

host3 ip3 (broker3的公网ip)

内网HOSTS(/etc/hosts 3台服务器均需要修改)

ip1 host1 (broker1的内网ip)

ip2 host2 (broker2的内网ip)

ip3 host3 (broker3的内网ip)

安装JDK

下载解压kafka

创建zookeeper 数据目录:mkdir data_zk

创建kafka 数据目录:mkdir data_kafka

配置zookeeper

创建数据目录:mkdir data_zk

创建myid文件,输入 id(如1,2,3)

修改 config/zookeeper.properties

dataDir=/var/dev/kafka/data_zk
tickTime=2000
initLimit=10
syncLimit=5
server.1=host1:2888:3888
server.2=host2:2888:3888
server.3=host3:2888:3888

启动zookeeper:./bin/zookeeper-server-start.sh -daemon config/zookeeper.properties

配置kafka

broker.id=1 # 每个broker唯一
listeners=PLAINTEXT://host1:9092 # 当前broker的hostname
advertised.listeners=PLAINTEXT://host1:9092 # 当前broker的hostname
zookeeper.connect=host1:2181,host2:2181,host3:2181
log.dirs=/var/dev/kafka/data_kafka

启动kafka:./bin/kafka-server-start.sh -daemon config/server.properties

创建topic

./bin/kafka-topics.sh \
–bootstrap-server host1:9092,host2:9092,host3:9092 \
–topic terminalMessage –create –partitions 3 –replication-factor 3