브로커가 추가될 때 파티션 재분배
304
작성자 없음
작성한 질문수 0
안녕하세요 선생님!
완강 후에 정리하며 이것저것 테스트를 하는 와중에 궁금한게 생겨 질문드립니다.
이미 특정 토픽의 파티션이 브로커들에게 분배된 상태에서, 새로운 브로커가 추가됐을 때 새로운 브로커는 특정 토픽의 파티션을 가질 수 있는 대상으로 선정되지 않는 것 같습니다.
새로운 브로커가 추가 됐을 때 새 브로커에도 기존의 토픽의 파티션 재분배를 하는 방법이 있나요?
불가능 하다면, 이런 모델을 가지는 이유가 있을까요?
테스트 과정 공유드립니다.
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: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:
감사합니다!!
답변 1
1
안녕하십니까,
카프카 클러스터에서는 노드를 추가시, 토픽을 자동으로 해당 노드에 재 분배하지 않습니다. 이건 다른 많은 데이터 기반 클러스터 시스템에서도 동일한 정책입니다. (물론 어떤 데이터 클러스터 시스템은 자동으로 데이터를 분배하기도 합니다만 ^^;;)
만약에 노드가 추가될 때 마다 토픽을 자동으로 재 분배를 해버리게 되면 운영중인 토픽을 재 분배하므로 재 분배 시간 동안에는 데이터를 못 받아들이게 되고, 실시간 운영상 부하가 심하게 됩니다. 클러스터에 새로운 노드가 추가되고 기존 Topic를 새로운 노드로 분배하고 싶다면 기존 Topic의 사용을 중지한 상태에서 Topic 마이그레이션을 직접 수동으로 적용해야 합니다.
감사합니다.
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





