

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

# 사용자 지정 오프셋 스토리지 주제 사용
<a name="msk-connect-set-offset-storage-topic"></a>

소스 커넥터 간에 오프셋 연속성을 제공하려면 기본 주제 대신 원하는 오프셋 스토리지 주제를 사용할 수 있습니다. 오프셋 스토리지 주제를 지정하면 이전 커넥터의 마지막 오프셋에서 읽기를 다시 시작하는 소스 커넥터를 생성하는 것과 같은 작업을 수행하는 데 도움이 됩니다.

오프셋 스토리지 주제를 지정하면 커넥터를 생성하기 전에 작업자 구성에서 `offset.storage.topic` 속성 값을 제공해야 합니다. 오프셋 스토리지 주제를 다시 사용하여 이전에 만든 커넥터의 오프셋을 사용하려면 새 커넥터에 이전 커넥터와 동일한 이름을 지정해야 합니다. 사용자 지정 오프셋 스토리지 주제를 만드는 경우 주제 구성에서 [https://kafka.apache.org/27/documentation.html#topicconfigs_cleanup.policy](https://kafka.apache.org/27/documentation.html#topicconfigs_cleanup.policy)를 `compact`로 설정해야 합니다.

**참고**  
**싱크 커넥터를 생성할 때 오프셋 스토리지 주제를 지정하는 경우 해당 주제가 아직 존재하지 않으면 MSK Connect에서 해당 주제를 생성합니다. 그러나 이 주제는 커넥터 오프셋을 저장하는 데 사용되지 않습니다.  
싱크 커넥터 오프셋은 대신 Kafka 소비자 그룹 프로토콜을 사용하여 관리됩니다. 각 싱크 커넥터는 `connect-{CONNECTOR_NAME}`이라는 그룹을 생성합니다. 소비자 그룹이 존재하는 한 동일한 `CONNECTOR_NAME` 값으로 생성되는 모든 후속 싱크 커넥터는 마지막으로 커밋된 오프셋부터 계속됩니다.

**중요**  
오프셋 연속성을 유지하면서 기존 커넥터 구성을 업데이트하려면 UpdateConnector API를 사용합니다. 자세한 내용은 [커넥터 업데이트](mkc-update-connector.md) 단원을 참조하십시오.

**Example : 소스 커넥터를 다시 생성할 때 오프셋 스토리지 주제 지정**  
오프셋 연속성을 유지하면서 커넥터를 삭제하고 다시 생성해야 하는 경우 작업자 구성에서 오프셋 스토리지 주제를 지정할 수 있습니다. 예를 들어 변경 데이터 캡처(CDC) 커넥터가 있고 CDC 스트림에서 위치를 잃지 않고 다시 생성하려고 한다고 가정해 보겠습니다. 다음 단계에서는 이 작업을 수행하는 방법을 설명합니다.  

1. 클라이언트 머신에서 다음 명령을 실행하여 커넥터의 오프셋 스토리지 주제 이름을 찾습니다. `{{<bootstrapBrokerString>}}`을 클러스터의 부트스트랩 브로커 문자열로 변경합니다. 부트스트랩 브로커 문자열을 가져오는 방법에 대한 지침은 [Amazon MSK 클러스터를 위한 부트스트랩 브로커 가져오기](msk-get-bootstrap-brokers.md) 섹션을 참조하세요.

   ```
   {{<path-to-your-kafka-installation>}}/bin/kafka-topics.sh --list --bootstrap-server {{<bootstrapBrokerString>}}
   ```

   다음 출력에는 기본 내부 커넥터 주제를 포함한 모든 클러스터 주제 목록이 나와 있습니다. 이 예제에서는 기존 CDC 커넥터가 MSK Connect에서 생성한 [기본 오프셋 스토리지 주제](msk-connect-default-offset-storage-topic.md)를 사용합니다. 이것이 오프셋 저장소 주제를 `__amazon_msk_connect_offsets_my-mskc-connector_12345678-09e7-4abc-8be8-c657f7e4ff32-2`라고 부르는 이유입니다.

   ```
   __consumer_offsets
   __amazon_msk_canary
   __amazon_msk_connect_configs_my-mskc-connector_12345678-09e7-4abc-8be8-c657f7e4ff32-2
   __amazon_msk_connect_offsets_my-mskc-connector_12345678-09e7-4abc-8be8-c657f7e4ff32-2
   __amazon_msk_connect_status_my-mskc-connector_12345678-09e7-4abc-8be8-c657f7e4ff32-2
   my-msk-topic-1
   my-msk-topic-2
   ```

1. [https://console.aws.amazon.com/msk/](https://console.aws.amazon.com/msk)에서 Amazon MSK 콘솔을 엽니다.

1. **커넥터** 목록에서 커넥터를 선택합니다. **커넥터 구성** 필드의 내용을 복사하여 저장하면 이를 수정하고 새 커넥터를 생성하는 데 사용할 수 있습니다.

1. 커넥터를 삭제하려면 **삭제**를 선택합니다. 그런 다음 텍스트 입력 필드에 커넥터 이름을 입력하여 삭제를 확인합니다.

1. 시나리오에 적합한 값으로 사용자 지정 작업자 구성을 생성합니다. 지침은 [사용자 지정 작업자 구성 생성](msk-connect-create-custom-worker-config.md) 섹션을 참조하세요.

   작업자 구성에서 다음 구성과 같이 이전에 검색한 오프셋 스토리지 주제의 이름을 `offset.storage.topic`의 값으로 지정해야 합니다.

   ```
   config.providers.secretManager.param.aws.region=eu-west-3
   key.converter=<org.apache.kafka.connect.storage.StringConverter>
   value.converter=<org.apache.kafka.connect.storage.StringConverter>
   config.providers.secretManager.class=com.github.jcustenborder.kafka.config.aws.SecretsManagerConfigProvider
   config.providers=secretManager
   offset.storage.topic={{__amazon_msk_connect_offsets_my-mskc-connector_12345678-09e7-4abc-8be8-c657f7e4ff32-2}}
   ```

1. 
**중요**  
새 커넥터에 이전 커넥터와 동일한 이름을 지정해야 합니다.

   이전 단계에서 설정한 작업자 구성을 사용하여 새 커넥터를 생성합니다. 지침은 [커넥터 생성](mkc-create-connector-intro.md) 단원을 참조하세요.