kafka滚动升级

生产环境kafka版本为kafka_2.13-2.8.1.tgz,因存在漏洞需将kafka版本升级至kafka_2.13-3.4.0.tgz以上版本。

IP地址kafkazookeeper节点
192.168.10.101broker0zookeeper
192.168.10.102broker1zookeeper
192.168.10.103broker2zookeeper

升级前验证zookeeper与kafka状态是否正常,使用kafka命令查看当前kafka集群的topic和版本号

/opt/hadoop/coer/kafka_2.13-2.8.1/bin/kafka-topics.sh --bootstrap-server 192.168.10.101:9092 --list
/opt/hadoop/coer/kafka_2.13-2.8.1/bin/kafka-topics.sh -version

在第一台broker上安装kafka_2.13-3.4.0版本的kafka,并启动新版本的kafka

cd /opt/hadoop/core
tar -zxvf kafka_2.13-3.4.0.tar.gz
cp kafka_2.13-2.8.1/config/server.properties   kafka_2.13-3.4.0/config

cd kafka_2.13-3.4.0/config

vi server.properties
#添加下面这一行配置,这里的版本号,是你的旧版本,不是将要升级的新版本,即是我目前环境的旧版本2.8.1,如果我这里写成我想要升级的新版本3.4.0,那么就会出现最下面的异常报错。
inter.broker.protocol.version=2.8-IV1

#关闭kafka_2.13-2.8.1进程

cd /opt/hadoop/core/kafka_2.13-2.8.1
bin/kafka-server-stop.sh


#启动kafka_2.13-3.4.0进程
cd /opt/hadoop/core/kafka_2.13-3.4.0
bin/kafka-server-start.sh -daemon config/server.properties

#查看是否能正常访问集群
/opt/hadoop/coer/kafka_2.13-3.4.0/bin/kafka-topics.sh --bootstrap-server --describe --topic topicname

#同时可以查看config/server.properties中的配置,查看brokerid
#访问zookeeper查看kafka是否加入集群
zkCli.sh
ls /kafka/broker/ids

#查看日志,正常日志应该如下所示:
[2024-06-21 15:02:48,940] INFO [ReplicaFetcherManager on broker 0] Removed fetcher for partitions HashSet(__consumer_offsets-8, __consumer_offsets-38, hello_test1-2, __consumer_offsets-26, __consumer_offsets-32, __consumer_offsets-2, __consumer_offsets-14, __consumer_offsets-20, __consumer_offsets-44) (kafka.server.ReplicaFetcherManager)
[2024-06-21 15:02:48,958] INFO [GroupCoordinator 0]: Elected as the group coordinator for partition 2 in epoch 28 (kafka.coordinator.group.GroupCoordinator)
[2024-06-21 15:02:48,958] INFO [GroupMetadataManager brokerId=0] Scheduling loading of offsets and group metadata from __consumer_offsets-2 for epoch 28 (kafka.coordinator.group.GroupMetadataManager)
[2024-06-21 15:02:48,958] INFO [GroupCoordinator 0]: Elected as the group coordinator for partition 20 in epoch 28 (kafka.coordinator.group.GroupCoordinator)
[2024-06-21 15:02:48,958] INFO [GroupMetadataManager brokerId=0] Scheduling loading of offsets and group metadata from __consumer_offsets-20 for epoch 28 (kafka.coordinator.group.GroupMetadataManager)
[2024-06-21 15:02:48,958] INFO [GroupCoordinator 0]: Elected as the group coordinator for partition 38 in epoch 28 (kafka.coordinator.group.GroupCoordinator)
[2024-06-21 15:02:48,958] INFO [GroupMetadataManager brokerId=0] Scheduling loading of offsets and group metadata from __consumer_offsets-38 for epoch 28 (kafka.coordinator.group.GroupMetadataManager)




#可能会出下下面这种异常日志:
java.io.IOException: Connection to 2 was disconnected before the response was read
        at org.apache.kafka.clients.NetworkClientUtils.sendAndReceive(NetworkClientUtils.java:99)
        at kafka.server.BrokerBlockingSender.sendRequest(BrokerBlockingSender.scala:113)
        at kafka.server.RemoteLeaderEndPoint.fetch(RemoteLeaderEndPoint.scala:78)
        at kafka.server.AbstractFetcherThread.processFetchRequest(AbstractFetcherThread.scala:309)
        at kafka.server.AbstractFetcherThread.$anonfun$maybeFetch$3(AbstractFetcherThread.scala:124)
        at kafka.server.AbstractFetcherThread.$anonfun$maybeFetch$3$adapted(AbstractFetcherThread.scala:123)
        at scala.Option.foreach(Option.scala:437)
        at kafka.server.AbstractFetcherThread.maybeFetch(AbstractFetcherThread.scala:123)
        at kafka.server.AbstractFetcherThread.doWork(AbstractFetcherThread.scala:106)
        at kafka.server.ReplicaFetcherThread.doWork(ReplicaFetcherThread.scala:97)
        at kafka.utils.ShutdownableThread.run(ShutdownableThread.scala:96)


 逐一对3台kafka进行升级,先停止旧版本的kafka,再启动新版本的kafka,完成滚动升级。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值