
구매문의 및 도서상담은 031-944-3966(매장)으로 문의해주세요.
매장전집은 전화 혹은 매장방문만 구입 가능합니다.
지은이 : 타카하시 아오이
대형 제조업체에서 소프트웨어 엔지니어로 근무한 후, IT 기업의 SRE로 옮겼다. 기술 동인지 『만화로 시작하는 쿠버네티스』 등을 집필했으며, 사람들에게 쿠버네티스 관련 기술을 어떻게 쉽게 전할 수 있을지 매일 고민하고 있다. 취미는 만화 읽기와 그리기, 음악 듣기와 맥주 마시기.X: @_a0i
1부 쿠버네티스 만들어 보기
1장 도커 컨테이너 만들어 보기
1.1 쿠버네티스는 왜 도커가 필요한가?
1.2 도커 알아보기
____1.2.1 도커란?
____1.2.2 컨테이너란?
____1.2.3 왜 컨테이너인가?
____1.2.4 그래서 도커란?
____1.2.5 준비: 도커 환경 만들기
____1.2.6 컨테이너 실행하기
____1.2.7 컨테이너의 틀이 되는 도커 이미지
____1.2.8 컨테이너 이미지의 설계서인 Dockerfile
____1.2.9 도커 이미지 빌드하기
____1.2.10 직접 만든 도커 이미지로 컨테이너 실행하기
____1.2.11 도커 이미지 공개하기
____1.2.12 Dockerfile 작성 팁
1.3 [만들기] 나만의 http server 컨테이너 실행하기
2장 쿠버네티스 클러스터 만들어 보기
2.1 쿠버네티스란?
____2.1.1 컨테이너를 쉽게 만들고 파기할 수 있게 된 이후의 상황
____2.1.2 쿠버네티스의 특징
____2.1.3 쿠버네티스 아키텍처 개요
____2.1.4 다양한 쿠버네티스 클러스터 구축 방법
2.2 [만들고 고치기] 쿠버네티스 클러스터 만들고 지우기
3장 전체적인 설명
3.1 학습 흐름
3.2 사용하는 애플리케이션에 대해
4장 쿠버네티스 클러스터 위에 애플리케이션 만들기
4.1 쿠버네티스 클러스터 위에 애플리케이션 실행하기
____4.1.1 리소스의 사양을 담은 매니페스트
____4.1.2 컨테이너를 실행하기 위한 최소 구성 리소스: Pod
____4.1.3 리소스가 만들어지는 공간: 네임스페이스
4.2 [만들기] Pod 만들기
____4.2.1 준비: Pod를 만들기 전에 쿠버네티스 클러스터가 준비되었는지 확인하기
____4.2.2 매니페스트 사용해 보기
____4.2.3 매니페스트를 쿠버네티스 클러스터에 적용하기
2부 애플리케이션을 망가뜨리면서 배우는 쿠버네티스
5장 트러블 슈팅 가이드와 kubectl 명령어 사용법
5.1 트러블 슈팅 가이드
____5.1.1 트러블 슈팅에 도움이 되는 Pod의 STATUS 컬럼
5.2 kubectl로 현황 파악하기
____5.2.1 리소스 확인하기: kubectl get
____5.2.2 리소스 상세 정보 출력하기: kubectl describe
____5.2.3 컨테이너의 로그 출력하기: kubectl logs
5.3 kubectl 명령어로 상세 정보 출력하기
____5.3.1 디버그용 사이드카 컨테이너 시작하기: kubectl debug
____5.3.2 컨테이너를 그 자리에서 실행하기 kubectl run
____5.3.3 컨테이너에 로그인하기: kubectl exec
____5.3.4 포트 포워딩으로 애플리케이션에 접속하기
5.4 장애를 해결하기 위한 kubectl 명령어
____5.4.1 매니페스트를 그 자리에서 편집하기: kubectl edit
____5.4.2 리소스를 삭제하기: kubectl delete
5.5 터미널을 더 편리하게 사용하기 위한 팁
____5.5.1 자동 완성 설정하기
____5.5.2 kubectl의 별명 설정하기
____5.5.3 리소스 이름 축약하기
____5.5.4 kubectl 작업을 도와주는 도구
____5.5.5 kubectl 플러그인 사용해 보기
5.6 [고치기] 디버그해 보기
____5.6.1 준비: Pod가 실행 중인 것을 확인하기
____5.6.2 애플리케이션 망가뜨리기
____5.6.3 애플리케이션 조사하기
6장 쿠버네티스 리소스 만들고 망가뜨리기
6.1 Pod의 라이프사이클 알기
6.2 Pod의 다중화를 위한 ReplicaSet과 Deployment
____6.2.1 ReplicaSet
____6.2.2 Deployment
____6.2.3 [만들고 고치기] Deployment를 만들고 망가뜨리기
6.3 Pod로의 접속을 도와주는 Service
____6.3.1 Service의 Type 알기
____6.3.2 Service를 사용한 DNS
____6.3.3 [망가뜨리기] Service 망가뜨리기
6.4 Pod의 외부에서 정보를 읽어들이는 ConfigMap
____6.4.1 환경 변수로 읽어들이기
____6.4.2 볼륨을 통해 설정 파일 읽어들이기
____6.4.3 [망가뜨리기] ConfigMap 설정으로 인한 장애!
6.5 기밀 데이터를 다루기 위한 Secret
____6.5.1 환경 변수로 읽어들이기
____6.5.2 볼륨을 사용해서 컨테이너의 설정 파일 읽어들이기
6.6 한 번만 실행하는 태스크를 위한 Job
6.7 Job을 정기적으로 실행하는 CronJob
7장 무상태 애플리케이션을 안전하게 만들기
7.1 애플리케이션의 헬스 체크
____7.1.1 Readiness probe
____7.1.2 Liveness probe
____7.1.3 Startup probe
____7.1.4 [망가뜨리기] State는 Running이지만…
7.2 애플리케이션에 적절한 리소스 지정하기
____7.2.1 Resource requests로 컨테이너의 리소스 사용량 요구하기
____7.2.2 Resource limits로 컨테이너의 리소스 사용량 제어하기
____7.2.3 리소스의 단위
____7.2.4 Pod의 Quality of Service(QoS) 클래스
____7.2.5 [망가뜨리기] 또 Pod가 고장났다
7.3 Pod 스케줄링의 편리한 기능 이해하기
____7.3.1 Node selector로 노드 지정하기
____7.3.2 Affinity와 Anti-affinity로 Pod 스케줄링을 유연하게 지정하기
____7.3.3 Pod 분산을 위한 Pod Topology Spread Constraints 설정하기
____7.3.4 Taint와 Toleration
____7.3.5 Tips: Pod Priority와 Preemption
____7.3.6 [망가뜨리기] Pod 스케줄링 실패
7.4 애플리케이션 스케일링하기
____7.4.1 수평 스케일링
____7.4.2 수직 스케일링
7.5 노드 정지에 대비하기
____7.5.1 애플리케이션의 가용성을 보증하는 PodDisruptionBudget(PDB)
8장 전체 복습: 애플리케이션 고치기
8.1 준비 환경 만들기
8.2 애플리케이션 환경 구축하기
8.3 애플리케이션 업데이트하기
8.4 정상 상태 확인하기
8.5 원인 조사하기
3부 고장나도 움직이는 쿠버네티스
9장 쿠버네티스의 구조와 아키텍처 이해하기
9.1 쿠버네티스의 아키텍처에 대하여
9.2 아키텍처 개요
9.3 쿠버네티스 클러스터의 핵심인 컨트롤 플레인
9.4 애플리케이션 실행을 담당하는 워커 노드
9.5 쿠버네티스 클러스터에 접근하기 위한 CLI: kubectl
9.6 kubectl apply 이후 컨테이너가 실행될 때까지의 흐름
9.7 [만들고, 망가뜨리기] 쿠버네티스는 부서지지 않는다?
____9.7.1 준비: 클러스터 구축하기
____9.7.2 hello-server 실행하기
____9.7.3 컨트롤 플레인 정지하기
9.8 쿠버네티스를 확장하는 방법
10장 쿠버네티스 개발 워크플로 이해하기
10.1 쿠버네티스에 배포하기
____10.1.1 Push형 배포 방법: CIOps
____10.1.2 Pull형 배포 방법: GitOps
10.2 쿠버네티스 매니페스트 관리
____10.2.1 Helm
____10.2.2 Jsonnet
____10.2.3 자체 템플릿
____10.2.4 Kustomize
____10.2.5 [만들기] Kustomize로 매니페스트를 이해하기 쉽게 만들기
11장 옵저버빌리티와 모니터링 다루기
11.1 관측 가능성에 대해 알아보자
____11.1.1 정보 수집하기: 로그
____11.1.2 측정값 처리하기: 메트릭스
____11.1.3 통신 추적하기: 트레이스
11.2 모니터링에 대해 알아보기
____11.2.1 정보를 시각화하기: 대시보드
____11.2.2 이상 경보: 알림
11.3 [만들기] 모니터링 시스템 구축하기
____11.3.1 Prometheus/Grafana 설치하기
____11.3.2 메트릭스 수집 애플리케이션 실행하기
____11.3.3 메트릭스 수집을 위한 설정
____11.3.4 Prometheus에 접속하기
____11.3.5 Grafana에 접속하기
12장 이 책 이후의 학습에 대하여
12.1 자격증 취득하기
12.2 쿠버네티스에서의 애플리케이션 운영 지식 넓히기
12.3 쿠버네티스의 장애 대응에 강해지기
12.4 쿠버네티스 커미터 되기
12.5 실력을 향상시키는 방법
____12.5.1 공식 문서 읽기
____12.5.2 내부 구현 코드 읽기
____12.5.3 책으로 쿠버네티스에 대한 지식 넓히기
____12.5.4 직접 쿠버네티스 클러스터 구축하기
____12.5.5 커스텀 컨트롤러 만들기
도서 DB 제공 - 알라딘 인터넷서점 (www.aladin.co.kr)