3.12. 불명확한 리더 선택
In-sync 복제본에 대한 리더 선택은 데이터 손실을 보장하지 않기 때문에 정리된 것으로 간주됩니다. 이는 기본적으로 발생합니다. 그러나 리더십을 실현할 수 있는 in-sync 복제본이 없으면 어떻게 해야 합니까? ISR (in-sync replica)에는 리더의 디스크가 손실되었을 때만 리더가 포함되었을 수 있습니다. 최소 동기화 복제본 수가 설정되어 있지 않고 하드 드라이브가 예기치 않게 실패할 때 파티션 리더와 동기화할 때 데이터가 이미 손실되는 경우 데이터가 손실됩니다. 뿐만 아니라 새로운 리더가 선택될 수 없습니다.
Kafka에서 리더 오류를 처리하는 방법을 구성할 수 있습니다.
# ... unclean.leader.election.enable=false # ...
불명확한 리더 선택은 기본적으로 비활성화되어 있습니다. 즉, 비동기화 복제본이 리더가 될 수 없습니다. 명확한 리더 선택을 통해 이전 리더가 손실되었을 때 다른 브로커가 ISR에 없는 경우 Kafka는 메시지를 쓰거나 읽기 전에 리더가 다시 온라인 상태가 될 때까지 기다립니다. 불명확한 리더 선택을 통해 동기화되지 않은 복제본이 리더가 될 수 있지만 메시지가 손실될 위험이 있습니다. 선택 사항은 요구 사항이 가용성에 적합한지 또는 지속성에 따라 달라집니다.
주제 수준에서 특정 항목에 대한 기본 구성을 재정의할 수 있습니다. 데이터 손실 위험을 줄일 수 없는 경우 기본 구성을 그대로 둡니다.