Backend/πŸ”— Kafka

[Kafka μ—λŸ¬] LEADER_NOT_AVAILABLE

Hugehoo 2024. 1. 4. 23:36

 

상황

 

μΉ΄ν”„μΉ΄ ν΄λŸ¬μŠ€ν„° ꡬ좕 쀑 λ°œμƒν•œ μ—λŸ¬. 

도컀 컴포즈λ₯Ό ν™œμš©ν•΄ 브둜컀 3λŒ€, 주킀퍼 1λŒ€ μ‘°ν•©μœΌλ‘œ μΉ΄ν”„μΉ΄ ν΄λŸ¬μŠ€ν„°λ₯Ό κ΅¬μ„±ν–ˆλ‹€.

브둜컀 λ‚΄λΆ€μ—μ„œ kafka-console-producer 둜 topic 에 λ©”μ‹œμ§€λ₯Ό λ°œν–‰ν–ˆλŠ”λ° μ—λŸ¬κ°€ λ°œμƒν–ˆλ‹€.

 

μ—λŸ¬ λ©”μ‹œμ§€

WARN [Producer clientId=console-producer] Error while fetching metadata with correlation id 3 : {test=LEADER_NOT_AVAILABLE} (org.apache.kafka.clients.NetworkClient)

 

원인과 ν•΄κ²°

λ©”μ‹œμ§€λ₯Ό λ°œν–‰ν•˜κ³ μž ν•œ 토픽이 아직 μƒμ„±λ˜μ§€ μ•Šμ•˜κΈ° λ•Œλ¬Έμ— λ°œμƒν•œ μ—λŸ¬μ˜€λ‹€.

도컀 컴포즈 yml μž‘μ„± μ‹œ μ•„λž˜ μ˜΅μ…˜μ„ true 둜 μ„€μ •ν•˜λ©΄ 토픽이 μžλ™μœΌλ‘œ μƒμ„±λœλ‹€. 

auto.create.topics.enable=true

 

ν•˜μ§€λ§Œ 이 방법은 κΆŒν•˜μ§€ μ•ŠλŠ”λ° 토픽을 잘λͺ» μ„€μ •ν•˜μ—¬ λ©”μ‹œμ§€λ₯Ό 보내더라도, μ•„λ¬΄λŸ° μ—λŸ¬μ—†μ΄ 토픽이 μƒμ„±λ˜κΈ° λ•Œλ¬Έμ΄λ‹€. 

λ¬Όλ‘  κ°„νŽΈν•œ 방법이라고 생각할 μˆ˜λ„ μžˆμ§€λ§Œ, 브둜컀 내뢀에 κ΄€λ¦¬λ˜μ§€ μ•ŠλŠ” 토픽이 μ—¬λŸ¬κ°œ 생기고 μΆ”ν›„μ—λŠ” λ©”λͺ¨λ¦¬ λ¬Έμ œλ„ 우렀되기 λ•Œλ¬Έμ— ꢌμž₯ν•˜μ§€ μ•ŠλŠ”λ‹€.

 

κ·Έλž˜μ„œ μΉ΄ν”„μΉ΄ λ‚΄λΆ€μ—μ„œ 직접 토픽을 μƒμ„±ν•˜λŠ” 방법을 ꢌμž₯ν•œλ‹€.

$ kafka-console-producer --create --bootstrap-server localhost:9092 --replication-factor 1 --partitions 1 --topic TOPIC-1

 

 

 

ref

- https://veneas.tistory.com/entry/Spring-for-Apache-Kafka-Error-while-fetching-metadata-with-correlation-id

- https://twowinsh87.github.io/etc/2019/09/28/etc-kafka2019-3-1/