4.4. Kafka Connect 서비스 다시 시작
이제 Debezium MySQL 커넥터가 이벤트를 생성, 업데이트 및 삭제하는 방법을 보았으므로 실행 중이 아닌 경우에도 변경 이벤트를 캡처하는 방법을 확인할 수 있습니다.
Kafka Connect 서비스는 등록된 커넥터에 대한 작업을 자동으로 관리합니다. 따라서 오프라인 상태가 되면 재시작 시 실행 불가능한 작업이 모두 시작됩니다. 즉, Debezium이 실행되고 있지 않더라도 데이터베이스의 변경 사항을 보고할 수 있습니다.
이 절차에서는 Kafka Connect를 중지하고 데이터베이스에서 일부 데이터를 변경한 다음 Kafka Connect를 다시 시작하여 변경 이벤트를 확인합니다.
프로세스
Kafka Connect 서비스를 중지합니다.
Kafka Connect 배포의 구성을 엽니다.
oc edit deployment/my-connect-cluster-connect
$ oc edit deployment/my-connect-cluster-connect
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 배포 구성이 열립니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
spec.replicas
값을0
으로 변경합니다. - 설정을 저장합니다.
Kafka Connect 서비스가 중지되었는지 확인합니다.
이 명령은 Kafka Connect 서비스가 완료되었으며 실행 중인 Pod가 없음을 보여줍니다.
oc get pods -l strimzi.io/name=my-connect-cluster-connect
$ oc get pods -l strimzi.io/name=my-connect-cluster-connect NAME READY STATUS RESTARTS AGE my-connect-cluster-connect-1-dxcs9 0/1 Completed 0 7h
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
Kafka Connect 서비스가 중단되는 동안 MySQL 클라이언트를 실행하는 터미널로 전환하고 새 레코드를 데이터베이스에 추가합니다.
mysql> INSERT INTO customers VALUES (default, "Sarah", "Thompson", "kitt@acme.com");
mysql> INSERT INTO customers VALUES (default, "Sarah", "Thompson", "kitt@acme.com");
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Kafka Connect 서비스를 다시 시작합니다.
Kafka Connect 서비스의 배포 구성을 엽니다.
oc edit deployment/my-connect-cluster-connect
$ oc edit deployment/my-connect-cluster-connect
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 배포 구성이 열립니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
spec.replicas
값을1
로 변경합니다. - 배포 구성을 저장합니다.
Kafka Connect 서비스가 다시 시작되었는지 확인합니다.
이 명령은 Kafka Connect 서비스가 실행 중이고 Pod가 준비되었음을 보여줍니다.
oc get pods -l strimzi.io/name=my-connect-cluster-connect
$ oc get pods -l strimzi.io/name=my-connect-cluster-connect NAME READY STATUS RESTARTS AGE my-connect-cluster-connect-2-q9kkl 1/1 Running 0 74s
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
-
kafka-console-consumer.sh
를 실행 중인 터미널로 전환합니다. 도착한 대로 새 이벤트가 열립니다. Kafka Connect가 오프라인 상태일 때 생성한 레코드를 검사합니다(읽기 쉽도록 포맷).
Copy to Clipboard Copied! Toggle word wrap Toggle overflow