BEST
데이터 사이언스

/

데이터 엔지니어링

카프카 완벽 가이드 - 코어편

카프카(Kafka)의 핵심부터 내부 메커니즘에 대한 심화 수준의 내용까지, 상세한 이론 설명과 핸즈온 실습 & 실전 카프카 애플리케이션 개발 실습을 통해 카프카를 시작하는 사람도 단숨에 전문가 레벨로 도달할 수 있도록 강의를 구성했습니다.

(4.9) 수강평 56개

수강생 1,354명

Thumbnail

중급자를 위해 준비한
[데이터 엔지니어링, 데브옵스 · 인프라] 강의입니다.

이런 걸
배워요!

  • 카프카 핵심 아키텍처와 주요 구성 요소의 이해

  • 카프카의 내부 핵심 메커니즘 체득

  • CLI 기반의 다양한 카프카 Command로 카프카 운영 실습

  • Java를 이용하여 Producer와 Consumer의 다양한 기능을 직접 구현

  • 실습을 통한 카프카 Advanced 카프카 내부 메커니즘과 주요 환경 파라미터들의 이해

  • Producer와 Consumer를 활용한 실전 카프카 애플리케이션 구현

  • 멀티 브로커 카프카 클러스터에서 Replication과 가용성 아키텍처 실습과 이해

  • 주키퍼와 카프카의 기동 메커니즘과 컨트롤러의 리더 선출 프로세스 실습과 이해

  • 컨플루언트 Control Center를 이용하여 UI로 카프카 모니터링

  • 커스텀 객체의 직렬화/역직렬화

분산 스트리밍 플랫폼, 대세는 카프카! 
핵심부터 차근차근 확실하게 배워보세요.

대용량 데이터 처리를 위한 
대표 솔루션, 카프카!

나날이 방대해지는 데이터 처리 & 복잡한 비즈니스 요구사항, 이벤트 스트리밍 애플리케이션 구축의 해답은 카프카입니다.

메시징 시스템 카프카(Kafka)는 대용량 스트리밍 데이터 수집은 물론 대규모 데이터 파이프라인 구축, 이벤트 기반의 마이크로서비스 아키텍처(MSA) 구축 등에서 이제 빼놓을 수 없는 선택지가 되었습니다. 때문에 최근 몇 년간 많은 기업들은 카프카를 앞다투어 도입하고 있으며, 전문 인력에 대한 수요도 지속적으로 증가하고 있습니다.

왜 카프카일까요?

탁월한  
성능 & 가용성

강력한 
확장성

방대한 
오픈소스 생태계

뛰어난 
미션 안정성

드넓은 
유저 커뮤니티

풍부한 
온라인 자원

본 강의는 카프카에 대한 이론적 설명에만 그치지 않고 핵심 메커니즘의 내부 동작원리에 대한 상세한 설명과 실습, 실전 카프카 애플리케이션 개발 구현을 통해 여러분을 카프카 운영 및 개발 전문가로 만들어드릴 것입니다.


필수 요소는 물론 
수준 높은 실력까지 OK.

‘카프카 완벽 가이드 - 코어편’은

카프카가 
처음인 분 

카프카 실력 
향상을 원하는 분 

이론과 실습 
모두 챙기고픈 분 

카프카를 처음 배우시는 분뿐만 아니라 카프카를 업무에 적용하고 있지만 보다 튼튼한 기본기와 더욱 수준 높은 실력 향상을 원하시는 수강생 분들을 위해 만들어졌습니다. 

  • 카프카 주요 구성요소들의 핵심 메커니즘
  • CLI 명령어를 활용한 카프카 핸즈온 실습
  • Java 기반 카프카 클라이언트 라이브러리를 활용한 Producer와 Consumer의 다양한 기능 구현
  • 카프카 핵심 요소에 대한 수준 높은 내부 메커니즘의 이해와 실습
  • 실전 수준의 카프카 애플리케이션 구현 
  • Confluent Control Center를 이용한 카프카 운영 및 모니터링 UI 실습
  • 커스텀 객체의 직렬화/역직렬화

등의 내용으로 구성되어 있으며, 여러분은 카프카의 운영과 개발에 필요한 필수 요소부터 더 나아간 수준의 핵심 메커니즘까지 본 강의를 통해 모두 체득할 수 있을 것입니다.

핵심 개념과 실습을 한번에

강의는 이론 30%, 실습 70%로 구성되어 있으며 실습을 통해 이론을 보다 자연스럽게 익힐 수 있도록 여러 가지 실습 수업으로 커리큘럼을 가득 채웠습니다.

대부분의 실습 수업은 라이브 코딩으로 진행됩니다. 단계별로 차근차근 영상을 따라해 보시면 어느새 개발부터 운영까지 자신있게 카프카를 다룰 수 있는 수준에 도달한 스스로를 발견할 수 있을 것입니다.

💡 수강 전 참고해주세요!

  • 본 강의에서 카프카 커넥터와 카프카 스트림즈/KSQ는 별도로 다루지 않습니다. 해당 내용은 추후 시리즈 강의로 출시 예정입니다.

이 강의만의 특징을 
확인해보세요.

그림과 애니메이션을 통한 직관적인 핵심 메커니즘 이해

핵심 메커니즘 동작 과정을 시각적으로 이해할 수 있습니다.

카프카 Broker, Topic, Partition, Consumer, Replication, Zookeeper 등의 핵심 메커니즘에 대한 직관적인 이해를 돕기 위해 수많은 그림과 PPT 애니메이션으로 이론 강의를 구성하였습니다. 

카프카 내부 심화 메커니즘 & 다양한 환경 파라미터에 대한 자세한 설명 및 실습

In theory, theory and practice are the same. In practice, they are not.
원칙적으로 이론과 현실은 같지만, 실제로는 엄연히 다르다. (알버트 아인슈타인)

본 강의는 카프카 주요 구성 요소들에 대한 개념적 이해를 넘어서, 그동안 어느 강의에서도 볼 수 없었던 수준으로 카프카 내부 메커니즘의 필수 요소는 물론 보다 심화된 메커니즘을 Broker, Producer, Consumer의 핵심 환경 파라미터와 함께 상세히 설명드립니다.

또한 내부 메커니즘 이론 설명 후 실습을 진행하는 순서로 강의를 구성하였으며, 이를 통해 여러분은 이론으로 배운 내용을 보다 확실하게 마스터할 수 있을 것입니다.

기본부터 실전 수준까지, 다양한 자바 기반 실습 코드를 한 줄 한 줄 상세하게

대부분의 실습 강의는 라이브 코딩으로 진행합니다. 조금이라도 어려운 부분이 예상되는 코드들에 대해서는 한 줄 한 줄 상세히 설명드립니다. 카프카 기본 Producer, Consumer 클라이언트 코드를 넘어서 난이도 있는 실전 수준의 카프카 애플리케이션을 저와 함께 따라 구현해 보면서 여러분의 실력을 더욱 향상시킬 수 있을 것입니다.

실습만이 살길! 코드를 반복해서 학습해 보세요.
200페이지 이상의 강의 교재 PDF도 함께 제공해드립니다.

실습 환경 💾

서버 OS 

카프카 서버 OS로 오라클(Oracle) VirtualBox VM 기반에서 Ubuntu Linux(우분투 리눅스) 20.04를 이용합니다. 리눅스를 이용하지만 가상 머신 기반으로 구동되므로 Windows/macOS 환경 모두에서 구성할 수 있습니다.

VirtualBox는 Windows/macOS 환경에서 거의 대부분 설치 가능합니다. 다만 Mac의 경우 최신 M1 모델에서 VirtualBox가 설치되지 않으므로 UTM등의 가상환경을 이용하여 Ubuntu를 설치하셔야 합니다. M1 모델의 경우 반드시 가상환경에서 Ubuntu가 설치되는지 확인 후 강의를 선택해 주시기 바랍니다.  

컨플루언트 카프카 
커뮤니티 에디션  

카프카는 아파치 카프카(Apache Kafka)가 아닌 컨플루언트 카프카(Confluent Kafka) Community Edition 버전 7.1.2를 사용합니다.

컨플루언트는 카프카를 만든 핵심 인력이 주축이 되어 세운 회사로, 기업 고객을 위해 성능 및 편의성 측면에서 보다 향상된 기업용 카프카를 제공하고 있습니다. 아파치 카프카와 100% 호환되면서도 보다 다양한 카프카 모듈 및 일체화된 Binary를 이용할 수 있습니다. 컨플루언트로 강력한 분산형 시스템 카프카를 더욱 탄력적으로 확장 가능한 형태로 사용해 보세요. 인프라 구축 및 유지 관리 부담을 줄이고, 더 빠른 개발을 할 수 있도록 도움을 줄 것입니다.

클라이언트 개발

카프카 클라이언트 개발은 자바(Java) 기반으로 IntelliJ IDEA를 이용합니다. 카프카는 다양한 언어 기반의 클라이언트 라이브러리를 제공하지만, 그중에서도 자바 기반 클라이언트가 성능과 안정성은 물론 최신 기능 구현 측면에서 가장 먼저 지원되고 있습니다.

권장 PC 사양 

전체 실습 환경 구성으로 20~30GB의 스토리지 용량, 4GB 이상의 RAM을 갖춘 PC 환경이 요구될 수 있습니다.


Q&A를 확인해보세요 💬

Q. 왜 카프카를 배워야 하나요?

카프카는 실시간 대용량 Event Streams Platform의 대표 솔루션으로 자리매김하였습니다. 높은 메시지 처리 성능과 안정성, 다양한 기능 지원, 대규모 에코 시스템 및 커뮤니티 등으로 세계적으로 수천 개의 회사에서 카프카를 이용합니다. 데이터 파이프라인 구축부터 마이크로서비스까지 다양한 용도로 활용되고 있습니다.

때문에 현재 많은 기업에서 카프카를 다룰 줄 아는 인력에 대한 수요가 증가하고 있습니다. 앞으로도 이런 수요는 계속해서 증가할 것이니만큼 카프카를 익힌다면 여러분의 커리어에 매우 큰 장점이 될 것입니다.

Q. 카프카를 몰라도 강의를 수강할 수 있나요?

네, 본 강의는 카프카를 처음 배우시는 분들도 충분히 따라갈 수 있도록 기초부터 심화된 내용까지 단계별로 구성되어 있습니다. 라이브 코딩으로 구성된 많은 실습 수업들을 천천히 따라하신다면 어느새 초보자도 카프카를 능숙하게 다루는 수준에 다다를 수 있을 것입니다.

Q. 자바 개발 경험이 없는데 수강할 수 있을까요?

카프카는 모르셔도 되지만, 실습 수행을 위해 Thread를 이해하는 수준의 기본적인 자바 프로그래밍 실력이 필요합니다. 실습에서 사용되는 자바 코드는 깃허브에서 확인하실 수 있습니다.

자바 기본 프로그래밍 경험이 없으시면 실습에 어려움이 있을 수 있으니, 수강 전 미리 실습 자바 코드를 리뷰하시고 본인의 수준에 맞는 실습 코드인지를 반드시 확인해 주십시오.

Q. 리눅스 및 IntelliJ에 대한 사전 지식이 필요한가요?

리눅스 및 IntelliJ는 설치부터 환경 구성까지 자세하게 설명해 드리기에 모르셔도 되지만, 알고 계시면 실습에 좀 더 도움이 될 수는 있습니다.

Q. 카프카 커넥트나 카프카 스트림즈/KSQL도 강의에서 다루나요?

본 강의는 카프카 시리즈 강의의 첫 번째 강의로서 카프카의 필수 아키텍처를 다룹니다. 전체 시리즈는 총 3개 강의로 이뤄집니다. 두 번째 강의는 카프카 커넥트와 스키마 레지스트리, 세 번째 강의는 카프카 스트림즈/KSQL로 순차적으로 출시될 예정입니다. (아직 자세한 강의 출시 일정은 미정입니다.)

Kafka 시리즈!! 함께 들으면 좋은 강의 📖

이런 분들께
추천드려요!

학습 대상은
누구일까요?

  • 카프카를 처음 배우시려는 분

  • 카프카를 사용하고 있지만 보다 튼튼한 기반 지식을 얻고자 하시는 분

  • 카프카의 Advanced Internal 메커니즘과 주요 환경 파라미터에 대한 확실한 이해가 필요하신 분

  • Java를 이용하여 Producer와 Consumer 기능 구현을 하고자 하시는 분

  • 보다 실전에 가까운 카프카 애플리케이션 개발을 원하시는 분

  • 대용량 데이터 수집과 데이터 파이프 라인 구축을 위해 카프카 도입을 고려하는 데이터 엔지니어

  • 기업 환경에 메시징 시스템 도입을 고려중인 솔루션 아키텍트

  • 카프카의 분산 메시징 시스템 아키텍처에 관심 있는 모든 이

선수 지식,
필요할까요?

  • 카프카는 모르셔도 되지만, Thread를 이해하는 수준의 Java 기본 프로그래밍 지식이 필요합니다.

(전) 엔코아 컨설팅

(전) 한국 오라클

AI 프리랜서 컨설턴트

파이썬 머신러닝 완벽 가이드 저자

커리큘럼

전체

149개 ∙ (22시간 53분)

수업 자료

가 제공되는 강의입니다.

강의 게시일: 
마지막 업데이트일: 

수강평

아직 충분한 평가를 받지 못한 강의입니다.
모두에게 도움이 되는 수강평의 주인공이 되어주세요!