2.2. Debezium 커넥터 구성 계획
Debezium 커넥터를 배포하기 전에 커넥터를 구성하는 방법을 결정합니다. 이 구성은 커넥터의 동작을 지정하고 Debezium이 소스 데이터베이스에 연결할 수 있는 정보를 제공합니다.
커넥터 구성을 JSON으로 지정하고 커넥터를 등록할 준비가 되면 curl
을 사용하여 Kafka Connect API 엔드포인트에 구성을 제출합니다.
사전 요구 사항
- 소스 데이터베이스가 배포되고 Debezium 커넥터가 데이터베이스에 액세스할 수 있습니다.
커넥터가 소스 데이터베이스에 액세스해야 하는 정보는 다음과 같습니다.
- 데이터베이스 호스트의 이름 또는 IP 주소입니다.
- 데이터베이스에 연결하기 위한 포트 번호입니다.
- 커넥터가 데이터베이스에 로그인하는 데 사용할 수 있는 계정의 이름입니다.
- 데이터베이스 사용자 계정의 암호입니다.
- 데이터베이스의 이름입니다.
- 커넥터가 정보를 캡처할 테이블의 이름입니다.
- 커넥터가 변경 이벤트를 내보낼 Kafka 브로커의 이름입니다.
- 커넥터가 데이터베이스 기록 정보를 보낼 Kafka 항목의 이름입니다.
프로세스
JSON 형식으로 Debezium 커넥터에 적용할 구성을 지정합니다.
다음 예제에서는 Debezium MySQL 커넥터에 대한 간단한 구성을 보여줍니다.
{ "name": "inventory-connector", 1 "config": { "connector.class": "io.debezium.connector.mysql.MySqlConnector", 2 "tasks.max": "1", 3 "database.hostname": "mysql", 4 "database.port": "3306", 5 "database.user": "debezium", 6 "database.password": "dbz", 7 "database.server.id": "184054", 8 "topic.prefix": "dbserver1", 9 "table.include.list": "public.inventory", 10 "schema.history.internal.kafka.bootstrap.servers": "kafka:9092", 11 "schema.history.internal.kafka.topic": "dbhistory.inventory" 12 } }
- 1
- Kafka Connect 클러스터에 등록할 커넥터의 이름입니다.
- 2
- 커넥터 클래스의 이름입니다.
- 3
- 동시에 작동할 수 있는 작업 수입니다. 한 번에 하나의 작업만 작동해야 합니다.
- 4
- 호스트 데이터베이스 인스턴스의 호스트 이름 또는 IP 주소입니다.
- 5
- 데이터베이스 인스턴스의 포트 번호입니다.
- 6
- Debezium이 데이터베이스에 연결되는 사용자 계정의 이름입니다.
- 7
- 데이터베이스 사용자 계정의 암호입니다.
- 8
- 커넥터의 고유 숫자 ID입니다.
이 속성은 MySQL 커넥터에만 사용됩니다. - 9
- 커넥터가 변경 사항을 캡처하는 서버의 데이터베이스 서버 또는 클러스터에 대한 논리 식별자 역할을 하는 문자열입니다. 지정된 문자열은 네임스페이스를 지정합니다. Debezium은 커넥터가 Kafka Connect 스키마의 이름과 Avro 변환기를 사용할 때 해당 Avro 스키마의 네임스페이스에 쓰는 각 Kafka 항목에 이 이름을 접두사로 지정합니다.
- 10
- 커넥터가 변경 이벤트를 캡처하는 테이블 목록입니다.
- 11
- 커넥터가 데이터베이스 스키마 기록을 전송하는 Kafka 브로커의 이름입니다. 지정된 브로커는 커넥터가 내보내는 변경 이벤트도 수신합니다.
- 12
- 스키마 기록을 저장하는 Kafka 항목의 이름입니다.
커넥터가 다시 시작되면 커넥터는 중지된 시점에서 데이터베이스 로그를 읽고 오프라인 상태에서 발생한 트랜잭션에 대한 이벤트를 발송합니다. 커넥터가 읽지 않은 트랜잭션에 대한 변경 이벤트를 Kafka에 쓰기 전에 스키마 기록을 확인한 다음 원래 트랜잭션이 발생했을 때 적용되는 스키마를 적용합니다.
추가 정보
- 각 커넥터 유형에 대해 설정할 수 있는 구성 속성에 대한 자세한 내용은 Debezium 사용자 가이드 의 커넥터 배포 설명서를 참조하십시오.