길벗·이지톡

도서 IT전문서/IT입문서 임베디드/시스템/네트워크

쿠버네티스 실무자가 되기 위한 필독서!

일본 아마존 쿠버네티스 분야 베스트셀러 1!

쿠버네티스 버전 1.18, 쿠버네티스의 기본부터 실무까지 총망라!

 

쿠버네티스 환경, 버전, kubectl 버전, 그 외 시스템 버전 업데이트! 쿠버네티스 1.18 전후로 거의 모든 기능 총망라! 원서의 1판에 비해 그림 설명 강화! 예제 매니페스트 파일 300개 이상 제공! 쿠버네티스는 물론 에코시스템까지 한 권으로!

이 책은 쿠버네티스 개념은 물론, 쿠버네티스로 무엇을 할 수 있고 어떻게 해야 하는지, 또 실제로 도입하고 배포하는 것까지 광범위한 내용을 체계적으로 설명한다. 상세한 그림, 핵심 위주의 직관적인 설명으로 쿠버네티스의 기본기를 익히고, 절별로 제공되는 풍부한 예제를 통해 실제로 실습해볼 수 있다. 예제 소스, 명령어, 실행 결과는 최신 내용을 반영했고, 실무에서 활용할 수 있도록 주의 사항, , Q&A 관련 내용을 본문에 충실히 제시하고자 했다.

 

클라우드 네이티브 환경의 필수 지식

쿠버네티스는 컨테이너 오케스트레이션 엔진 분야의 표준이라고 볼 수 있으며, 앞으로 클라우드 네이티브 환경에서의 개발이 더욱 보편화되면서 반드시 사용해야 하는 플랫폼이 될 것이다. 이 책은 쿠버네티스의 개념을 이해하고 기본기를 익혀서 실제 애플리케이션을 컨테이너화하여 실행하는 데까지 실력을 쌓는 것을 목표로 한다.

 

입문부터 실전까지, 초보자부터 실무자까지

이 책의 목표를 달성하기 위해 쿠버네티스의 거의 모든 기능과 여러 에코시스템에 대해 상세히 설명한다. 쿠버네티스를 수행하는 방법, 발생할 수 있는 문제, 해결 방법과 대안을 제시하고, 사용 사례를 중심으로 실전 운용에 도움이 되는 자잘한 지식도 풍부하게 수록했다. 간결하고 명확하게 설명하고, 좀 더 쉽게 이해할 수 있게 그림도 충분히 사용했으며, 예제는 쿠버네티스 정의 파일(매니페스트)을 내려받아 쉽게 따라할 수 있다. 쿠버네티스를 시작하고 실행하는 데 필요한 거의 모든 내용을 쉽고, 깊게 이해하여 실무에 활용하도록 체계적으로 정리한 책으로, 초보자부터 실무자까지 모두 권한다.

목차

1장 도커 복습과 Hello, Kubernetes

__1.1 도커 복습

____1.1.1 도커 컨테이너란?

____1.1.2 도커 컨테이너 설계

____1.1.3 도커 파일 작성법

____1.1.4 도커 이미지 빌드

____1.1.5 이미지 레이어 통합과 이미지 축소화

____1.1.6 도커 레지스트리로 이미지 업로드

____1.1.7 컨테이너 기동

__1.2 쿠버네티스의 세계로

 

2장 왜 쿠버네티스가 필요할까?

__2.1 쿠버네티스란?

__2.2 쿠버네티스의 역사

__2.3 쿠버네티스를 사용하면 무엇을 할 수 있을까?

____2.3.1 선언적 코드를 사용한 관리(IaC)

____2.3.2 스케일링/오토 스케일링

____2.3.3 스케줄링

____2.3.4 리소스 관리

____2.3.5 자동화된 복구

____2.3.6 로드 밸런싱과 서비스 디스커버리

____2.3.7 데이터 관리

__2.4 정리

 

3장 쿠버네티스 환경 선택

__3.1 쿠버네티스 환경의 종류

__3.2 로컬 쿠버네티스

____3.2.1 미니큐브

____3.2.2 Docker Desktop for Mac/Windows

____3.2.3 kind

____3.2.4 로컬 쿠버네티스 정리

__3.3 쿠버네티스 구축 도구

____3.3.1 쿠버네티스 서비스 수준 목표(SLO)

____3.3.2 큐브어드민

____3.3.3 플라넬

____3.3.4 랜처

____3.3.5 그 외 구축 도구

____3.3.6 그 외 엔터프라이즈 솔루션

__3.4 퍼블릭 클라우드 관리형 쿠버네티스 서비스

____3.4.1 GKE

____3.4.2 AKS

____3.4.3 EKS

__3.5 쿠버네티스 플레이그라운드

__3.6 정리

 

4API 리소스와 kubectl

__4.1 이 책을 읽기 위한 준비

____4.1.1 kubectl 설치와 자동 완성 기능 설정

____4.1.2 쿠버네티스(GKE) 클러스터 생성

__4.2 쿠버네티스 기초

__4.3 쿠버네티스와 리소스

____4.3.1 워크로드 API 카테고리

____4.3.2 서비스 API 카테고리

____4.3.3 컨피그 & 스토리지 API 카테고리

____4.3.4 클러스터 API 카테고리

____4.3.5 메타데이터 API 카테고리

__4.4 네임스페이스로 가상적인 클러스터 분리

__4.5 커맨드 라인 인터페이스(CLI) 도구 kubectl

____4.5.1 인증 정보와 컨텍스트(config)

____4.5.2 kubectx/kubens를 사용한 전환

____4.5.3 매니페스트와 리소스 생성/삭제/갱신

____4.5.4 리소스 생성에도 kubectl apply를 사용해야 하는 이유

____4.5.5 [1.18 Beta2] Server-side apply

____4.5.6 파드 재기동

____4.5.7 generateName으로 임의의 이름을 가진 리소스 생성

____4.5.8 리소스 상태 체크와 대기(wait)

____4.5.9 매니페스트 파일 설계

____4.5.10 어노테이션과 레이블

____4.5.11 [1.18 Alpha] Prune을 사용한 리소스 삭제: -prune 옵션

____4.5.12 편집기로 편집: edit

____4.5.13 리소스 일부 정보 업데이트: set

____4.5.14 로컬 매니페스트와 쿠버네티스 등록 정보 비교 출력: diff

____4.5.15 사용 가능한 리소스 종류의 목록 가져오기: api-resources

____4.5.16 리소스 정보 가져오기: get

____4.5.17 리소스 상세 정보 가져오기: describe

____4.5.18 실제 리소스 사용량 확인: top

____4.5.19 컨테이너에서 명령어 실행: exec

____4.5.20 [1.18 Alpha] 파드에 디버깅용 임시 컨테이너 추가: debug

____4.5.21 로컬 머신에서 파드로 포트 포워딩: port-forward

____4.5.22 컨테이너 로그 확인: logs

____4.5.23 스턴을 사용한 로그 확인

____4.5.24 컨테이너와 로컬 머신 간의 파일 복사: cp

____4.5.25 kubectl 플러그인과 패키지 관리자: plugin/krew

____4.5.26 kubectl에서 디버깅

____4.5.27 kubectl의 기타 팁

__4.6 정리

 

5장 워크로드 API 카테고리

__5.1 워크로드 API 카테고리 개요

__5.2 파드

____5.2.1 파드 디자인 패턴

____5.2.2 파드 생성

____5.2.3 두 개의 컨테이너를 포함한 파드 생성

____5.2.4 컨테이너 로그인과 명령어 실행

____5.2.5 ENTRYPOINT 명령/CMD 명령과 command/args

____5.2.6 파드명 제한

____5.2.7 호스트의 네트워크 구성을 사용한 파드 기동

____5.2.8 파드 DNS 설정과 서비스 디스커버리

____5.2.9 정적 호스트명 해석 설정: /etc/hosts

____5.2.10 작업 디렉터리 설정

__5.3 레플리카셋/레플리케이션 컨트롤러

____5.3.1 레플리카셋 생성

____5.3.2 파드 정지와 자동화된 복구

____5.3.3 레플리카셋과 레이블

____5.3.4 레플리카셋과 스케일링

____5.3.5 일치성 기준 조건과 집합성 기준 조건

__5.4 디플로이먼트

____5.4.1 디플로이먼트 생성

____5.4.2 디플로이먼트 업데이트(레플리카셋이 생성되는) 조건

____5.4.3 변경 롤백

____5.4.4 디플로이먼트 변경 일시 중지

____5.4.5 디플로이먼트 업데이트 전략

____5.4.6 상세 업데이트 파라미터

____5.4.7 디플로이먼트 스케일링

____5.4.8 매니페스트를 사용하지 않고 디플로이먼트 생성

__5.5 데몬셋

____5.5.1 데몬셋 생성

____5.5.2 데몬셋 업데이트 전략

__5.6 스테이트풀셋

____5.6.1 스테이트풀셋 생성

____5.6.2 스테이트풀셋 스케일링

____5.6.3 스테이트풀셋의 라이프사이클

____5.6.4 스테이트풀셋 업데이트 전략

____5.6.5 영구 볼륨 데이터 저장 확인

____5.6.6 스테이트풀셋 삭제와 영구 볼륨 삭제

__5.7

____5.7.1 레플리카셋과의 차이점과 잡의 용도

____5.7.2 잡 생성

____5.7.3 restartPolicy에 따른 동작 차이

____5.7.4 태스크와 작업 큐 병렬 실행

____5.7.5 [1.18 Alpha] 일정 기간 후 잡 삭제

____5.7.6 매니페스트를 사용하지 않고 잡을 생성

__5.8 크론잡

____5.8.1 크론잡 생성

____5.8.2 크론잡 일시 정지

____5.8.3 크론잡을 임의의 시점에 실행

____5.8.4 동시 실행 제어

____5.8.5 실행 시작 기한 제어

____5.8.6 크론잡 이력

____5.8.7 매니페스트를 사용하지 않고 크론잡 생성

__5.9 정리

 

6장 서비스 API 카테고리

__6.1 서비스 API 카테고리 개요

__6.2 쿠버네티스 클러스터 네트워크와 서비스

____6.2.1 파드에 트래픽 로드 밸런싱

____6.2.2 클러스터 내부 DNS와 서비스 디스커버리

____6.2.3 클러스터 내부 DNS와 클러스터 외부 DNS

____6.2.4 [1.18 Stable] 노드 로컬 DNS 캐시

__6.3 ClusterIP 서비스

____6.3.1 ClusterIP 서비스 생성

____6.3.2 ClusterIP 가상 IP 정적 지정

__6.4 ExternalIP 서비스

____6.4.1 ExternalIP 서비스 생성

__6.5 NodePort 서비스

____6.5.1 NodePort 서비스 생성

____6.5.2 NodePort 주의점

__6.6 LoadBalancer 서비스

____6.6.1 LoadBalancer 서비스 생성

____6.6.2 로드 밸런서에 할당되는 가상 IP 정적 지정

____6.6.3 로드 밸런서 방화벽 정책 설정

____6.6.4 GKE와 클라우드 서비스에서 주의할 점

__6.7 그 외 서비스 기능

____6.7.1 세션 어피니티

____6.7.2 노드 간 통신 제외와 발신 측 IP 주소 유지

____6.7.3 [1.18 Alpha] 토폴로지를 고려한 서비스 전송

__6.8 헤드리스 서비스(None)

____6.8.1 헤드리스 서비스 생성

____6.8.2 헤드리스 서비스로 파드명 이름 해석

____6.8.3 스테이트풀셋 외의 파드명으로 이름 해석

__6.9 ExternalName 서비스

____6.9.1 ExternalName 서비스 생성

____6.9.2 외부 서비스와 느슨한 결합 확보

____6.9.3 외부 서비스와 내부 서비스 간의 전환

__6.10 None-Selector 서비스

____6.10.1 None-Selector 서비스 생성

__6.11 인그레스

____6.11.1 리소스와 컨트롤러

____6.11.2 인그레스 리소스와 인그레스 컨트롤러

____6.11.3 인그레스 종류

____6.11.4 인그레스 컨트롤러 배포

____6.11.5 인그레스 리소스 생성을 위한 사전 준비

____6.11.6 인그레스 리소스 생성

____6.11.7 X-Forwarded-For 헤더에 의한 클라이언트 IP 주소 참조

____6.11.8 인그레스 클래스에 의한 인그레스 분리

____6.11.9 [1.18 Beta] 인그레스의 GA 승격을 위한 변경

__6.12 정리

 

7장 컨피그 & 스토리지 API 카테고리

__7.1 컨피그 & 스토리지 API 카테고리 개요

__7.2 환경 변수 사용

____7.2.1 정적 설정

____7.2.2 파드 정보

____7.2.3 컨테이너 정보

____7.2.4 시크릿 리소스 기밀 정보

____7.2.5 컨피그맵 리소스 설정값

____7.2.6 환경 변수 이용 시 주의 사항

__7.3 시크릿

____7.3.1 시크릿 분류

____7.3.2 일반적인 범용 용도의 시크릿(Opaque)

____7.3.3 TLS 타입 시크릿

____7.3.4 도커 레지스트리 타입의 시크릿

____7.3.5 기본 인증 타입의 시크릿

____7.3.6 SSH 인증 타입의 시크릿

____7.3.7 시크릿 사용

__7.4 컨피그맵

____7.4.1 컨피그맵 생성

____7.4.2 컨피그맵 사용

____7.4.3 시크릿과 컨피그맵의 공통 주제

__7.5 영구 볼륨 클레임

____7.5.1 볼륨, 영구 볼륨, 영구 볼륨 클레임의 차이

__7.6 볼륨

____7.6.1 emptyDir

____7.6.2 hostPath

____7.6.3 downwardAPI

____7.6.4 projected

__7.7 영구 볼륨(PV)

____7.7.1 영구 볼륨 종류

____7.7.2 영구 볼륨 생성

__7.8 영구 볼륨 클레임

____7.8.1 영구 볼륨 클레임 설정

____7.8.2 영구 볼륨 클레임 생성

____7.8.3 파드에서 사용

____7.8.4 동적 프로비저닝

____7.8.5 영구 볼륨을 블록 장치로 사용

____7.8.6 영구 볼륨 클레임 조정을 사용한 볼륨 확장

____7.8.7 [1.18 Alpha] 영구 볼륨 클레임 조정을 사용한 볼륨 온라인 확장

____7.8.8 [1.17 Beta] [1.16 Alpha] 영구 볼륨 스냅샷과 클론

____7.8.9 스테이트풀셋에서 영구 볼륨 클레임(volumeClaimTemplate)

__7.9 volumeMounts에서 사용 가능한 옵션

____7.9.1 읽기 전용(ReadOnly) 마운트

____7.9.2 subPath

__7.10 정리

 

8장 클러스터 API 카테고리와 메타데이터 API 카테고리

__8.1 클러스터 API 카테고리와 메타데이터 API 카테고리의 개요

__8.2 노드

__8.3 네임스페이스

____8.3.1 네임스페이스 생성

____8.3.2 네임스페이스를 지정한 리소스 획득

__8.4 정리

 

9장 리소스 관리와 오토 스케일링

__9.1 리소스 제한

____9.1.1 CPU/메모리 리소스 제한

____9.1.2 [1.18 Beta] Ephemeral 스토리지 리소스 제어

____9.1.3 시스템에 할당된 리소스와 Eviction 매니저

____9.1.4 GPU 등의 리소스 제한

____9.1.5 오버커밋과 리소스 부족

____9.1.6 여러 컨테이너 사용 시 리소스 할당

__9.2 Cluster Autoscaler와 리소스 부족

__9.3 LimitRange를 사용한 리소스 제한

____9.3.1 기본으로 생성되는 LimitRange

____9.3.2 컨테이너에 대한 LimitRange

____9.3.3 파드에 대한 LimitRange

____9.3.4 영구 볼륨 클레임에 대한 LimitRange

__9.4 QoS Class

____9.4.1 BestEffort

____9.4.2 Guaranteed

____9.4.3 Burstable

__9.5 리소스 쿼터를 사용한 네임스페이스 리소스 쿼터 제한

____9.5.1 생성 가능한 리소스 수 제한

____9.5.2 리소스 사용량 제한

__9.6 HorizontalPodAutoscaler

____9.6.1 [1.18 Beta] HorizontalPodAutoscaler 스케일링 동작 설정

__9.7 VerticalPodAutoscaler

__9.8 정리

 

10장 헬스 체크와 컨테이너 라이프사이클

__10.1 헬스 체크

____10.1.1 세 가지 헬스 체크 방법(Liveness/Readiness/Startup Probe)

____10.1.2 세 가지 헬스 체크 방식

____10.1.3 헬스 체크 간격

____10.1.4 헬스 체크 생성

____10.1.5 Liveness Probe 실패

____10.1.6 Readiness Probe 실패

____10.1.7 [1.18 Beta] [1.16 Alpha] Startup Probe를 사용한 지연 체크와 실패

__10.2 컨테이너 라이프사이클과 재기동(restartPolicy)

____10.2.1 Always

____10.2.2 OnFailure

____10.2.3 Never

__10.3 초기화 컨테이너

__10.4 기동 직후와 종료 직전에 임의의 명령어를 실행(postStart/preStop)

__10.5 파드의 안전한 정지와 타이밍

__10.6 리소스를 삭제했을 때의 동작

__10.7 정리

 

11장 메인터넌스와 노드 정지

__11.1 노드 정지와 파드 정지

__11.2 스케줄링 대상에서 제외와 복귀(cordon/uncordon)

__11.3 노드 배출 처리로 인한 파드 축출(drain)

__11.4 PodDisruptionBudget(PDB)을 사용한 안전한 축출

__11.5 정리

 

12장 유연한 고급 스케줄링

__12.1 필터링과 스코어링

__12.2 매니페스트에서 지정하는 스케줄링

__12.3 빌트인 노드 레이블과 레이블 추가

__12.4 nodeSelector(가장 단순한 노드 어피니티)

__12.5 노드 어피니티

__12.6 matchExpressions 오퍼레이터와 집합성 기준 조건

____12.6.1 In/NotIn 오퍼레이터

____12.6.2 Exits/DoesNotExit 오퍼레이터

____12.6.3 Gt/Lt 오퍼레이터

__12.7 노드 안티어피니티

__12.8 인터파드 어피니티

____12.8.1 특정 파드와 반드시 동일한 노드에서 기동

____12.8.2 특정 파드와 반드시 같은 존에 기동하고 가능하다면 같은 노드에 기동

__12.9 인터파드 안티어피니티

__12.10 여러 조건을 조합한 파드 스케줄링

__12.11 [1.18 Beta] TopologySpreadConstraints를 사용한 토폴로지 균형

__12.12 테인트와 톨러레이션

____12.12.1 테인트 부여

____12.12.2 톨러레이션을 지정한 파드 기동

____12.12.3 NoExecute 일정 시간 허용

____12.12.4 여러 개의 테인트와 톨러레이션

____12.12.5 [1.18 GA] [1.13 Beta] 장애 시 부여되는 테인트와 축출

____12.12.6 쿠버네티스가 부여하는 그 외 테인트

__12.13 PriorityClass를 이용한 파드 우선순위와 축출

____12.13.1 PriorityClass 생성

____12.13.2 [1.15 Alpha] 우선순위 축출 비활성화

____12.13.3 PriorityClassPodDisruptionBudget의 경합

__12.14 기타 스케줄링

__12.15 정리

 

13장 보안

__13.1 서비스 어카운트

____13.1.1 서비스 어카운트 생성

____13.1.2 서비스 어카운트와 토큰

____13.1.3 토큰 자동 마운트

____13.1.4 클라이언트 라이브러리와 인증

____13.1.5 도커 레지스트리 인증 정보 자동 설정

__13.2 RBAC

____13.2.1 롤과 클러스터롤

____13.2.2 롤바인딩과 클러스터롤바인딩

____13.2.3 RBAC 테스트

__13.3 보안 컨텍스트

____13.3.1 특수 권한 컨테이너 생성

____13.3.2 Capabilities 부여

____13.3.3 root 파일 시스템의 읽기 전용 설정

__13.4 파드 보안 컨텍스트

____13.4.1 실행 사용자 변경

____13.4.2 root 사용자로 실행 제한

____13.4.3 파일 시스템 그룹 지정

____13.4.4 sysctl을 사용한 커널 파라미터 설정

__13.5 [1.18 Beta] 파드 보안 정책

____13.5.1 파드 보안 정책 활성화

____13.5.2 파드 보안 정책으로 파드 생성 권한 부여

____13.5.3 파드 보안 정책과 레플리카셋 실행

____13.5.4 파드 보안 정책 비활성화

__13.6 네트워크 정책

____13.6.1 네트워크 정책 활성화

____13.6.2 네트워크 정책 생성

____13.6.3 네트워크 정책 사례

__13.7 인증/인가와 어드미션 컨트롤

__13.8 [1.18 Alpha] 파드 프리셋

____13.8.1 파드 프리셋 생성

____13.8.2 파드 프리셋 충돌

____13.8.3 파드 프리셋 제외

__13.9 시크릿 리소스 암호화

____13.9.1 kubesec

____13.9.2 SealedSecret

____13.9.3 ExternalSecret

__13.10 정리

 

14장 매니페스트 범용화 오픈 소스 소프트웨어

__14.1 매니페스트 범용화

__14.2 헬름

____14.2.1 헬름 설치

____14.2.2 제공되는 차트

____14.2.3 헬름 저장소 추가

____14.2.4 차트 검색

____14.2.5 아티팩트 허브

____14.2.6 차트 설치

____14.2.7 설치한 차트 테스트

____14.2.8 템플릿으로 매니페스트 생성

____14.2.9 헬름 아키텍처

____14.2.10 릴리스 확인

____14.2.11 릴리스 삭제

____14.2.12 커스텀 차트 생성

____14.2.13 차트 패키지화와 헬름 저장소 공개

__14.3 Kustomize

____14.3.1 여러 매니페스트 결합

____14.3.2 네임스페이스 덮어 쓰기

____14.3.3 PrefixSuffix 부여

____14.3.4 공통 메타데이터(레이블/어노테이션) 부여

____14.3.5 images로 이미지 덮어 쓰기

____14.3.6 오버레이로 값 덮어 쓰기

____14.3.7 컨피그맵과 시크릿 동적 생성

____14.3.8 Kustomize 관련 kubectl 하위 명령

__14.4 Ksonnet

__14.5 그 외 매니페스트 관련 도구

__14.6 정리

 

15장 모니터링

__15.1 쿠버네티스에서의 모니터링

__15.2 데이터독

____15.2.1 데이터독 아키텍처

____15.2.2 데이터독 설치

____15.2.3 데이터독 대시보드

____15.2.4 데이터독 메트릭

____15.2.5 실무 모니터링 사례

____15.2.6 데이터독을 사용한 컨테이너 모니터링과 알림 설정

__15.3 프로메테우스

____15.3.1 프로메테우스 아키텍처

____15.3.2 프로메테우스 설치

____15.3.3 대규모 프로메테우스 운용을 지원하는 에코시스템

__15.4 정리

 

16장 컨테이너 로그 집계

__16.1 컨테이너에서 애플리케이션 로그 출력

__16.2 플루언트디를 사용한 로그 집계

____16.2.1 로그 저장소 선택

____16.2.2 GKE의 경우: 클라우드 로깅

____16.2.3 플루언트디와 플루언트 비트

__16.3 데이터독 로그를 사용한 로그 집계

__16.4 그라파나 로키를 사용한 로그 집계

__16.5 정리

 

17장 쿠버네티스 환경에서의 CI/CD

__17.1 쿠버네티스 환경에서의 CI/CD

__17.2 깃옵스

__17.3 깃옵스에 적합한 CI 도구

__17.4 CI 시 쿠버네티스 매니페스트 체크 실시

____17.4.1 큐비발

____17.4.2 Conftest

____17.4.3 Open Policy Agent/Gatekeeper

__17.5 깃옵스에 적합한 CD 도구

____17.5.1 ArgoCD

____17.5.2 시크릿 리소스의 매니페스트 암호화

__17.6 개발 환경을 정비하는 도구

____17.6.1 텔레프레전스

____17.6.2 스캐폴드

__17.7 스피네이커

____17.7.1 스피네이커 설치

____17.7.2 스피네이커 시작

__17.8 젠킨스 X

____17.8.1 젠키스 X 설치

____17.8.2 젠키스 X 시작

__17.9 정리

 

18장 마이크로서비스 아키텍처와 서비스 매시

__18.1 마이크로서비스 아키텍처란?

__18.2 서비스 매시란?

__18.3 이스티오

____18.3.1 이스티오 아키텍처

____18.3.2 이스티오 샘플 애플리케이션

____18.3.3 이스티오 시작

____18.3.4 각종 서비스로 시각화

__18.4 정리

 

19장 쿠버네티스 아키텍처의 이해

__19.1 쿠버네티스 아키텍처 개요

__19.2 etcd

__19.3 kube-apiserver

__19.4 kube-scheduler

__19.5 kube-controller-manager

__19.6 kubelet

__19.7 kube-proxy

__19.8 CNI 플러그인

__19.9 kube-dns(CoreDNS)

__19.10 cloud-controller-manager

__19.11 기타 구성 요소와 클러스터 체크

__19.12 커스텀 리소스 데피니션과 오퍼레이터

__19.13 정리

 

20장 쿠버네티스와 미래

__20.1 쿠버네티스와 관련된 표준화

____20.1.1 OCIOCI v1.0

____20.1.2 CRI

____20.1.3 CSI

____20.1.4 CNI

__20.2 쿠버네티스와 에코시스템

____20.2.1 쿠버네티스 클러스터를 배포하는 XaaS

____20.2.2 쿠버네티스 클러스터를 배포하는 서버리스

____20.2.3 Kubernetes-native Testbed를 사용한 에코시스템 동작 확인

____20.2.4 구성 커넥터를 이용한 GCP 리소스 생성 및 관리

__20.3 정리

 

21장 부록

__21.1 kubectl에서 사용되는 리소스 약어

__21.2 자주 묻는 질문과 답변

 

 

 

찾아보기

더보기접기

저자

ㆍ지은이 마사야 아오야마

지은이 소개
주식회사 사이버에이전트 AI사업본부 2016년 입사. 오픈스택을 사용한 프라이빗 클라우드나 GKE와 호환성을 가진 컨테이너 플랫폼을 처음부터 끝까지 구축했다. 사이버에이전트(CyberAgent)에서는 Kubernetes/CloudNative 분야의 Developer Experts로 일하고 있다. 일본 콘퍼런스의 키노트와 해외 콘퍼런스 등에서 발표한 경험이 많으며 세계에서 두 번째로 Certified Kubernetes Application Developer 자격증을 취득했다. 저서로는 『쿠버네티스 완벽 가이드』, 『모두를 위한 도커/쿠버네티스』가 있다. 현재는 OSS에 기여하고 있을 뿐 아니라 Cloud Native Days Tokyo의 공동 의장, CNCF 공식 Cloud Native Meetup Tokyo의 운영자, Japan Container Days 운영자 등을 맡으며 커뮤니티에서도 활동하고 있다. - 예제 소스 다운로드: https://github.com/MasayaAoyama/kubernetes-perfect-guide

ㆍ옮긴이 박상욱

옮긴이 소개
AWS Premier Consulting Partner사인 (주)메가존클라우드에서 Cloud Solutions Architect를 총괄하고 있으며 클라우드 인프라 컨설팅과 디자인 및 구축, 운용에 대한 일을 하고 있다. 또한, AWS 사용자 그룹 리더이며 Global AWS Community Hero, AWS Ambassador로 활동하고 있다. 옮긴 책으로는 『아마존 웹 서비스 클라우드 디자인 패턴 설계 가이드』, 『아마존 웹 서비스 클라우드 디자인 패턴 구축 가이드』, 『인프라스트럭처 자동화 프레임워크 Chef-Solo 입문』, 『네트워크 더 쉽게, 더 깊게』, 『탄력적 개발로 이끄는 AWS 실천 기술』, 『고진감래 C 언어』, 『구글 클라우드 플랫폼 입문』, 『아마존 웹 서비스 부하 테스트 입문』, 『클라우드 네이티브를 위한 쿠버네티스 실전 프로젝트』 등이 있다.

보도자료

연관 프로그램

아래 프로그램은 길벗출판사가 제공하는 것이 아닙니다.
무료로 사용할 수 있는 정보를 안내해 드리니, 지원이 필요하면 해당 프로그렘 제작사로 문의해 주세요.