본문내용 바로가기
무료배송 소득공제

쿠버네티스로 만나는 손안의 마이크로서비스 마이크로서비스 구축, 배포, 관리까지

소프트웨어 아키텍처
기기 사이판 지음 | 황주필 옮김 | 에이콘출판 | 2020년 02월 28일 출간
  • 정가 : 40,000원
    판매가 : 36,000 [10%↓ 4,000원 할인]
  • 통합포인트 :
    [기본적립] 2,000원 적립 [5% 적립] [추가적립] 5만원 이상 구매 시 2천원 추가적립 안내 [회원혜택] 실버등급 이상, 3만원 이상 구매 시 2~4% 추가적립 안내
  • 추가혜택 : 포인트 안내 도서소득공제 안내 추가혜택 더보기
  • 배송비 : 무료 배송비 안내
  • 배송일정 : 서울특별시 종로구 세종대로 기준 지역변경
    지금 주문하면 내일( 3일,금) 도착 예정 배송일정 안내
  • 바로드림 : 인터넷으로 주문하고 매장에서 직접 수령 안내 바로드림 혜택
    휴일에는 바로드림 픽업으로 더 빨리 받아 보세요. 바로드림 혜택받고 이용하기
상품상세정보
ISBN 9791161753881(1161753885)
쪽수 628쪽
크기 189 * 235 * 36 mm /1169g 판형알림
이 책의 원서/번역서 Hands-On Microservices with Kubernetes: Build, deploy, and manage scalable microservices on Kubernet/Gigi Sayfan

책소개

이 책이 속한 분야

이 책의 주제어

쿠버네티스는 애플리케이션의 배포, 스케일링, 운영을 자동화해서 컨테이너 중심 인프라를 제공하는 가장 인기 있는 오픈 소스 플랫폼이다. 실제 환경에서 쿠버네티스를 이용해 마이크로서비스를 개발해 보면서 시너지 효과에 대한 심층적인 통찰력을 제공한다. 애플리케이션의 맥락에서 마이크로서비스와 쿠버네티스 개념을 이해하는 데 도움이 된다. 다음으로 CI/CD 파이프 라인을 설정하고 쿠버네티스 컨피그맵으로 마이크로서비스를 구성해 개발 속도를 높일 수 있다. 또한, 마이크로서비스 보안, REST, gRPC API, 데이터 저장소 구현에 대한 실무 경험을 얻을 수 있다. 쿠버네티스에서 마이크로서비스를 배포하고 모니터링하면서 서비스 메시의 중요성과 클러스터에 통합하는 방법을 알아본다.

저자소개

저자 : 기기 사이판

Gigi Sayfan
생물 정보학과 유전체학 스타트업인 헬릭스(Helix)의 수석 소프트웨어 아키텍트다. 『쿠버네티스 마스터 2/e』(에이콘, 2018)의 저자이기도 하다. 인스턴트 메시징, 모핑, 칩 제조 공정 제어, 게임 콘솔용 임베디드 멀티미디어 애플리케이션과 뇌에서 영감을 얻은 머신러닝과 같은 다양한 분야에서 20년 이상 전문 소프트웨어를 개발해왔다. Windows, Linux, MacOS, Lynx, Sony PlayStation과 같은 운영체제를 위해 Go, Python, C#, Java, Delphi, JavaScript, Cobol, PowerBuilder를 포함한 많은 프로그래밍 언어로 코드를 작성했다. 데이터베이스, 저수준 네트워킹, 정통 사용자 인터페이스, 일반 SDLC 전문 지식을 갖추고 있다.

역자 : 황주필

IT 기업에서 개발자로 시작해 BEA Systems, Oracle 등에서 소프트웨어 아키텍트, 엔지니어로 일했다. 수많은 기업에서 기업용 소프트웨어에 대한 지원과 비즈니스 적용을 도왔다. 컨테이너에 관심이 많아 쿠버네티스 생태계에 참여하고 있으며 클라우드 네이티브 애플리케이션(Cloud Native Application)의 개발과 운영을 돕고 있다. 현재 피보탈(Pivotal)에서 플랫폼 아키텍트로 일하며 수많은 고객이 클라우드와 플랫폼 그리고 마이크로서비스 아키텍트로 디지털 트랜스포메이션을 성공적으로 할 수 있도록 돕고 있다

작가의 말

[ 지은이의 말 ]

이 책은 바로 여러분이 기다리던 책이다. 마이크로서비스를 개발하고 쿠버네티스에 배포하는 두 가지 과정을 안내한다. 마이크로서비스 기반 아키텍트와 쿠버네티스의 시너지 효과는 매우 강력하다. 이 책은 모든 각도를 망라하고 있다. 마이크로서비스와 쿠버네티스의 기본 개념을 설명하고, 실제 문제와 장단점을 알아본 후, 척척 만들어지는 마이크로서비스 기반 시스템의 개발 과정을 안내하고 모범 사례와 권장 사항을 제공한다.
엄청난 양의 근거를 아주 깊이 있게 설명하기 위한 작업 코드를 다룬다. 마이크로서비스 기반 아키텍트를 설계하고, 마이크로서비스를 만들고, 만들어진 마이크로서비스를 테스트하고, 도커 이미지로 패키징하는 방법을 알게 될 것이다. 그런 다음 도커 이미지 패키지로 시스템을 쿠버네티스에 배포하며 관리하는 방법을 배우게 될 것이다.
그 과정에서 자동화된 CI/CD, gRPC 기반 마이크로서비스, 서버리스(serverless) 컴퓨팅, 서비스 메시와 같은 중요한 트렌드에 익숙해질 것이다.
끝에서는 쿠버네티스에 배포된 마이크로서비스 기반 아키텍트를 사용해 대규모 클라우드 네이티브 시스템을 계획, 개발, 운영할 수 있는 많은 지식과 실무 경험을 얻게 될 것이다

[ 옮긴이의 말 ]

쿠버네티스는 굉장히 방대한 플랫폼이다. 쿠버네티스 하나만 자세히 알기에도 벅차다. 하지만 쿠버네티스에 애플리케이션을 배포, 운영하려고 한다면 고민해야 할 부분이 무척 많을 것이다. 국내에 수많은 쿠버네티스 관련 서적이 나와 있기는 하지만 쿠버네티스 자체 기능과 쿠버네티스에 애플리케이션을 배포하고 관리하는 방법에만 초점을 맞추고 있다. 이 책은 저자의 다양한 경험을 통해 마이크로서비스 아키텍트(MSA) 기반 애플리케이션을 쿠버네티스에 적용하기 위한 다양한 사례를 솔직하게 이야기하고 있어서 좋았다.
한 가지 단점 아닌 단점이라고 한다면, 아직까지 국내에서는 Java를 이용해 애플리케이션을 개발하는 경우가 많다. 그러나 이 책에서는 Go를 애플리케이션 개발 언어로 사용해, Go 언어에 익숙하지 않은 개발자나 운영자에게는 고민이 될 수도 있다.
그렇지만 Go뿐만 아니라 파이썬(Python), 러스트(Rust) 등의 다양한 언어도 사용한다. 어렵게 생각하지 말고 그 부분은 과감하게 건너뛰어도 상관이 없으므로 큰 부담을 갖지 않았으면 좋겠다. 마이크로서비스 애플리케이션을 만드는 방법을 알고자 하는 독자에게는 이 책의 앞 부분이 도움이 될 것이고, 마이크로서비스 아키텍트 입장에서 쿠버네티스와 다양한 툴 (CI/CD, Serverless, 모니터링, 서비스 메시 등)을 활용하는 방법을 자세히 알고 싶다면 중반 이후가 유용할 것이다.

목차

1장. 개발자를 위한 쿠버네티스 소개
__기술 요구 사항
____도커 설치
____Kubectl 설치
____Minikube 설치
____코드
__간결한 쿠버네티스
____쿠버네티스-컨테이너 오케스트레이션 플랫폼
____쿠버네티스의 역사
____쿠버네티스의 현재
__쿠버네티스 구조의 이해
____컨트롤 플레인
____데이터 플레인
__쿠버네티스와 마이크로서비스-완벽한 조합
____마이크로서비스 패키징과 배포
____마이크로서비스 노출과 디스커버리
____마이크로서비스 보안
____마이크로서비스 인증과 인가
____마이크로서비스 업그레이드
__로컬 클러스터 생성
____클러스터 확인
____클러스터 사용하기
____Helm 설치
__요약
__추가 자료

2장. 마이크로서비스 시작
__기술 요구 사항
____macOS에 Homebrew로 Go 설치
____다른 플랫폼에 Go 설치
____코드
__마이크로 프로그래밍- 적을수록 더 좋다
__마이크로서비스 자율화
__인터페이스 및 계약 사용
__API로 서비스 노출
__클라이언트 라이브러리 사용
__종속성 관리
__마이크로서비스 코디네이팅
____균일성과 유연성 절충
__소유권의 이점 활용
__콘웨이의 법칙 이해
____수직
____수평
____메트릭스
__여러 서비스의 문제 해결
__공유 서비스 라이브러리 활용
__소스 제어 전략 선택
____단일 저장소
____여러 저장소
____하이브리드
__데이터 전략 생성
____마이크로서비스당 하나의 데이터 저장소
____분산 쿼리 실행
____사가를 사용해 여러 서비스 간의 트랜잭션 관리
__요약
__추가 자료

3장. Delinkcious-샘플 애플리케이션
__기술 요구 사항
____비주얼 스튜디오 코드
____GoLand
____LiteIDE
____기타 옵션
____코드
__Delinkcious를 위한 Go 선택
__Go kit의 이해
____Go kit으로 마이크로서비스 구조화
____전송
____엔드포인트
____서비스
____미들웨어
____클라이언트
____상용구 생성
__Delinkcious 디렉터리 구조 소개
____cmd 하위 디렉터리
____pkg 하위 디렉터리
____svc 하위 디렉터리
__Delinkcious 마이크로서비스 소개
____객체 모델
____서비스 구현
____지원 함수 구현
____클라이언트 라이브러리로 API 호출
__데이터 저장
__요약
__추가 자료

4장. CI/CD 파이프라인 시작
__기술 요구 사항
____코드
__CI/CD 파이프라인 이해
__Delinkcious CI/CD 파이프라인 선택
____젠킨스 X
____스피너커
____트래비스 CI와 CircleCI
____텍톤
____Argo CD
____자체 솔루션
__GitOps
__CircleCI로 이미지 생성
____소스 트리 검토
____CI 파이프라인 구성
____build.sh 스크립트 이해
____CircleCI UI
____향후 개선 고려
__Delinkcious에 대한 지속적인 배포 설정
____분리형 마이크로서비스 배포
____Argo CD 이해
____Argo CD 시작하기
____Argo CD 구성
____Argo CD 탐색
__요약
__추가 자료

5장. 쿠버네티스로 마이크로서비스 구성
__기술 요구 사항
____코드
__구성이란 무엇인가?
____구성과 시크릿
__옛날 방식 구성 관리
____구성 협약
____명령줄 플래그
____환경변수
____구성 파일
____하이브리드 구성 및 기본값
____12가지 애플리케이션 구성법
__동적으로 구성 관리
____동적 구성 이해
____원격 구성 저장소
____원격 구성 서비스
__쿠버네티스로 마이크로서비스 구성
____쿠버네티스 컨피그 맵 작업
____쿠버네티스 사용자 정의 리소스
____서비스 디스커버리
__요약
__추가 자료

6장. 쿠버네티스의 마이크로서비스 보안
__기술 요구 사항
____코드
__건전한 보안 원칙 적용
__사용자 어카운트와 서비스 어카운트의 차별화
____사용자 어카운트
____서비스 어카운트
__쿠버네티스로 시크릿 관리
____쿠버네티스 시크릿의 세 가지 유형 이해
____시크릿 만들기
____컨테이너로 시크릿 전달
____안전한 포드 만들기
__역할 기반 액세스 제어 모델을 통한 권한 관리
__인증, 인가, 어드미션으로 액세스 제어
____마이크로서비스 인증
____마이크로서비스 인가
____마이크로서비스 어드미션
__보안 모범 사례를 사용해 쿠버네티스 클러스터 강화
____이미지 보안
____네트워크 분할 정복
____이미지 레지스트리 보호
____필요에 따라 쿠버네티스 리소스의 액세스 권한 부여
____쿼터를 사용해 피해 반경 최소화
____보안 컨텍스트 구현
____보안 정책으로 포드 강화
__툴 체인 강화
____JWT 토큰으로 관리자 인증
____RBAC로 인가
____HTTPS로 안전한 통신
____시크릿 및 자격증명 관리
____감사
____클러스터 RBAC
__요약
__추가 자료

7장. 외부와 통신-API와 로드밸런서
__기술 요구 사항
____코드
__쿠버네티스 서비스 익숙해지기
____쿠버네티스의 서비스 유형
__East-west와 north-south 통신 비교
__인그레스와 로드밸런싱 이해
__공개 REST API 제공과 소비
____파이썬 기반 API 게이트웨이 서비스 구축
____인그레스 추가
____API 게이트웨이가 클러스터 외부에서 사용 가능한지 확인
__내부 gRPC API 제공 및 소비
____NewsManager 인터페이스 정의
____뉴스 관리자 패키지 구현
____gRPC 서비스로 NewsManager 노출
__메시지 대기열로 이벤트 전송 및 수신
____NATS란?
____클러스터에 NATS 배포
____NATS로 링크 이벤트 보내기
____NATS의 링크 이벤트 구독
____링크 이벤트 처리
__서비스 메시 이해
__요약
__추가 자료

8장. 스테이트풀 서비스 사용하기
__기술 요구 사항
____코드
__스토리지 추상화
____쿠버네티스 스토리지 모델
____내부 및 외부 스토리지 플러그인
____CSI 이해
__쿠버네티스 클러스터 외부에 데이터 저장
__스테이트풀 셋을 사용해 클러스터 내부에 데이터 저장
____스테이트풀 셋 이해
____언제 스테이트풀 셋을 사용해야 하나?
____대용량 스테이트풀 셋 예제
__로컬 스토리지로 고성능 달성
____메모리에 데이터 저장
____로컬 SSD에 데이터 저장
__쿠버네티스에서 관계형 데이터베이스 사용
____데이터가 저장되는 위치
____디플로이먼트 및 서비스 사용
____스테이트풀 셋 사용
____사용자 서비스가 스테이트풀 셋 포드를 찾는 데 도움
____스키마 변경 관리
__쿠버네티스에서 비관계형 데이터 저장소 사용
____레디스 소개
__요약
__추가 자료

9장. 쿠버네티스에서 서버리스 작업 실행
__기술 요구 사항
____코드
__클라우드에서 서버리스
____마이크로서비스와 서버리스 함수
____쿠버네티스에서 서버리스 함수 모델링
____서버리스 함수 빌드, 구성, 배포
____서버리스 함수 호출
__Delinkcious의 링크 검증
__링크 점검 설계
____링크 검증 구현
__Nuclio를 통한 서버리스 링크 검증
____Nuclio 간단 소개
____링크 검증 서버리스 함수 만들기
____nuctl을 사용해 링크 검증 함수 배포
____Nuclio 대시보드를 사용해 함수 배포
____링크 검증 함수 직접 호출
____LinkManager에서 링크 검증 시작
__다른 쿠버네티스 서버리스 프레임워크
____쿠버네티스 잡과 크론잡
____KNative
____Fission
____Kubeless
____OpenFaas
__요약
__추가 자료

10장. 마이크로서비스 테스트
__기술 요구 사항
__단위 테스트
____Go에서 단위 테스트
____Ginkgo와 Gomega로 단위 테스트
____Delinkcious 단위 테스트
____멋진 모의 구현
____모든 것을 테스트해야 하나?
__통합 테스트
____테스트 데이터베이스 초기화
____서비스 실행
____실제 테스트 실행
____데이터베이스 테스트 헬퍼 구현
____서비스 테스트 헬퍼 구현
__쿠버네티스로 로컬 테스트
____스모크 테스트 작성
____텔레프레즌스
____라이브 디버깅을 위해 GoLand로 로컬 링크 서비스에 연결
__테스트 격리
____테스트 클러스터
____네임스페이스 테스트
____크로스 네임스페이스/클러스터
__종단 간 테스트
____승인 테스트
____회귀 테스트
____성능 시험
__테스트 데이터 관리
____합성 데이터
____수동 테스트 데이터
____프로덕션 스냅샷
__요약
__추가 자료

11장. 마이크로서비스 배포
__기술 요구 사항
____코드
__쿠버네티스 디플로이먼트
__여러 환경에 배포
__배포 전략 이해
____재생성 배포
____롤링 업데이트
____블루-그린 배포
____카나리아 배포
__배포 롤백
____표준 쿠버네티스 디플로이먼트 롤백
____블루-그린 배포 롤백
____카나리아 배포 롤백
____스키마, API, 페이로드 변경 후 롤백 처리
__버전과 종속성 관리
____공개 API 관리
____서비스 간 종속성 관리
____타사 종속성 관리
____인프라와 툴체인 관리
__로컬 개발 배포
____Ko
____Ksync
____드래프트
____스카폴드
____틸트
__요약
__추가 자료

12장. 모니터링, 로깅 그리고 메트릭
__기술 요구 사항
____코드
__쿠버네티스로 자가 치유
____컨테이너 고장
____노드 장애
____시스템 고장
__쿠버네티스 클러스터 오토 스케일링
____수평 포드 오토 스케일링
____수평 포드 오토 스케일러 사용
____클러스터 오토 스케일링
____수직 포드 오토 스케일링
__쿠버네티스에 리소스 프로비저닝
____어떤 리소스를 프로비저닝할까?
____컨테이너 제한 정의
____리소스 쿼터 지정
____수동 프로비저닝
____오토 스케일링 사용
____자신만의 오토 프로비저닝 사용
__올바른 성능 얻기
____성능과 사용자 경험
____성능과 고가용성
____성능과 비용
____성능과 보안
__로깅
____무엇을 로깅해야 할까?
____로깅 대 오류 보고
____완벽한 Go 로깅 인터페이스를 위한 노력
____Go-kit으로 로깅
__쿠버네티스에서 메트릭 수집
____쿠버네티스 메트릭스 API 소개
____쿠버네티스 메트릭 서버 이해
____프로메테우스 사용
__경보
____구성 요소 장애 수용
____시스템 장애 수용
____인적 요인 고려
____프로메테우스 경보 관리자 활용
__분산 추적
____예거 설치
____서비스에 추적 추가
__요약
__추가 자료

13장. 서비스 메시-이스티오
__기술 요구 사항
____코드
__서비스 메시란 무엇인가?
____모놀리스와 마이크로서비스 비교
____공유 라이브러리를 사용해 마이크로서비스의 교차 문제 관리
____서비스 메시를 사용해 마이크로서비스의 교차 문제 관리
____쿠버네티스와 서비스 메시의 관계 이해
__이스티오는 무엇을 제공하는가?
____이스티오 아키텍처 알아보기
____이스티오로 트래픽 관리
____이스티오로 클러스터 보안
____이스티오 정책 적용
____이스티오로 메트릭 수집
____이스티오를 사용해서는 안 될 때는 언제일까?
__이스티오를 적용한 Delinkcious
____서비스 간 상호 인증 제거
____더 나은 카나리아 배포 활용
____자동 로깅과 오류 보고
____NATS 수용
____이스티오 풋프린트 검사
__이스티오 대안
____링커드 2.0
____엔보이
____하시코프 콘슬
____AWS 앱 메시
____기타
____메시 사용하지 않음
__요약
__추가 자료

14장. 마이크로서비스와 쿠버네티스의 미래
__마이크로서비스의 미래
____마이크로서비스와 서버리스 함수
____마이크로서비스, 컨테이너 및 오케스트레이션
____gRPC와 gRPC-Web
____GraphQL
____HTTP/3의 등장
__쿠버네티스의 미래
____쿠버네티스 확장성
____서비스 메시 통합
____쿠버네티스의 서버리스 컴퓨팅
____쿠버네티스와 가상머신
____클러스터 자동 확장
____오퍼레이터 사용
____페더레이션
__요약
__추가 자료

출판사 서평

[ 이 책에서 다루는 내용 ]

■ 쿠버네티스와 마이크로서비스의 시너지 이해
■ 쿠버네티스에서 마이크로서비스를 위한 완전한 CI/CD 파이프라인 생성
■ 모범 사례로 Go-Kit 프레임워크를 사용해 쿠버네티스에서 마이크로서비스 개발
■ 쿠버네티스와 오픈 소스 도구를 사용한 시스템 관리와 모니터링
■ REST와 gRPC API로 서비스 노출
■ 서버리스 함수를 서비스로 구현, 배포
■ 외부 인증/인가 사용과 서비스 메시를 사용한 트래픽 셰이핑
■ 구글 쿠버네티스 엔진(GKE) 클라우드에서 쿠버네티스 클러스터 실행
... 더보기

북로그 리뷰 (0) 쓰러가기

도서 구매 후 리뷰를 작성하시면 통합포인트를 드립니다.
결제 90일 이내 작성 시 300원 / 발송 후 5일 이내 작성시 400원 / 이 상품의 첫 리뷰 작성 시 500원
(포인트는 작성 후 다음 날 적립되며, 도서 발송 전 작성 시에는 발송 후 익일에 적립됩니다.
외서/eBook/음반/DVD/GIFT 및 잡지 상품 제외)
안내
  • 해당도서의 리뷰가 없습니다.

Klover 평점/리뷰 (0)

문장수집 (0) 문장수집 쓰기 나의 독서기록 보기
※구매도서의 문장수집을 기록하면 통합포인트 적립 안내

교환/반품/품절안내

※ 상품 설명에 반품/교환 관련한 안내가 있는 경우 그 내용을 우선으로 합니다. (업체 사정에 따라 달라질 수 있습니다.)

교환/반품/품절안내
반품/교환방법 마이룸 > 주문관리 > 주문/배송내역 > 주문조회 > 반품/교환신청 ,
[1:1상담>반품/교환/환불] 또는 고객센터 (1544-1900)

※ 오픈마켓, 해외배송주문, 기프트 주문시 [1:1상담>반품/교환/환불]
    또는 고객센터 (1544-1900)
반품/교환가능 기간 변심반품의 경우 수령 후 7일 이내,
상품의 결함 및 계약내용과 다를 경우 문제점 발견 후 30일 이내
반품/교환비용 변심 혹은 구매착오로 인한 반품/교환은 반송료 고객 부담
반품/교환 불가 사유
  • 소비자의 책임 있는 사유로 상품 등이 손실 또는 훼손된 경우
    (단지 확인을 위한 포장 훼손은 제외)
  • 소비자의 사용, 포장 개봉에 의해 상품 등의 가치가 현저히 감소한 경우
    예) 화장품, 식품, 가전제품(악세서리 포함) 등
  • 복제가 가능한 상품 등의 포장을 훼손한 경우
    예) 음반/DVD/비디오, 소프트웨어, 만화책, 잡지, 영상 화보집
  • 소비자의 요청에 따라 개별적으로 주문 제작되는 상품의 경우 ((1)해외주문도서)
  • 디지털 컨텐츠인 eBook, 오디오북 등을 1회 이상 다운로드를 받았을 경우
  • 시간의 경과에 의해 재판매가 곤란한 정도로 가치가 현저히 감소한 경우
  • 전자상거래 등에서의 소비자보호에 관한 법률이 정하는 소비자 청약철회 제한 내용에
    해당되는 경우
(1) 해외주문도서 : 이용자의 요청에 의한 개인주문상품으로 단순변심 및 착오로 인한 취소/교환/반품 시 ‘해외주문 반품/취소 수수료’ 고객 부담 (해외주문 반품/취소 수수료 : ①양서-판매정가의 12%, ②일서-판매정가의 7%를 적용)
상품 품절 공급사(출판사) 재고 사정에 의해 품절/지연될 수 있으며, 품절 시 관련 사항에 대해서는
이메일과 문자로 안내드리겠습니다.
소비자 피해보상
환불지연에 따른 배상
  • 상품의 불량에 의한 교환, A/S, 환불, 품질보증 및 피해보상 등에 관한 사항은
    소비자분쟁해결 기준 (공정거래위원회 고시)에 준하여 처리됨
  • 대금 환불 및 환불지연에 따른 배상금 지급 조건, 절차 등은 전자상거래 등에서의
    소비자 보호에 관한 법률에 따라 처리함

이 분야의 베스트

  • 천인국
    24,000원
  • 윤인성
    16,200원
  • 조블리(조애리)
    20,700원
  • 천인국
    30,000원
  • 박응용
    16,920원
더보기+

이 분야의 신간

  • 김정준
    29,700원
  • 김호다
    23,000원
  • 리처드 서튼
    31,500원
  • 수지(허수정)
    21,600원
  • Abraham Silbers...
    39,000원
더보기+

바로가기

  • 우측 확장형 배너 2
  • 우측 확장형 배너 2

최근 본 상품