Kafka 集群部署 最简易的配置

准备工作:虚拟机三台(192.168.22.74,192.168.22.42,192.168.22.31), ubuntu 18.04 系统

zookeeper 

kafka

两个安装包:

第一步安装 java

sudo apt install openjdk-8-jdk
sudo apt install openjdk-8-jdk-headless
使用 java -version  出现如下内容:
openjdk version "1.8.0_242"
OpenJDK Runtime Environment (build 1.8.0_242-8u242-b08-0ubuntu3~18.04-b08)
OpenJDK 64-Bit Server VM (build 25.242-b08, mixed mode)
第二步 下载zookeeper
第三步 下载 kafka
解压 tar -zxf  kafka_2.11-2.4.1.tgz
第三步 修改  sudo vim /etc/profile

export ZOOKEEPER_HOME=/home/jack/jack/apache-zookeeper-3.6.0
export PATH=$PATH:$ZOOKEEPER_HOME/bin
export KAFKA_HOME=/home/jack/jack/kafka_2.12-2.4.1
export PATH=$PATH:$KAFKA_HOME/bin

export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64

export JRE_HOME=$JAVA_HOME/jre

export PATH=$PATH:$JAVA_HOME/bin

export CLASSPATH=./://$JAVA_HOME/lib:$JRE_HOME/lib

 

# java 安装地址 如果找不到

# which java

#ll /usr/bin/java 出现一条链接 (/etc/alternatives/java)

# ll /etc/alternatives/java

# /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java 为最终安装地址

最后 执行source  /etc/profile 使之生效

第四步 修改 kafka的server配置文件

kafka_2.12-2.4.1/config/server.properties

broker.id=1 三台broker 我设置的id 为 1,2,3

listeners = PLAINTEXT://192.168.22.74:9092 # 这里 我开始没写ip 会出现有些分区写不到其他broker去。

zookeeper.connect=broker1:2181,broker2:2181,broker3:2181/kafka  后面的kafka是个chroot。broker1,2,3 会在/etc/hosts 里面配置。

delete.topic.enable=true

auto.create.topics.enable=false

auto.leader.rebalance.enable=false

unclean.leader.election.enable=false

第五步 修改hosts

vim /etc/hosts

加入以下内容:

192.168.22.74 broker1
192.168.22.42 broker2
192.168.22.31 broker3

第六步 配置 zookeeper

apache-zookeeper-3.6.0/conf

复制一份配置文件

cp zoo_sample.cfg zoo.cfg

配置大致如下

tickTime=2000

initLimit=10

syncLimit=5

dataDir=/tmp/zookeeper/data

dataLogDir=/tmp/zookeeper/log

clientPort=2181

server.1=192.168.22.74:2888:3888
server.2=192.168.22.42:2888:3888
server.3=192.168.22.31:2888:3888

在 dataDir 配置的位置下面 建立 myid 文件

里面写上相应的brokerid 74 这台我写的1

第七步 启动zookeeper

zkServer.sh  start

zkServer.sh status

出现上面内容 就证明启动成功了。分别在三台都启动一下

如果出现错误  查看错误日志:

tail apache-zookeeper-3.6.0-bin/logs/zookeeper-broker2-server-ubuntu.out

第八步 启动kafka

cd kafka_2.12-2.4.1

bin/kafka-server-start.sh -daemon config/server.properties

如果出现问题  查看

kafka_2.12-2.4.1/logs 下的server.log

多半是myid的内容不对,或者listeners 配置有问题。

验证是否启动了使用 jps -l

能看到这几个服务 就算启动成功了。

遇到的问题:

The Cluster ID xxxx doesn't match stored clusterId Some aaaaa

因为一台机器broker的meta.properties  跟其他的对不上

在/tmp/kafka-logs/meta.properties这里面修改一下

cluster.id=xxxxxx 这里改成日志里面的aaaa
version=0
broker.id=1

再有其他的就百度解决,有很多小问题就不写出来了。

备忘。

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注