inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

카프카 완벽 가이드 - 코어편

브로커가 추가될 때 파티션 재분배

해결된 질문

304

작성자 없음

작성한 질문수 0

0

안녕하세요 선생님!

 

완강 후에 정리하며 이것저것 테스트를 하는 와중에 궁금한게 생겨 질문드립니다.

 

이미 특정 토픽의 파티션이 브로커들에게 분배된 상태에서, 새로운 브로커가 추가됐을 때 새로운 브로커는 특정 토픽의 파티션을 가질 수 있는 대상으로 선정되지 않는 것 같습니다.

 

테스트 과정 공유드립니다.

  1. broker #1, #2 총 2개 띄운 상태에서 partition 3개, replication 2개의 토픽 생성 (topic-p3r2)

Topic: topic-p3r2	Partition: 0	Leader: 2	Replicas: 2,1	Isr: 2,1	Offline:
Topic: topic-p3r2	Partition: 1	Leader: 1	Replicas: 1,2	Isr: 1,2	Offline:
Topic: topic-p3r2	Partition: 2	Leader: 2	Replicas: 2,1	Isr: 2,1	Offline:
  1. broker #3 추가 후 topic-p3r2 토픽 상태

Topic: topic-p3r2	Partition: 0	Leader: 2	Replicas: 2,1	Isr: 2,1	Offline:
Topic: topic-p3r2	Partition: 1	Leader: 1	Replicas: 1,2	Isr: 1,2	Offline:
Topic: topic-p3r2	Partition: 2	Leader: 2	Replicas: 2,1	Isr: 2,1	Offline:

브로커#3은 후보에도 오르지 않았습니다.

 

제가 예상했던 건 아래와 같이 브로커#3이 추가되었을 때 브로커#3도 토픽의 파티션을 갖는 것이었습니다.

(아래 로그는 제가 상상한 것을 임의로 만든 것입니다)

Topic: topic-p3r2	Partition: 0	Leader: 2	Replicas: 2,1	Isr: 2,1	Offline:
Topic: topic-p3r2	Partition: 1	Leader: 1	Replicas: 1,2	Isr: 1,2	Offline:
Topic: topic-p3r2	Partition: 2	Leader: 3	Replicas: 3,1	Isr: 3,1	Offline:

 

 

감사합니다!!

kafka 데이터-엔지니어링

답변 1

1

권 철민

안녕하십니까,

카프카 클러스터에서는 노드를 추가시, 토픽을 자동으로 해당 노드에 재 분배하지 않습니다. 이건 다른 많은 데이터 기반 클러스터 시스템에서도 동일한 정책입니다. (물론 어떤 데이터 클러스터 시스템은 자동으로 데이터를 분배하기도 합니다만 ^^;;)

만약에 노드가 추가될 때 마다 토픽을 자동으로 재 분배를 해버리게 되면 운영중인 토픽을 재 분배하므로 재 분배 시간 동안에는 데이터를 못 받아들이게 되고, 실시간 운영상 부하가 심하게 됩니다. 클러스터에 새로운 노드가 추가되고 기존 Topic를 새로운 노드로 분배하고 싶다면 기존 Topic의 사용을 중지한 상태에서 Topic 마이그레이션을 직접 수동으로 적용해야 합니다.

 

감사합니다.

0

연어

와우 선생님 바로 납득되었습니다.

최곱니다. 감사합니다.

virtual box 설치 문제

0

60

2

카프카 서버 구축 관련 문의

0

66

2

카프카 토픽 Key 타입 변경에 관한 질문

0

70

2

Zookeeper에서 KRaft

0

78

1

카프카 학습과 관련하여 질문 드립니다

0

96

2

파티션 증가시 비용 증가 고려

0

71

2

Kafka 초기 Partition 개수 설정 관련 질문

0

82

2

VM 과 도커의 차이

0

139

2

vm 어댑터설정 문의

0

78

2

Cooperative Sticky Rebalancing 질문

0

58

2

consumer 설정 질문

0

68

2

consumer.poll 질문입니다.

1

69

2

mainThread.join() 관련 질문

0

57

2

문의

0

153

2

멀티 브로커 설정 중 포트 충돌 발생

0

120

2

Consumer Group 강의 Lag 질문있습니다!

0

107

2

강의 설명 및 코드 정리

0

174

2

실습 코드는 어디서 받나요.. 아무리 찾아도 엄네요..

0

151

1

java.nio.BufferUnderflowException 에러 발생합니다..

0

156

3

KafkaTimeoutError:

0

157

2

acks 1 이면 비동기가 아니지 않나요?!

0

184

2

Producer의 메시지 비동기화 전송 구현 강좌 내용 중 질문

0

109

2

자문자답: 데이터 누락된다고 하시는 분 참고하세요.

0

215

2

자문자답: kafka Error connecting to node utuntu-20.myguest.virtualbox.org:9092

0

200

2