HOME > 상세정보

상세정보

실전 카프카 개발부터 운영까지 : 데이터 플랫폼의 중추 아파치 카프카의 내부 동작과 개발, 운영, 보안의 모든 것

자료유형
단행본
개인저자
고승범
서명 / 저자사항
실전 카프카 개발부터 운영까지 : 데이터 플랫폼의 중추 아파치 카프카의 내부 동작과 개발, 운영, 보안의 모든 것 / 고승범 지음
발행사항
서울 :   책만,   2021  
형태사항
511 p. : 삽화 ; 24 cm
ISBN
9791189909345
일반주기
부록: A. MSK와 컨플루언트 클라우드, B. 앤서블 맛보기, C. 도퍼를 이용한 카프카 설치 외  
색인수록  
000 00000cam c2200205 c 4500
001 000046103177
005 20220106152755
007 ta
008 220104s2021 ulka 001c kor
020 ▼a 9791189909345 ▼g 93000
035 ▼a (KERIS)BIB000015978138
040 ▼a 211021 ▼c 211021 ▼d 211009
082 0 4 ▼a 005.74 ▼2 23
085 ▼a 005.74 ▼2 DDCK
090 ▼a 005.74 ▼b 2021z5
100 1 ▼a 고승범
245 1 0 ▼a 실전 카프카 개발부터 운영까지 : ▼b 데이터 플랫폼의 중추 아파치 카프카의 내부 동작과 개발, 운영, 보안의 모든 것 / ▼d 고승범 지음
260 ▼a 서울 : ▼b 책만, ▼c 2021
300 ▼a 511 p. : ▼b 삽화 ; ▼c 24 cm
500 ▼a 부록: A. MSK와 컨플루언트 클라우드, B. 앤서블 맛보기, C. 도퍼를 이용한 카프카 설치 외
500 ▼a 색인수록
630 0 4 ▼a Apache Kafka
945 ▼a KLPA

소장정보

No. 소장처 청구기호 등록번호 도서상태 반납예정일 예약 서비스
No. 1 소장처 과학도서관/Sci-Info(1층서고)/ 청구기호 005.74 2021z5 등록번호 521006711 도서상태 대출가능 반납예정일 예약 서비스 B M
No. 2 소장처 과학도서관/Sci-Info(2층서고)/ 청구기호 005.74 2021z5 등록번호 121258755 도서상태 대출가능 반납예정일 예약 서비스 B M

컨텐츠정보

책소개

국내 최초이자 유일한 컨플루언트 공인 강사 자격(Confluent Certified Trainer)과 공인 관리자 자격(Confluent Certified Administrator)을 보유한 『카프카,데이터 플랫폼의 최강자』 저자 고승범이 SKT, 카카오등 국내 최대 규모의 데이터 플랫폼상에서 카프카를 운영하며 쌓아온 현업 경험과 노하우를 이 책에 모두 담아냈다.

풍부한 그림으로 쉽고 빠르게 이해하는 카프카의 내부 구조와 동작 방식부터 카프카 클라이언트의 기본이 되는 예제 코드와 실제 운영에서 필요한 핵심 노하우는 물론이고, 365일 안전한 카프카를 운영할 수 있는 보안과 모니터링기법,운영 편의성과 효율성을 극대화할 수 있는 스키마 레지스트리와 카프카 커넥트까지 카프카에 대한 모든 것을 담았다.

아파치 카프카의 공동 창시자 준 라오(Jun Rao)가 추천한 책!
국내 최초이자 유일한 컨플루언트 공인 아파치 카프카 강사(Confluent Certified
Trainer for Apache Kafka)와 공인 관리자 자격(Confluent Certified
Administrator for Apache Kafka)을 보유한 『카프카, 데이터 플랫폼의 최강자』
저자 고승범이 SKT, 카카오 등 국내 최대 규모의 데이터 플랫폼상에서 카프카를
운영하며 쌓아온 현업 경험과 노하우를 이 책에 모두 담아냈다.

대량의 데이터를 손실없이 빠르고 정확하게 처리하고 싶다면? 정답은 카프카!
풍부한 그림으로 쉽고 빠르게 이해하는 카프카의 내부 구조와 동작 방식부터카프카 클라이언트의 기본이 되는 예제 코드와 실제 운영에서 필요한 핵심 노하우는 물론이고, 365일 안전한 카프카를 운영할 수 있는 보안과 모니터링기법,운영 편의성과 효율성을 극대화할 수 있는 스키마 레지스트리와 카프카 커넥트까지 카프카에 대한 모든 것을 담은 가장 완벽하고 상세한 최고의 가이드북이다.

|이 책에서 다루는 내용|
- 풍부한 그림으로 알기 쉽게 설명한 카프카 내부 구조와 동작 원리
- 자바와 파이썬을 이용한 카프카 클라이언트 예제 코드
- AWS와 온프레미스 환경에서의 카프카 구축과 운영
-고통을 최소화하는 카프카 업그레이드와 유지보수 방안
- 아파치 카프카 기반 보안 구축 방법
- 스키마 레지스트리와 카프카 커넥트의 다양한 활용
- 카프카를 제대로 사용하기 위한 프로듀서/컨슈머의 내부 동작과 리밸런싱 동작 방식
- 엔터프라이즈 환경에서의 카프카 아키텍처 구성 사례
-현업 전문가의 경험과 팁을 정리한 Q&A

|이 책의 대상 독자|
-카프카를 배우고자 하는 초보자
-카프카를 현업에 적용하고 싶은 운영자
- 카프카를 최대한 활용하기 위해 내부 동작 방식을 알고 싶은 개발자
- 카프카와 카프카 에코시스템을 이해하고 활용하고자 하는 개발자
- 데이터 표준화와 실시간 처리에 대해 고민하는 아키텍트
- 효율적으로 데이터를 수집, 처리, 분석하기를 원하는 아키텍트

|이 책의 구성|
1장 '카프카 개요'에서는 잘란도와 트위터의 카프카 도입 사례를 통해 우수 기업에서의 고민들과 카프카의 특장점을 알아보고, 국내외 카프카 현황 등을 알아봅니다. 나날이 발전하고 있는 카프카의 성장 과정을 살펴보고 사용 사례도 알아봅니다.
2장 '카프카 환경 구성'은 이 책의 전반적인 실습 환경을 구성하기 위한 내용으로, AWS 환경과 온프레미스 환경에서 구성하는 방법을 처음 AWS를 접하는 분들도 쉽게 따라 할 수 있도록 자세하게 설명했습니다. AWS 환경에서 카프카 설치가 완료되면 간단한 맛보기예제로 카프카에 대해 알아봅니다.
3장 '카프카 기본 개념과 구조'에서는 카프카의 기본 지식을 쌓기 위해 카프카 기본 구조, 프로듀서와 컨슈머의 동작과 예제 코드를 살펴봅니다.
4장 '카프카의 내부 동작 원리와 구현'에서는 카프카의 주요 핵심 기능을 살펴보며, 리플리케이션과 관련된 내부 상세 동작, 컨트롤러의 역할, 로그 등을 집중적으로 다뤄봅니다.
5장 '프로듀서의 내부 동작 원리와 구현'에서는 프로듀서의 핵심 기능을 살펴보며, 파티셔너, 중복 없는 메시지 전송, 정확히 한 번 전송 등 프로듀서에서 안정적인 메시지 전송을 하기 위해 반드시 알아야 할 내용을 다룹니다.
6장 '컨슈머의 내부 동작 원리와 구현'에서는 컨슈머의 핵심 기능을 살펴봅니다. 컨슈머의 오프셋관리, 그룹 코디네이터의 동작과 파티션 전략 등 컨슈머를 안정적으로 개발하고 운영하기 위한 핵심 내용을 살펴봅니다.
7장 '카프카 운영과 모니터링'에서는 카프카를 안정적으로 운영하기 위한 방법과 노하우 등을 살펴봅니다. 모니터링 시스템을 직접 구축하는 실습을 통해 안정적으로 모니터링하는 방법을 알아봅니다.
8장 '카프카 버전 업그레이드와 확장'에서는 카프카 운영 시 필수적인 버전 업그레이드와 스케일아웃 방법을 직접 실습하면서 이해해봅니다.
9장 '카프카 보안'에서는 카프카에서 제공하는 보안 관련 내용을 다룹니다. 보안을 적용하는 실습 과정도 진행해봅니다.
10장 '스키마 레지스트리'에서는 스키마 레지스트리의 개요와 활용 방법을 알아봅니다. 스키마 레지스트리를 처음 접하는 분들을 위해 에이브로(Avro) 기반의 실습 과정과 예제 코드를 함께 다룹니다.
11장 '카프카 커넥트'에서는 카프카 커넥트의 기본 개념과 동작 등을 살펴봅니다. 최근 공개된 미러 메이커 2.0에 대한 간략한 소개와 함께 미러링 방법을 배워봅니다.
12장 '엔터프라이즈 카프카 아키텍처 구성 사례'에서는 지금까지 책에서 다룬 내용을 기반으로 엔터프라이즈 환경과 유사하게 미러 메이커는 물론이고 엘라스틱서치 및 모니터링 등을 통합 구성해 실습해봅니다.
13장 '카프카의 발전과 미래'에서는 최근 가장 큰 이슈인 주키퍼의 의존성을 없애려는 배경과 현재 진행 상황 그리고 앞으로의 방향에 대해 살펴봅니다.
4개 부록에서는 각각 MSK, 컨플루언트 클라우드(Confluent Cloud)에서 카프카를 구성하는 방법과 장단점을 비교했으며, 앤서블(Ansible)의 특징과 실습 환경 구성, 도커(Docker)를 이용한 카프카 설치 등 별도로 기초 과정을 추가해 처음 접하는 분들도 쉽게 이해할 수 있도록 설명했습니다. 또한사용자들이 평소 궁금해하는 질문들을 간단히 살펴볼 수 있도록 요약 정리했습니다.

|이 책을 활용하기 위한 개발 환경|
-아파치 카프카 2.6
-아파치 주키퍼 3.5.9
-컨플루언트 카프카 6.1
-자바 1.8
-파이썬 3.7.9
-앤서블(Ansible) 2.9.12
-운영체제: 온프레미스(CentOS7), AWS(Amazon Linux 2)

이 책을 마무리하는 시점인 2021년 9월 말 기준으로 아파치 카프카 3.0이 릴리스되었습니다. 하지만 아파치 카프카 3.0에서 새로이 도입된, 주키퍼 의존성이 제거된 크래프트(KRaft) 알고리즘 등은 아직 운영 환경에서 사용하는 것이 권장되지 않습니다. 따라서 이 책에서 모든실습 예제와 설명은 엔터프라이즈 환경에서 안정적으로 사용할 수 있는 아파치 카프카 2.6을 기준으로 전개합니다.

[베타리더 한마디]
MSA, EDA 기반 설계에서 카프카는 핵심 시스템으로 자리 잡았다. 수많은 컨트리뷰터의 노력으로 성숙도가 많이 올라갔고, 다양한 기업에서 활용되며 대용량 메시지 처리에서도 안정성을 입증하고 있다. 저자는 이러한 국내의 카프카 활성화와 다양한 유스 케이스에 많은 기여를 했다. 카프카 한국 사용자 그룹을 운영하고 『카프카, 데이터 플랫폼의 최강자』를 집필해 많은 카프카 입문자에게 기초 이론과 운영 노하우를 알렸다.
이번에 나온 『실전 카프카 개발부터 운영까지』는 새로운 버전의 카프카 전문 서적으로 최신 카프카의 정보를 싣고, 모든 챕터에서 실무에 적용 가능한 예제를 풍부하게 담았다. 또한 알기 쉽게 풀이하여 독자들이 카프카 관련 내용을 온전히 습득할 수 있도록 기술했다. 최근 더욱 높아진 사용자의 눈높이에 맞춰 모니터링, 보안 그리고 스키마 레지스트리, 커넥트 등과 같은 컴포넌트 활용 방법이 구성되어 있으며, 특히 버전 업그레이드, 엔터프라이즈 구성, Q&A 챕터는 저자의 운영 실무 노하우가 담겨 있어 독자의 의문점을 완벽히 해소해줄 것이다.
-이승하 / 무신사빌링개발팀

카프카에 대해 공부해보고 싶은 학생, 카프카를 이용해 애플리케이션을 만들려는 개발자, 또는 카프카 클러스터를 운영하는 엔지니어 등 이 책을 손에 쥔 독자층은 매우 다양할 것입니다. 이 책은 여기에 나열된 누구에게나 유익한 책입니다. 학생분들은 카프카가 해결하려는 문제의 본질을 배울 수 있으며, 개발자분들은 프로듀서/컨슈머를 개발하면서 그간 알고 싶었던 궁금증을 해결할 실마리를 찾을 수 있을 테고, 관리자분들은 카프카를 안정적으로 운영하기 위해 필요한 지식을 얻어갈 것이라 확신합니다.
이 책이 더욱 특별했던 점은 저자의 풍부한 카프카 운영 경험에 기반한 정보가 많다는 점입니다. 저자는 실무에서 맞닥뜨릴 법한 상황들을 가정해서 그에 맞는 정보를 과하지도 부족하지도 않게 풀어내는 식으로 내용을 전개합니다. 평소에 그와 같은 문제에 대해 고민해봤던 분들에게는 단비 같은 내용일 것입니다. 제가 그랬듯, 독자 여러분들도 이런 꿀팁을 많이 얻어가시길 바랍니다.
-남지열 / DPG미디어머신러닝 엔지니어

실제로 카프카를 구성하는 것은 -이론상- 그리 어려운 일이 아니다. 공식 문서를 따라 주키퍼와 브로커를 구성하고, 인터넷에 떠다니는 예제를 참고해서 컨슈머/프로듀서 애플리케이션을 띄우고 나면 나름의 메시지 파이프라인을 완성할 수 있기 때문이다. 하지만 우리의 카프카를 사용하는 개발자는 여러 요구사항을 쏟아낸다. 가령 "이 메시지는 절대 유실되면 안 돼요!"부터, "메시지를 S3에 넣고 싶은데, 저희가 직접 클라이언트를 개발/운영해야 하나요?"나 "자꾸 이상한 메시지가 유입되어서 클라이언트가 죽어요!"까지! 게다가 잘 동작하던 카프카 클러스터도 때때로 말썽을 피운다. 이처럼 카프카는 이론과 실전의 차이가 하늘과 땅만큼, 어쩌면 그 이상일 수도 있다.
이 책에는 단단한 이론 사이에 자리한 저자의 실전 운영 경험이 분명하게 녹아 있다. 그렇기에 이 책을 통해 카프카를 시작하는 사람은 카프카 생태계의 지식과 운영에 대한 실마리를 얻을 수 있고, 이미 운영하고 있는 사람에겐 더욱 안정적이고 고도화된 카프카 운영을 위한 발판을 마련해줄 것이다.
-김대호 / 우아한형제들 클라우드플랫폼개발팀

카프카의 설치부터 운영까지의 모든 과정을 담고 있어서 카프카를 처음 접하는 사람이어도 하나씩 실습을 따라해보면 손쉬운 구축과 운영이 가능합입니다. 특히 클라우드 환경에서 실습을 제공하여 패러다임 변화에 맞게 빠르게 실무에 적용해볼 수 있다는 점이 좋았습니다. 카프카를 다루는 데 필요한 기본 개념부터, 실무에서 사용하는 다양한 운영 환경 구축까지 많은 실습을 통해 저자 자신이 쌓아온 풍부한 운영 경험과 핵심 기술적 노하우를 독자들과 나누고자 하는 목표가 눈에 띕니다. 카프카를 처음 시작하는 분이거나 전문가가 되고 싶어 하는 분들에게 많은 도움이 될 것입니다.
- 이상진 / 카카오하둡엔지니어링파트


정보제공 : Aladin

목차

1장 카프카 개요
1.1 잘란도와 트위터의 카프카 도입 사례
__1.1.1 유럽 최대 온라인 패션몰 잘란도의 도전 사례
__1.1.2 SNS 절대 강자 트위터의 카프카 활용 사례
1.2 국내외 카프카 이용 현황
1.3 카프카의 주요 특징
1.4 카프카의 성장
1.5 다양한 카프카의 사용 사례
1.6 정리

2장 카프카 환경 구성
2.1 이 책의 실습 환경 구성
__2.1.1 AWS 환경에서 실습 환경 구성
__2.1.2 온프레미스 환경에서 실습 환경 구성
2.2 카프카 클러스터 구성
2.3 5분 만에 카프카 맛보기
__2.3.1 카프카의 기본 구성
__2.3.2 메시지 보내고 받기
2.4 정리

3장 카프카 기본 개념과 구조
3.1 카프카 기초 다지기
__3.1.1 리플리케이션
__3.1.2 파티션
__3.1.3 세그먼트
3.2 카프카의 핵심 개념
__3.2.1 분산 시스템
__3.2.2 페이지 캐시
__3.2.3 배치 전송 처리
__3.2.4 압축 전송
__3.2.5 토픽, 파티션, 오프셋
__3.2.6 고가용성 보장
__3.2.7 주키퍼의 의존성
3.3 프로듀서의 기본 동작과 예제 맛보기
__3.3.1 프로듀서 디자인
__3.3.2 프로듀서의 주요 옵션
__3.3.3 프로듀서 예제
3.4 컨슈머의 기본 동작과 예제 맛보기
__3.4.1 컨슈머의 기본 동작
__3.4.2 컨슈머의 주요 옵션
__3.4.3 컨슈머 예제
__3.4.4 컨슈머 그룹의 이해
3.5 정리

4장 카프카의 내부 동작 원리와 구현
4.1 카프카 리플리케이션
__4.1.1 리플리케이션 동작 개요
__4.1.2 리더와 팔로워
__4.1.3 복제 유지와 커밋
__4.1.4 리더와 팔로워의 단계별 리플리케이션 동작
__4.1.5 리더에포크와 복구
4.2 컨트롤러
4.3 로그(로그 세그먼트)
__4.3.1 로그 세그먼트 삭제
__4.3.2 로그 세그먼트 컴팩션
4.4 정리

5장 프로듀서의 내부 동작 원리와 구현
5.1 파티셔너
__5.1.1 라운드 로빈 전략
__5.1.2 스티키 파티셔닝 전략
5.2 프로듀서의 배치
5.3 중복 없는 전송
5.4 정확히 한 번 전송
__5.4.1 디자인
__5.4.2 프로듀서 예제 코드
__5.4.3 단계별 동작
__5.4.4 예제 실습
5.5 정리

6장 컨슈머의 내부 동작 원리와 구현
6.1 컨슈머 오프셋 관리
6.2 그룹 코디네이터
6.3 스태틱 멤버십
6.4 컨슈머 파티션 할당 전략
__6.4.1 레인지 파티션 할당 전략
__6.4.2 라운드 로빈 파티션 할당 전략
__6.4.3 스티키 파티션 할당 전략
__6.4.4 협력적 스티키 파티션 할당 전략
6.5 정확히 한 번 컨슈머 동작
6.6 정리

7장 카프카 운영과 모니터링
7.1 안정적인 운영을 위한 주키퍼와 카프카 구성
__7.1.1 주키퍼 구성
__7.1.2 카프카 구성
7.2 모니터링 시스템 구성
__7.2.1 애플리케이션으로서 카프카의 로그 관리와 분석
__7.2.2 JMX를 이용한 카프카 메트릭 모니터링
__7.2.3 카프카 익스포터
7.3 정리

8장 카프카 버전 업그레이드와 확장
8.1 카프카 버전 업그레이드를 위한 준비
8.2 주키퍼 의존성이 있는 카프카 롤링 업그레이드
__8.2.1 최신 버전의 카프카 다운로드와 설정
__8.2.2 브로커 버전 업그레이드
__8.2.3 브로커 설정 변경
__8.2.4 업그레이드 작업 시 주의사항
8.3 카프카의 확장
__8.3.1 브로커 부하 분산
__8.3.2 분산 배치 작업 시 주의사항
8.4 정리

9장 카프카 보안
9.1 카프카 보안의 세 가지 요소
__9.1.1 암호화(SSL)
__9.1.2 인증(SASL)
__9.1.3 권한(ACL)
9.2 SSL을 이용한 카프카 암호화
__9.2.1 브로커 키스토어 생성
__9.2.2 CA 인증서 생성
__9.2.3 트러스트스토어 생성
__9.2.4 인증서 서명
__9.2.5 나머지 브로커에 대한 SSL 구성
__9.2.6 브로커 설정에 SSL 추가
__9.2.7 SSL 기반 메시지 전송
9.3 커버로스(SASL)를 이용한 카프카 인증
__9.3.1 커버로스 구성
__9.3.2 키탭을 이용한 인증
__9.3.3 브로커 커버로스 설정
__9.3.4 클라이언트 커버로스 설정
9.4 ACL을 이용한 카프카 권한 설정
__9.4.1 브로커 권한 설정
__9.4.2 유저별 권한 설정
9.5 정리

10장 스키마 레지스트리
10.1 스키마의 개념과 유용성
10.2 카프카와 스키마 레지스트리
__10.2.1 스키마 레지스트리 개요
__10.2.2 스키마 레지스트리의 에이브로 지원
__10.2.3 스키마 레지스트리 설치
10.3 스키마 레지스트리 실습
__10.3.1 스키마 레지스트리와 클라이언트 동작
__10.3.2 파이썬을 이용한 스키마 레지스트리 활용
10.4 스키마 레지스트리 호환성
__10.4.1 BACKWARD 호환성
__10.4.2 FORWARD 호환성
__10.4.3 FULL 호환성
__10.4.4 스키마 레지스트리 호환성 실습
10.5 정리

11장 카프카 커넥트
11.1 카프카 커넥트의 핵심 개념
11.2 카프카 커넥트의 내부 동작
11.3 단독 모드 카프카 커넥트
__11.3.1 파일 소스 커넥터 실행
__11.3.2 파일 싱크 커넥터 실행
11.4 분산 모드 카프카 커넥트
11.5 커넥터 기반의 미러 메이커 2.0
11.6 정리

12장 엔터프라이즈 카프카 아키텍처 구성 사례
12.1 엔터프라이즈용 카프카 아키텍처의 개요
12.2 엔터프라이즈용 카프카의 환경 구성
12.3 엔터프라이즈용 카프카의 운영 실습
__12.3.1 CMAK를 이용한 토픽 생성
__12.3.2 카프카 커넥트 설정
__12.3.3 모니터링 환경 구성
__12.3.4 메시지 전송과 확인
12.4 정리

13장 카프카의 발전과 미래
13.1 주키퍼 없는 카프카의 미래
__13.1.1 주키퍼 사용에 따른 제약사항
__13.1.2 주키퍼 의존성을 제거한 카프카 업그레이드
13.2 새로운 합의 프로토콜
13.3 최적화된 컨트롤러 노드 구성
13.4 카프카의 미래가 담긴 KIP
13.5 정리

부록 A MSK와 컨플루언트 클라우드
__A.1 MSK
__A.2 컨플루언트 클라우드
__A.3 MSK와 컨플루언트 클라우드 비교

부록 B 앤서블 맛보기
__B.1 앤서블의 특징
__B.2 실습 환경 구성
__B.3 앤서블 기능 살펴보기

부록 C 도커를 이용한 카프카 설치
__C.1 도커 기반의 카프카 구성
__C.2 메시지 보내고 받기

부록 D 한눈에 보는 Q&A
__D.1 주키퍼 관련
__D.2 카프카 관련
__D.3 프로듀서 관련
__D.4 컨슈머 관련

관련분야 신착자료