Type Here to Get Search Results !

kafka connect 개념 및 시작하기

이 글에서는 kafka connect에 대해서 설명하고 시작하는 방법을 알아봅니다. 

  • kafka connect란?
  • kafka connect 시작하기(start)
카프카 커넥트 시작하기 썸네일


kafka connect란?


Kafka Connect는 컨플루언트(Confluent)사에서 개발한 플랫폼으로, 다른 데이터 저장소들과 Kafka를 쉽게 연동할 수 있도록 도와줍니다. 이를 통해 Kafka Connect를 사용하면 데이터베이스의 정보를 쉽게 Hadoop이나 S3와 같은 빅데이터 저장소로 전송할 수 있습니다. 이러한 기능들은 플랫폼에서 제공되며, 잘 알려진 데이터베이스들은 이미 Kafka Connect 커넥터를 개발하여 연동할 수 있도록 지원하고 있습니다.

카프카와 카프카 커넥트 개념 kafka and connect

kafka connect는 기본적으로 만들어진 것을 사용할 수 있지만, 

2023/03/14 기준 최신 버전의 Kafka Connect를 다운로드하려면 아래 링크를 사용하시면 됩니다.

https://packages.confluent.io/archive/7.3/confluent-community-7.3.1.tar.gz

공식 사이트에서는 가입 후 다운로드 링크를 제공하고 있지만, 위 링크를 사용하시면 가입하지 않고도 직접 다운로드하실 수 있습니다.

압축을 아래와 같이 해제합니다. 

% ls
confluent-community-7.3.1.tar.gz  kafka_2.13-3.4.0/  kafka_2.13-3.4.0.tgz

lswhh@DESKTOP-HQPQNKV:~/kafka$ 
% tar -xvzf confluent-community-7.3.1.tar.gz
confluent-7.3.1/
confluent-7.3.1/share/
confluent-7.3.1/share/java/
confluent-7.3.1/share/java/kafka/
confluent-7.3.1/share/java/kafka/kafka-storage-api-7.3.1-ccs.jar
confluent-7.3.1/share/java/kafka/scala-library-2.13.10.jar
....


kafka connect 시작하기(start)


kafka-connect 디렉토리에서 아래 명령어로 kafka-connect distributed connect를 시작합니다. 

connect에는 standalone connect와 분산 connect가 있는데 실제 환경에서는 분산 connect를 주로 사용한다고 합니다.

lswhh@DESKTOP-HQPQNKV:~/kafka/confluent-7.3.1/bin$
% cd ..
lswhh@DESKTOP-HQPQNKV:~/kafka/confluent-7.3.1$
% ./bin/connect-distributed ./etc/kafka/connect-distributed.properties
[2023-03-10 09:36:16,156] INFO WorkerInfo values:
        jvm.args = -Xms256M, -Xmx2G, -XX:+UseG1GC, -XX:MaxGCPauseMillis=20, -XX:InitiatingHeapOccupancyPercent=35, -XX:+ExplicitGCInvokesConcu                      rrent, -XX:MaxInlineLevel=15, -Djava.awt.headless=true, -Dcom.sun.management.jmxremote, -Dcom.sun.management.jmxremote.authenticate=false, -Dc                      om.sun.management.jmxremote.ssl=false, -Dkafka.logs.dir=/home2/lswhh/work/kafka/confluent-7.3.1/bin/../logs, -Dlog4j.configuration=file:./bin/                      ../etc/kafka/connect-log4j.properties
        jvm.spec = Oracle Corporation, Java HotSpot(TM) 64-Bit Server VM, 1.8.0_241, 25.241-b07
.....
[2023-03-10 09:36:32,519] INFO [Producer clientId=producer-3] Resetting the last seen epoch of partition connect-configs-0 to 0 since the associated topicId changed from null to 3AwtijwtQ46ONUK6WmvPgw (org.apache.kafka.clients.Metadata:402)
[2023-03-10 09:36:32,554] INFO [Worker

curl을 통해서 실행중인 커넥터를 확인해 봅니다. 기본적으로 5개의 커넥터를 제공한다고 합니다. 
lswhh@DESKTOP-HQPQNKV:~/kafka/kafka_2.13-3.4.0$ curl -X GET http://localhost:8083/connector-plugins
[{"class":"io.confluent.connect.jdbc.JdbcSinkConnector","type":"sink","version":"10.6.4-SNAPSHOT"},{"class":"io.confluent.connect.jdbc.JdbcSourceConnector","type":"source","version":"10.6.4-SNAPSHOT"},{"class":"org.apache.kafka.connect.mirror.MirrorCheckpointConnector","type":"source","version":"7.3.1-ccs"},{"class":"org.apache.kafka.connect.mirror.MirrorHeartbeatConnector","type":"source","version":"7.3.1-ccs"},{"class":"org.apache.kafka.connect.mirror.MirrorSourceConnector","type":"source","version":"7.3.1-ccs"}]


Tags