8장. MirrorMaker 2.0에서 AMQ Streams 사용
MirrorMaker 2.0은 데이터 센터 내부 또는 여러 개의 활성 Kafka 클러스터 간에 데이터를 복제하는 데 사용됩니다.
클러스터 전체에서 데이터 복제는 다음과 같은 시나리오를 지원합니다.
- 시스템 장애 발생 시 데이터 복구
- 분석을 위한 데이터 집계
- 특정 클러스터에 대한 데이터 액세스 제한
- 대기 시간을 개선하기 위해 특정 위치에서 데이터 제공
MirrorMaker 2.0에는 이전 버전의 MirrorMaker에서 지원되지 않는 기능이 있습니다. 그러나 레거시 모드에서 사용되도록 MirrorMaker 2.0을 구성할 수 있습니다.
8.1. MirrorMaker 2.0 데이터 복제
MirrorMaker 2.0은 소스 Kafka 클러스터의 메시지를 사용하여 대상 Kafka 클러스터에 씁니다.
MirrorMaker 2.0은 다음을 사용합니다.
- 소스 클러스터의 데이터를 사용하는 소스 클러스터 구성
- 데이터를 대상 클러스터로 출력하기 위한 대상 클러스터 구성
MirrorMaker 2.0은 Kafka Connect 프레임워크를 기반으로 하며 클러스터 간 데이터 전송을 관리하는 커넥터 를 기반으로 합니다. MirrorMaker 2.0 MirrorSourceConnector
는 소스 클러스터에서 대상 클러스터로 주제를 복제합니다.
한 클러스터에서 다른 클러스터로 데이터를 미러링 하는 프로세스는 비동기적입니다. 권장되는 패턴은 메시지가 소스 Kafka 클러스터와 함께 로컬로 생성된 다음 대상 Kafka 클러스터에 원격으로 사용하는 것입니다.
MirrorMaker 2.0은 두 개 이상의 소스 클러스터에서 사용할 수 있습니다.
그림 8.1. 두 클러스터에서 복제

기본적으로 소스 클러스터의 새로운 주제는 10분마다 생성됩니다. 소스 커넥터 구성에 refresh.topics.interval.seconds
를 추가하여 빈도를 변경할 수 있습니다. 그러나 작업 빈도를 늘리면 전체 성능에 영향을 미칠 수 있습니다.