MSK Replicator를 사용하여 액티브-액티브 설정 생성 - Amazon Managed Streaming for Apache Kafka

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

MSK Replicator를 사용하여 액티브-액티브 설정 생성

두 MSK 클러스터가 모두 읽기 및 쓰기를 적극적으로 제공하는 액티브-액티브 설정을 생성하려면 접두사 지정된 주제 이름 복제(콘솔에서 주제 이름에 접두사 추가)가 포함된 MSK Replicator를 사용하는 것이 좋습니다. 하지만 이렇게 하려면 복제된 주제를 읽도록 소비자를 재구성해야 합니다.

다음 단계에 따라 소스 MSK 클러스터 A와 대상 MSK 클러스터 B 간에 액티브-액티브 토폴로지를 설정합니다.

  1. MSK 클러스터 A를 소스로, MSK 클러스터 B를 대상으로 하는 MSK Replicator를 생성합니다.

  2. 위의 MSK Replicator가 성공적으로 생성되면 클러스터 B를 소스로, 클러스터 A를 대상으로 복제기를 생성합니다.

  3. 생산자와 같은 리전에 있는 클러스터의 로컬 주제(예: “주제”)에 각각 데이터를 동시에 기록하는 두 세트의 생산자를 생성합니다.

  4. 소비자와 동일한 AWS 리전에 있는 MSK 클러스터에서 와일드카드 구독(예: “.*topic”)을 사용하여 각각 데이터를 읽는 두 개의 소비자 세트를 생성합니다. 이렇게 하면 소비자가 로컬 주제(예: topic)에서 해당 리전에서 로컬로 생성된 데이터와 접두사(<sourceKafkaClusterAlias>.topic)가 있는 주제의 다른 리전에서 복제된 데이터를 자동으로 읽습니다. 이 두 소비자 세트는 서로 다른 소비자 그룹 ID를 가져야 MSK Replicator가 다른 클러스터로 복사할 때 소비자 그룹 오프셋이 덮어쓰지 않습니다.

클라이언트를 재구성하지 않으려면 접두사 지정된 주제 이름 복제(콘솔에서 주제 이름에 접두사 추가) 대신 동일한 주제 이름 복제(콘솔에서 동일한 주제 이름 유지)를 사용하여 MSK Replicator를 생성하여 액티브-액티브 설정을 생성할 수 있습니다. 하지만 각 Replicator에 대해 추가 데이터 처리 및 데이터 전송 요금을 지불하게 됩니다. 이는 각 Replicator가 일반적인 데이터 양을 두 번(복제를 위해 한 번, 무한 루프를 방지하기 위해 다시 한 번) 처리해야 하기 때문입니다. ReplicatorBytesInPerSec 지표를 사용하여 각 Replicator가 처리하는 총 데이터 양을 추적할 수 있습니다. 복제 모니터링을(를) 참조하세요. 이 지표에는 대상 클러스터에 복제된 데이터와 MSK Replicator에서 필터링한 데이터가 포함되어 데이터가 시작된 동일한 주제로 다시 복사되는 것을 방지합니다.

참고

동일한 주제 이름 복제(콘솔에서 동일한 주제 이름 유지)를 사용하여 액티브-액티브 토폴로지를 설정하는 경우 주제를 삭제한 후 30초 이상 기다린 다음, 동일한 이름으로 주제를 다시 생성합니다. 이 대기 기간은 중복된 메시지가 소스 클러스터로 다시 복제되는 것을 방지하는 데 도움이 됩니다. 소비자는 다운스트림에 영향을 주지 않으면서 중복된 메시지를 재처리할 수 있어야 합니다. 다중 리전 Apache Kafka 애플리케이션 빌드의 고려 사항을(를) 참조하세요.