SlideShare ist ein Scribd-Unternehmen logo
1 von 31
Downloaden Sie, um offline zu lesen
Sources와 Sinks를 Confluent Cloud에
원활하게 연결
HyunSoo Kim
Senior Solutions Engineer, Korea SE Team Lead
Copyright 2020, Confluent, Inc. All rights reserved. This document may not be reproduced in any manner without the express written permission of Confluent, Inc.
주제
2
1. 워크샵 팁 및 도움말
2. 프레젠테이션: Confluent Connectors 개요 및 이용 사례
3. 워크샵: Confluent 전문가가 안내하는 Hands-on Lab
4. Q&A
C O N F I D E N T I A L
3
워크샵 팁 및 도움말:
1. 세션이 진행되는 동안 '채팅' 창에서 지침을 확인하세요.
[Zoom 하단의 도구 모음에 있는 아이콘]
2. 기술적인 문제가 있는 경우
'손 들기' 버튼을 클릭하거나 '채팅' 창에 글을 올려주세요.
[Confluent 팀원이 도와드립니다.]
3. 이 세션은 대화형 세션이므로 Zoom 하단의 도구 모음에 있는 'Q&A 버튼'을 활용해 질문을
해주시기 바랍니다. 세션이 끝나기 전에 'Q&A' 시간도 가질 예정입니다.
Copyright 2020, Confluent, Inc. All rights reserved. This document may not be reproduced in any manner without the express written permission of Confluent, Inc.
이벤트 기반 아키텍처로의 전환을 고려하기 전에는...
기존 아키텍처는 다음과 같은 모습이었습니다.
• 확장이 어렵고 처리량이 적음
• 여러 개의 단일 장애 지점(Single Points of Failure)
• 비영구적 데이터
• 데이터 통합이 복잡
• 높은 레거시 시스템 비용
Copyright 2020, Confluent, Inc. All rights reserved. This document may not be reproduced in any manner without the express written permission of Confluent, Inc.
그리고 시간이 지나면서 이렇게 바뀌었습니다...
5
비즈니스 부문 1 비즈니스 부문 2 퍼블릭 클라우드
Copyright 2020, Confluent, Inc. All rights reserved. This document may not be reproduced in any manner without the express written permission of Confluent, Inc.
Data in Motion을 위한 Confluent
실시간 재고 관리 실시간 사기
탐지
실시간
고객 360
머신
러닝
모델
실시간 데이터
변환
LOB
앱
이벤트 스트리밍 애플리케이션
범용 이벤트 파이프라인
Hadoop ...
장치
로그 ... 앱 ...
데이터
웨어하우스
Splunk ...
데이터 저장소 로그 타사 앱 사용자 정의 앱 / 마이크로서비스
메인프레임
마이크로
서비스
Kafka Connect
알려진 시스템(데이터베이스, 오브젝트 스토리지, 큐 등)을
Apache Kafka에 연결하는 코드 없는 방식
Kafka Connect Kafka Connect
데이터
Sources
데이터
Sinks
Kafka Connect(ETL과 유사)
8
Copyright 2020, Confluent, Inc. All rights reserved. This document may not be reproduced in any manner without the express written permission of Confluent, Inc.
널리 사용되는 Data Sources & Sinks 연결
데이터
다이오드
175+
사전 구축된
connectors
80개 이상의 Confluent 지원 45개 이상의 파트너 지원, Confluent 인증
다음을 통해 connector를 쉽게 찾아볼
수 있습니다.
• Source vs. Sinks
• Confluent 지원 vs 파트너 지원
• 상업용 vs 무료
• Confluent Cloud에서 이용 가능
confluent.io/ko-kr/hub
Confluent Hub
Kafka Connect 개념
Kafka Connect 용어
12
Connector
- Source
- Sink
Connect Worker
- Distributed
- Standalone
Tasks Converters &
Transforms
Workers, Connectors and Tasks (1/3)
13
JDBC Source Oracle DB1
task 2
task 1
Kafka Connect Worker 1 Kafka Connect Worker 2 Kafka Connect Worker 3
HDFS Sink Connector
task 2
task 1
JDBC Source Oracle DB1
task 4
task 3
HDFS Sink Connector
task 4
task 3
JDBC Source Oracle DB1
task 6
task 5
HDFS Sink Connector
task 6
task 5
13
JDBC Sink Oracle DB2
task 1
JDBC Sink Oracle DB2
Workers, Connectors and Tasks (2/3)
14
JDBC Source Oracle DB1
task 2
task 1
Kafka Connect Worker 1 Kafka Connect Worker 2 Kafka Connect Worker 3
HDFS Sink Connector
task 2
task 1
JDBC Source Oracle DB1
task 4
task 3
HDFS Sink Connector
task 4
task 3
JDBC Source Oracle DB1
task 6
task 5
HDFS Sink Connector
task 6
task 5
14
task 1
Workers, Connectors and Tasks (3/3)
15
JDBC Source Oracle DB1
task 2
task 1
Kafka Connect Worker 1 Kafka Connect Worker 2 Kafka Connect Worker 3
HDFS Sink Connector
task 2
task 1
JDBC Source Oracle DB1
task 4
task 3
HDFS Sink Connector
task 4
task 3
HDFS Sink Connector
task 6
task 5
15
JDBC Source Oracle DB1
task 6
task 5
JDBC Sink Oracle DB2
task 1
16
Self managed vs Fully managed ?
Fully Managed
Connectors
● Confluent Cloud에서 완전히 관리되고
호스팅됨
● 간단한 GUI 기반 구성 - UI, ccloud CLI
또는 Connect API를 사용하여 쉽게
설정 가능
● 관리할 인프라가 없는 탄력적인 확장
● 완전 관리형 Connector 30개, 지금도
계속 증가하고 있음
Self Managed Connectors
1) Confluent Platform을 사용하여 로컬
Connect 클러스터 배포
2) Confluent Cloud에 로컬 Connect 클러스터
연결
3) Connect 클러스터에 Self Managed
Connector 설치
4) Connector 실행
18
● Confluent Cloud의 클러스터에 연결된 로컬
Kafka Connect 클러스터에 설치
● Confluent에서 지원
● 다양한 배포 방법:
○ Zip
○ RPM(RHEL 및 Centos)
○ DEB(Ubuntu 및 Debian)
○ Docker
○ Kubernetes - Confluent Operator
○ Terraform(GCP/AWS용)
Schema Registry
앱 1
!
Schema
Registry
Kafka
topic
!
Serializer
앱 1
Serializer
• 앱 개발 호환성 지원
• 표준 스키마를 사용하여 개발
• 모든 표준 스키마의 버전화된 기록 저장
및 공유
• 클라이언트 또는 커넥터 수준에서
데이터 호환성 확인
• 운영 복잡성 감소
• 스키마를 표준화하여 개발자들 간의
시간이 많이 걸리는 조정 방지
C O N F I D E N T I A L
Confluent Cloud
동적 성능 및 탄력성
자동 밸런싱 및 업그레이드
유연한 DevOps 자동화
CLI | Terraform | Operator | Ansible
GUI 기반 관리 및 모니터링
클라우드 대시보드 | Metrics API
규모에 맞는
효율적인 운영
선택의 자유
커미터 기반의 전문성
이벤트 스트리밍 데이터베이스
ksql
풍부한 사전 구축 에코시스템
Connectors | Hub | Schema Registry
다국어 개발
비 Java 클라이언트 | REST 프록시
글로벌 탄력성
Replicator
데이터 호환성
Schema Registry
엔터프라이즈급 보안
SSO/SAML | ACL
아키텍트
운영자
개발자
오픈 소스 | 커뮤니티 라이선스
무제한의
개발자 생산성
프로덕션 단계 전제조건
완전 관리형 클라우드 서비스
자체 관리형 소프트웨어
교육 파트너
엔터프라이즈
지원
프로페셔널
서비스
Apache Kafka
실습 워크샵
Copyright 2021, Confluent, Inc. All rights reserved. This document may not be reproduced in any manner without the express written permission of Confluent, Inc. 22
Confluent Cloud 계정 가입하기
● 여기서 가입하세요! https://www.confluent.io/confluent-cloud/tryfree/
● 가입을 완료하고 로그인한 후 우측 상단에 있는 메뉴 아이콘을 클릭하고 "Billing & payment"를
클릭한 다음 "Payment details & contacts"에 결제 정보를 입력합니다.
● Confluent Cloud 계정에 가입하면 처음 두 달 동안 Confluent Cloud 계정에 최대 400달러의
크레딧이 추가됩니다.
● 참고: 이 워크샵에서는 비용이 발생하는 리소스를 생성하게 됩니다. 400달러의 크레딧으로 워크샵 중에
생성한 리소스 비용을 충당합니다. 추가 비용이 발생하지 않도록 "클러스터를 스핀다운"하세요.
랩 가이드:
https://github.com/confluentinc/commercial-workshops/tree/master/series-getting-started-wi
th-cc/workshop-connectors
워크샵 내용
23
- 완전 관리형(fully-managed), 셀프 관리형(self-managed) connector를 이용해
Confluent Cloud 환경 설정하기
- 완전 관리형(fully-managed), 셀프 관리형(self-managed) connector의 사용 사례
배우기
- Confluent Cloud 환경에서 data의 엔드투엔드 흐름 확인하기
워크샵 아키텍처
C O N F I D E N T I A L
워크샵 아키텍처 다이어그램 본 실습에서는
GCS 사용
C O N F I D E N T I A L
워크샵 주의사항
26
- 완전히 새로운 Environment를 생성하세요.
- GCP Seoul Region을 선택해서 Confluent Cloud 생성하세요.
- Pre-requisites : 6번 항목
Service Account는 이미 생성되어서 제공됩니다
Bucket Name : bucket_workshop_20220223_kr
Region : asia-northeast3 (Seoul)
IAM Policy는 이미 적용되어 있습니다
- Fully-Managed Google Cloud Storage(GCS) Sink Connector 사용
Use an existing API key 선택
C O N F I D E N T I A L
Fully-Managed Google Cloud Storage(GCS) Sink
Connector 생성 화면
27
bucket_workshop_20220223_kr
중요
C O N F I D E N T I A L
docker-compose 실행 결과
28
C O N F I D E N T I A L
목표 과제
29
GCS Sink Connector 생성후 정상 동작 화면 캡처 후
메일(korea-marketing@confluent.io)로 전송
Q&A
Sources와 Sinks를 Confluent Cloud에 원활하게 연결

Weitere ähnliche Inhalte

Was ist angesagt?

Was ist angesagt? (20)

Deep Dive into Apache Kafka
Deep Dive into Apache KafkaDeep Dive into Apache Kafka
Deep Dive into Apache Kafka
 
4. 대용량 아키텍쳐 설계 패턴
4. 대용량 아키텍쳐 설계 패턴4. 대용량 아키텍쳐 설계 패턴
4. 대용량 아키텍쳐 설계 패턴
 
Monoliths and Microservices
Monoliths and Microservices Monoliths and Microservices
Monoliths and Microservices
 
Choisir entre une API RPC, SOAP, REST, GraphQL? 
Et si le problème était ai...
Choisir entre une API  RPC, SOAP, REST, GraphQL?  
Et si le problème était ai...Choisir entre une API  RPC, SOAP, REST, GraphQL?  
Et si le problème était ai...
Choisir entre une API RPC, SOAP, REST, GraphQL? 
Et si le problème était ai...
 
Architecture patterns for distributed, hybrid, edge and global Apache Kafka d...
Architecture patterns for distributed, hybrid, edge and global Apache Kafka d...Architecture patterns for distributed, hybrid, edge and global Apache Kafka d...
Architecture patterns for distributed, hybrid, edge and global Apache Kafka d...
 
Kafka streams windowing behind the curtain
Kafka streams windowing behind the curtain Kafka streams windowing behind the curtain
Kafka streams windowing behind the curtain
 
How to Build an Apache Kafka® Connector
How to Build an Apache Kafka® ConnectorHow to Build an Apache Kafka® Connector
How to Build an Apache Kafka® Connector
 
Event Sourcing & CQRS, Kafka, Rabbit MQ
Event Sourcing & CQRS, Kafka, Rabbit MQEvent Sourcing & CQRS, Kafka, Rabbit MQ
Event Sourcing & CQRS, Kafka, Rabbit MQ
 
분산 트랜잭션 환경에서 데이터 일관성 유지 방안 업로드용
분산 트랜잭션 환경에서 데이터 일관성 유지 방안 업로드용분산 트랜잭션 환경에서 데이터 일관성 유지 방안 업로드용
분산 트랜잭션 환경에서 데이터 일관성 유지 방안 업로드용
 
Securing Kafka
Securing Kafka Securing Kafka
Securing Kafka
 
Introduction to Kafka connect
Introduction to Kafka connectIntroduction to Kafka connect
Introduction to Kafka connect
 
Microservices Architecture - Cloud Native Apps
Microservices Architecture - Cloud Native AppsMicroservices Architecture - Cloud Native Apps
Microservices Architecture - Cloud Native Apps
 
Introduction to Kafka Streams
Introduction to Kafka StreamsIntroduction to Kafka Streams
Introduction to Kafka Streams
 
Apache Flink, AWS Kinesis, Analytics
Apache Flink, AWS Kinesis, Analytics Apache Flink, AWS Kinesis, Analytics
Apache Flink, AWS Kinesis, Analytics
 
Introduction to Apache Kafka
Introduction to Apache KafkaIntroduction to Apache Kafka
Introduction to Apache Kafka
 
Stream processing using Kafka
Stream processing using KafkaStream processing using Kafka
Stream processing using Kafka
 
Netflix viewing data architecture evolution - QCon 2014
Netflix viewing data architecture evolution - QCon 2014Netflix viewing data architecture evolution - QCon 2014
Netflix viewing data architecture evolution - QCon 2014
 
Apache Kafka Best Practices
Apache Kafka Best PracticesApache Kafka Best Practices
Apache Kafka Best Practices
 
Confluent REST Proxy and Schema Registry (Concepts, Architecture, Features)
Confluent REST Proxy and Schema Registry (Concepts, Architecture, Features)Confluent REST Proxy and Schema Registry (Concepts, Architecture, Features)
Confluent REST Proxy and Schema Registry (Concepts, Architecture, Features)
 
카프카, 산전수전 노하우
카프카, 산전수전 노하우카프카, 산전수전 노하우
카프카, 산전수전 노하우
 

Ähnlich wie Sources와 Sinks를 Confluent Cloud에 원활하게 연결

Ähnlich wie Sources와 Sinks를 Confluent Cloud에 원활하게 연결 (20)

Meetup tools for-cloud_native_apps_meetup20180510-vs
Meetup tools for-cloud_native_apps_meetup20180510-vsMeetup tools for-cloud_native_apps_meetup20180510-vs
Meetup tools for-cloud_native_apps_meetup20180510-vs
 
Mastering devops with oracle 강인호
Mastering devops with oracle 강인호Mastering devops with oracle 강인호
Mastering devops with oracle 강인호
 
2022년 07월 21일 Confluent+Imply 웨비나 발표자료
2022년 07월 21일 Confluent+Imply 웨비나 발표자료2022년 07월 21일 Confluent+Imply 웨비나 발표자료
2022년 07월 21일 Confluent+Imply 웨비나 발표자료
 
IBM Bluemix handson lab_DevOps_Target_Deploy_configutation_java_petclinic_v1.0
IBM Bluemix handson lab_DevOps_Target_Deploy_configutation_java_petclinic_v1.0IBM Bluemix handson lab_DevOps_Target_Deploy_configutation_java_petclinic_v1.0
IBM Bluemix handson lab_DevOps_Target_Deploy_configutation_java_petclinic_v1.0
 
[AIS 2018] [Team Tools_Advanced] Confluence 100배 활용하기 - 커브
[AIS 2018] [Team Tools_Advanced] Confluence 100배 활용하기 - 커브[AIS 2018] [Team Tools_Advanced] Confluence 100배 활용하기 - 커브
[AIS 2018] [Team Tools_Advanced] Confluence 100배 활용하기 - 커브
 
[NDC17] 왓 스튜디오 서비스파트
[NDC17] 왓 스튜디오 서비스파트[NDC17] 왓 스튜디오 서비스파트
[NDC17] 왓 스튜디오 서비스파트
 
델파이XE2와 파이어몽키(FireMoneky)
델파이XE2와 파이어몽키(FireMoneky)델파이XE2와 파이어몽키(FireMoneky)
델파이XE2와 파이어몽키(FireMoneky)
 
Confluent Startup Webinar Series
 Confluent Startup Webinar Series Confluent Startup Webinar Series
Confluent Startup Webinar Series
 
[OpenStack Day in Korea] 15분만에 구축하는 오픈스택 기반 크라우드 솔루션: HP CloudSystem
[OpenStack Day in Korea] 15분만에 구축하는 오픈스택 기반 크라우드 솔루션: HP CloudSystem[OpenStack Day in Korea] 15분만에 구축하는 오픈스택 기반 크라우드 솔루션: HP CloudSystem
[OpenStack Day in Korea] 15분만에 구축하는 오픈스택 기반 크라우드 솔루션: HP CloudSystem
 
2015.07.01
2015.07.012015.07.01
2015.07.01
 
Confluent Tech Talk
Confluent Tech TalkConfluent Tech Talk
Confluent Tech Talk
 
Openshift 활용을 위한 Application의 준비, Cloud Native
Openshift 활용을 위한 Application의 준비, Cloud NativeOpenshift 활용을 위한 Application의 준비, Cloud Native
Openshift 활용을 위한 Application의 준비, Cloud Native
 
왜 컨테이너인가? - OpenShift 구축 사례와 컨테이너로 환경 전환 시 고려사항
왜 컨테이너인가? - OpenShift 구축 사례와 컨테이너로 환경 전환 시 고려사항왜 컨테이너인가? - OpenShift 구축 사례와 컨테이너로 환경 전환 시 고려사항
왜 컨테이너인가? - OpenShift 구축 사례와 컨테이너로 환경 전환 시 고려사항
 
[D2 COMMUNITY] Open Container Seoul Meetup - 마이크로 서비스 아키텍쳐와 Docker kubernetes
[D2 COMMUNITY] Open Container Seoul Meetup -  마이크로 서비스 아키텍쳐와 Docker kubernetes[D2 COMMUNITY] Open Container Seoul Meetup -  마이크로 서비스 아키텍쳐와 Docker kubernetes
[D2 COMMUNITY] Open Container Seoul Meetup - 마이크로 서비스 아키텍쳐와 Docker kubernetes
 
Bluemix 23th meetup 실습 자료
Bluemix 23th meetup 실습 자료Bluemix 23th meetup 실습 자료
Bluemix 23th meetup 실습 자료
 
Deview 2013 :: Backend PaaS, CloudFoundry 뽀개기
Deview 2013 :: Backend PaaS, CloudFoundry 뽀개기Deview 2013 :: Backend PaaS, CloudFoundry 뽀개기
Deview 2013 :: Backend PaaS, CloudFoundry 뽀개기
 
개발 방식을 바꾸는 15가지 기술
개발 방식을 바꾸는 15가지 기술개발 방식을 바꾸는 15가지 기술
개발 방식을 바꾸는 15가지 기술
 
도커 컨테이너 활용 사례 Codigm - 남 유석 개발팀장 :: AWS Container Day
도커 컨테이너 활용 사례 Codigm - 남 유석 개발팀장 :: AWS Container Day도커 컨테이너 활용 사례 Codigm - 남 유석 개발팀장 :: AWS Container Day
도커 컨테이너 활용 사례 Codigm - 남 유석 개발팀장 :: AWS Container Day
 
K8s beginner 2_advanced_ep02_201904221130_post
K8s beginner 2_advanced_ep02_201904221130_postK8s beginner 2_advanced_ep02_201904221130_post
K8s beginner 2_advanced_ep02_201904221130_post
 
Infra as Code with Packer, Ansible and Terraform
Infra as Code with Packer, Ansible and TerraformInfra as Code with Packer, Ansible and Terraform
Infra as Code with Packer, Ansible and Terraform
 

Mehr von confluent

Mehr von confluent (20)

Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
 
Santander Stream Processing with Apache Flink
Santander Stream Processing with Apache FlinkSantander Stream Processing with Apache Flink
Santander Stream Processing with Apache Flink
 
Unlocking the Power of IoT: A comprehensive approach to real-time insights
Unlocking the Power of IoT: A comprehensive approach to real-time insightsUnlocking the Power of IoT: A comprehensive approach to real-time insights
Unlocking the Power of IoT: A comprehensive approach to real-time insights
 
Workshop híbrido: Stream Processing con Flink
Workshop híbrido: Stream Processing con FlinkWorkshop híbrido: Stream Processing con Flink
Workshop híbrido: Stream Processing con Flink
 
Industry 4.0: Building the Unified Namespace with Confluent, HiveMQ and Spark...
Industry 4.0: Building the Unified Namespace with Confluent, HiveMQ and Spark...Industry 4.0: Building the Unified Namespace with Confluent, HiveMQ and Spark...
Industry 4.0: Building the Unified Namespace with Confluent, HiveMQ and Spark...
 
AWS Immersion Day Mapfre - Confluent
AWS Immersion Day Mapfre   -   ConfluentAWS Immersion Day Mapfre   -   Confluent
AWS Immersion Day Mapfre - Confluent
 
Eventos y Microservicios - Santander TechTalk
Eventos y Microservicios - Santander TechTalkEventos y Microservicios - Santander TechTalk
Eventos y Microservicios - Santander TechTalk
 
Q&A with Confluent Experts: Navigating Networking in Confluent Cloud
Q&A with Confluent Experts: Navigating Networking in Confluent CloudQ&A with Confluent Experts: Navigating Networking in Confluent Cloud
Q&A with Confluent Experts: Navigating Networking in Confluent Cloud
 
Citi TechTalk Session 2: Kafka Deep Dive
Citi TechTalk Session 2: Kafka Deep DiveCiti TechTalk Session 2: Kafka Deep Dive
Citi TechTalk Session 2: Kafka Deep Dive
 
Build real-time streaming data pipelines to AWS with Confluent
Build real-time streaming data pipelines to AWS with ConfluentBuild real-time streaming data pipelines to AWS with Confluent
Build real-time streaming data pipelines to AWS with Confluent
 
Q&A with Confluent Professional Services: Confluent Service Mesh
Q&A with Confluent Professional Services: Confluent Service MeshQ&A with Confluent Professional Services: Confluent Service Mesh
Q&A with Confluent Professional Services: Confluent Service Mesh
 
Citi Tech Talk: Event Driven Kafka Microservices
Citi Tech Talk: Event Driven Kafka MicroservicesCiti Tech Talk: Event Driven Kafka Microservices
Citi Tech Talk: Event Driven Kafka Microservices
 
Confluent & GSI Webinars series - Session 3
Confluent & GSI Webinars series - Session 3Confluent & GSI Webinars series - Session 3
Confluent & GSI Webinars series - Session 3
 
Citi Tech Talk: Messaging Modernization
Citi Tech Talk: Messaging ModernizationCiti Tech Talk: Messaging Modernization
Citi Tech Talk: Messaging Modernization
 
Citi Tech Talk: Data Governance for streaming and real time data
Citi Tech Talk: Data Governance for streaming and real time dataCiti Tech Talk: Data Governance for streaming and real time data
Citi Tech Talk: Data Governance for streaming and real time data
 
Confluent & GSI Webinars series: Session 2
Confluent & GSI Webinars series: Session 2Confluent & GSI Webinars series: Session 2
Confluent & GSI Webinars series: Session 2
 
Data In Motion Paris 2023
Data In Motion Paris 2023Data In Motion Paris 2023
Data In Motion Paris 2023
 
Confluent Partner Tech Talk with Synthesis
Confluent Partner Tech Talk with SynthesisConfluent Partner Tech Talk with Synthesis
Confluent Partner Tech Talk with Synthesis
 
The Future of Application Development - API Days - Melbourne 2023
The Future of Application Development - API Days - Melbourne 2023The Future of Application Development - API Days - Melbourne 2023
The Future of Application Development - API Days - Melbourne 2023
 
The Playful Bond Between REST And Data Streams
The Playful Bond Between REST And Data StreamsThe Playful Bond Between REST And Data Streams
The Playful Bond Between REST And Data Streams
 

Sources와 Sinks를 Confluent Cloud에 원활하게 연결

  • 1. Sources와 Sinks를 Confluent Cloud에 원활하게 연결 HyunSoo Kim Senior Solutions Engineer, Korea SE Team Lead
  • 2. Copyright 2020, Confluent, Inc. All rights reserved. This document may not be reproduced in any manner without the express written permission of Confluent, Inc. 주제 2 1. 워크샵 팁 및 도움말 2. 프레젠테이션: Confluent Connectors 개요 및 이용 사례 3. 워크샵: Confluent 전문가가 안내하는 Hands-on Lab 4. Q&A
  • 3. C O N F I D E N T I A L 3 워크샵 팁 및 도움말: 1. 세션이 진행되는 동안 '채팅' 창에서 지침을 확인하세요. [Zoom 하단의 도구 모음에 있는 아이콘] 2. 기술적인 문제가 있는 경우 '손 들기' 버튼을 클릭하거나 '채팅' 창에 글을 올려주세요. [Confluent 팀원이 도와드립니다.] 3. 이 세션은 대화형 세션이므로 Zoom 하단의 도구 모음에 있는 'Q&A 버튼'을 활용해 질문을 해주시기 바랍니다. 세션이 끝나기 전에 'Q&A' 시간도 가질 예정입니다.
  • 4. Copyright 2020, Confluent, Inc. All rights reserved. This document may not be reproduced in any manner without the express written permission of Confluent, Inc. 이벤트 기반 아키텍처로의 전환을 고려하기 전에는... 기존 아키텍처는 다음과 같은 모습이었습니다. • 확장이 어렵고 처리량이 적음 • 여러 개의 단일 장애 지점(Single Points of Failure) • 비영구적 데이터 • 데이터 통합이 복잡 • 높은 레거시 시스템 비용
  • 5. Copyright 2020, Confluent, Inc. All rights reserved. This document may not be reproduced in any manner without the express written permission of Confluent, Inc. 그리고 시간이 지나면서 이렇게 바뀌었습니다... 5 비즈니스 부문 1 비즈니스 부문 2 퍼블릭 클라우드
  • 6. Copyright 2020, Confluent, Inc. All rights reserved. This document may not be reproduced in any manner without the express written permission of Confluent, Inc. Data in Motion을 위한 Confluent 실시간 재고 관리 실시간 사기 탐지 실시간 고객 360 머신 러닝 모델 실시간 데이터 변환 LOB 앱 이벤트 스트리밍 애플리케이션 범용 이벤트 파이프라인 Hadoop ... 장치 로그 ... 앱 ... 데이터 웨어하우스 Splunk ... 데이터 저장소 로그 타사 앱 사용자 정의 앱 / 마이크로서비스 메인프레임 마이크로 서비스
  • 7. Kafka Connect 알려진 시스템(데이터베이스, 오브젝트 스토리지, 큐 등)을 Apache Kafka에 연결하는 코드 없는 방식 Kafka Connect Kafka Connect 데이터 Sources 데이터 Sinks
  • 9. Copyright 2020, Confluent, Inc. All rights reserved. This document may not be reproduced in any manner without the express written permission of Confluent, Inc. 널리 사용되는 Data Sources & Sinks 연결 데이터 다이오드 175+ 사전 구축된 connectors 80개 이상의 Confluent 지원 45개 이상의 파트너 지원, Confluent 인증
  • 10. 다음을 통해 connector를 쉽게 찾아볼 수 있습니다. • Source vs. Sinks • Confluent 지원 vs 파트너 지원 • 상업용 vs 무료 • Confluent Cloud에서 이용 가능 confluent.io/ko-kr/hub Confluent Hub
  • 12. Kafka Connect 용어 12 Connector - Source - Sink Connect Worker - Distributed - Standalone Tasks Converters & Transforms
  • 13. Workers, Connectors and Tasks (1/3) 13 JDBC Source Oracle DB1 task 2 task 1 Kafka Connect Worker 1 Kafka Connect Worker 2 Kafka Connect Worker 3 HDFS Sink Connector task 2 task 1 JDBC Source Oracle DB1 task 4 task 3 HDFS Sink Connector task 4 task 3 JDBC Source Oracle DB1 task 6 task 5 HDFS Sink Connector task 6 task 5 13 JDBC Sink Oracle DB2 task 1
  • 14. JDBC Sink Oracle DB2 Workers, Connectors and Tasks (2/3) 14 JDBC Source Oracle DB1 task 2 task 1 Kafka Connect Worker 1 Kafka Connect Worker 2 Kafka Connect Worker 3 HDFS Sink Connector task 2 task 1 JDBC Source Oracle DB1 task 4 task 3 HDFS Sink Connector task 4 task 3 JDBC Source Oracle DB1 task 6 task 5 HDFS Sink Connector task 6 task 5 14 task 1
  • 15. Workers, Connectors and Tasks (3/3) 15 JDBC Source Oracle DB1 task 2 task 1 Kafka Connect Worker 1 Kafka Connect Worker 2 Kafka Connect Worker 3 HDFS Sink Connector task 2 task 1 JDBC Source Oracle DB1 task 4 task 3 HDFS Sink Connector task 4 task 3 HDFS Sink Connector task 6 task 5 15 JDBC Source Oracle DB1 task 6 task 5 JDBC Sink Oracle DB2 task 1
  • 16. 16 Self managed vs Fully managed ?
  • 17. Fully Managed Connectors ● Confluent Cloud에서 완전히 관리되고 호스팅됨 ● 간단한 GUI 기반 구성 - UI, ccloud CLI 또는 Connect API를 사용하여 쉽게 설정 가능 ● 관리할 인프라가 없는 탄력적인 확장 ● 완전 관리형 Connector 30개, 지금도 계속 증가하고 있음
  • 18. Self Managed Connectors 1) Confluent Platform을 사용하여 로컬 Connect 클러스터 배포 2) Confluent Cloud에 로컬 Connect 클러스터 연결 3) Connect 클러스터에 Self Managed Connector 설치 4) Connector 실행 18 ● Confluent Cloud의 클러스터에 연결된 로컬 Kafka Connect 클러스터에 설치 ● Confluent에서 지원 ● 다양한 배포 방법: ○ Zip ○ RPM(RHEL 및 Centos) ○ DEB(Ubuntu 및 Debian) ○ Docker ○ Kubernetes - Confluent Operator ○ Terraform(GCP/AWS용)
  • 19. Schema Registry 앱 1 ! Schema Registry Kafka topic ! Serializer 앱 1 Serializer • 앱 개발 호환성 지원 • 표준 스키마를 사용하여 개발 • 모든 표준 스키마의 버전화된 기록 저장 및 공유 • 클라이언트 또는 커넥터 수준에서 데이터 호환성 확인 • 운영 복잡성 감소 • 스키마를 표준화하여 개발자들 간의 시간이 많이 걸리는 조정 방지
  • 20. C O N F I D E N T I A L Confluent Cloud 동적 성능 및 탄력성 자동 밸런싱 및 업그레이드 유연한 DevOps 자동화 CLI | Terraform | Operator | Ansible GUI 기반 관리 및 모니터링 클라우드 대시보드 | Metrics API 규모에 맞는 효율적인 운영 선택의 자유 커미터 기반의 전문성 이벤트 스트리밍 데이터베이스 ksql 풍부한 사전 구축 에코시스템 Connectors | Hub | Schema Registry 다국어 개발 비 Java 클라이언트 | REST 프록시 글로벌 탄력성 Replicator 데이터 호환성 Schema Registry 엔터프라이즈급 보안 SSO/SAML | ACL 아키텍트 운영자 개발자 오픈 소스 | 커뮤니티 라이선스 무제한의 개발자 생산성 프로덕션 단계 전제조건 완전 관리형 클라우드 서비스 자체 관리형 소프트웨어 교육 파트너 엔터프라이즈 지원 프로페셔널 서비스 Apache Kafka
  • 22. Copyright 2021, Confluent, Inc. All rights reserved. This document may not be reproduced in any manner without the express written permission of Confluent, Inc. 22 Confluent Cloud 계정 가입하기 ● 여기서 가입하세요! https://www.confluent.io/confluent-cloud/tryfree/ ● 가입을 완료하고 로그인한 후 우측 상단에 있는 메뉴 아이콘을 클릭하고 "Billing & payment"를 클릭한 다음 "Payment details & contacts"에 결제 정보를 입력합니다. ● Confluent Cloud 계정에 가입하면 처음 두 달 동안 Confluent Cloud 계정에 최대 400달러의 크레딧이 추가됩니다. ● 참고: 이 워크샵에서는 비용이 발생하는 리소스를 생성하게 됩니다. 400달러의 크레딧으로 워크샵 중에 생성한 리소스 비용을 충당합니다. 추가 비용이 발생하지 않도록 "클러스터를 스핀다운"하세요. 랩 가이드: https://github.com/confluentinc/commercial-workshops/tree/master/series-getting-started-wi th-cc/workshop-connectors
  • 23. 워크샵 내용 23 - 완전 관리형(fully-managed), 셀프 관리형(self-managed) connector를 이용해 Confluent Cloud 환경 설정하기 - 완전 관리형(fully-managed), 셀프 관리형(self-managed) connector의 사용 사례 배우기 - Confluent Cloud 환경에서 data의 엔드투엔드 흐름 확인하기
  • 25. C O N F I D E N T I A L 워크샵 아키텍처 다이어그램 본 실습에서는 GCS 사용
  • 26. C O N F I D E N T I A L 워크샵 주의사항 26 - 완전히 새로운 Environment를 생성하세요. - GCP Seoul Region을 선택해서 Confluent Cloud 생성하세요. - Pre-requisites : 6번 항목 Service Account는 이미 생성되어서 제공됩니다 Bucket Name : bucket_workshop_20220223_kr Region : asia-northeast3 (Seoul) IAM Policy는 이미 적용되어 있습니다 - Fully-Managed Google Cloud Storage(GCS) Sink Connector 사용 Use an existing API key 선택
  • 27. C O N F I D E N T I A L Fully-Managed Google Cloud Storage(GCS) Sink Connector 생성 화면 27 bucket_workshop_20220223_kr 중요
  • 28. C O N F I D E N T I A L docker-compose 실행 결과 28
  • 29. C O N F I D E N T I A L 목표 과제 29 GCS Sink Connector 생성후 정상 동작 화면 캡처 후 메일(korea-marketing@confluent.io)로 전송
  • 30. Q&A