您好,登錄后才能下訂單哦!
這篇文章主要為大家展示了“kafka錯(cuò)誤怎么解決”,內(nèi)容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領(lǐng)大家一起研究并學(xué)習(xí)一下“kafka錯(cuò)誤怎么解決”這篇文章吧。
今天由于kafka集群搭建時(shí)的配置不當(dāng),由于一臺(tái)主消費(fèi)者掛掉(服務(wù)器崩了,需要維修),導(dǎo)致了所有新版消費(fèi)者(新版的offset存儲(chǔ)在kafka)都無法拉取消息。
kafka的一個(gè)錯(cuò)誤
由于是線上問題,所以是絕對(duì)不能影響用戶的,使用老版客戶端(offset存儲(chǔ)在zk)進(jìn)行消費(fèi),然后將kafka遷移到備用服務(wù)。
下面來說一下這次事故的具體處理思路
1.首先要確保獲取到的消息不能丟失,所以老版消費(fèi)者進(jìn)行消費(fèi)
2.線上服務(wù)通過均衡負(fù)載一臺(tái)一臺(tái)的進(jìn)行切換kafka服務(wù),當(dāng)原生產(chǎn)者數(shù)據(jù)都消費(fèi)完時(shí),將消費(fèi)者切換到備用服務(wù)
3.開始配置線上kafka服務(wù)
kafka錯(cuò)誤怎么解決
主要做了如下修改
offsets.topic.replication.factor=3
設(shè)置副本數(shù)量為3,這樣當(dāng)一臺(tái)消費(fèi)者宕機(jī)時(shí),其他消費(fèi)者也可以進(jìn)行消費(fèi)
為了使topic可以進(jìn)行復(fù)制副本,這里采用了比較粗暴的方法,直接清空topic和offset
分為以下幾個(gè)步驟
./zookeeper-shell.sh227.0.0.1:24500
rmr/brokers/topics/topic-name
rmr/config/topics/topic-name
rmr/admin/delete_topics/topic-name
此時(shí)已經(jīng)將topic完全刪除,然后進(jìn)行topic的新建
bin/kafka-topics--create--zookeeperlocalhost:2181--replication-factor3--partitions3--topictopic-name
這時(shí)可以啟動(dòng)生產(chǎn)者和消費(fèi)者進(jìn)行查看,已經(jīng)不再出現(xiàn)一開始的異常
Connectiontonode-1couldnotbeestablished.Brokermaynotbeavailable.
這時(shí)我進(jìn)行了測試,對(duì)三臺(tái)broker中的任意一臺(tái)進(jìn)行下線,服務(wù)會(huì)自動(dòng)選擇其他節(jié)點(diǎn)進(jìn)行生產(chǎn)和消費(fèi)。
以上是“kafka錯(cuò)誤怎么解決”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。