시작하세요! 도커/쿠버네티스 pdf 다운로드

시작하세요! 도커/쿠버네티스 pdf 다운로드를 무료로 제공합니다 쿠버네티스와 도커의 기본 사용 방법을 정확히 이해하는 것을 목표로 합니다! 도커 컨테이너는 애플리케이션을 배포하기 위한 새로운 패러다임을 제시하는 가상화 패러다임입니다.

관련 책 pdf 모음

개발자에서 아키텍트로 pdf 다운

책 소개

컨테이너 자체는 사용하기 매우 쉽지만 이를 활용하고 관리하기는 결코 쉽지 않습니다. 이 책은 도커를 처음 접하는 개발자를 위한 도커 컨테이너와 이미지의 기본적인 개념을 먼저 설명한 뒤, 도커 컴포즈와 스웜 모드를 통해 컨테이너 애플리케이션을 YAML 파일로 작성하고 클러스터에서 배포하는 방법을 소개합니다. 나아가 도커 컨테이너, 도커 컴포즈, 스웜 모드에서 학습한 지식을 활용해 쿠버네티스의 기초 사용법, 다양한 쿠버네티스 오브젝트의 사용 방법 및 심화 개념까지 알아봅니다. 개정판에서는 도커와 쿠버네티스의 설치 및 사용 방법을 최신 버전에 맞게 수정하였으며, 심화된 쿠버네티스 사용 방법 및 클라우드 생태계에 대한 설명을 강화했습니다. 또 쿠버네티스 환경에서 모니터링 시스템을 구축하기 위한 프로메테우스 기반의 쿠버네티스 메트릭 수집 방법, metrics-server 등과 같은 오픈소스 모니터링 도구의 기초적인 사용 방법도 함께 다룹니다.

시작하세요! 도커/쿠버네티스 pdf

시작하세요! 도커/쿠버네티스 pdf

▣ 01장: 도커란?
1.1 가상 머신과 도커 컨테이너
1.2 도커를 시작해야 하는 이유
____1.2.1 애플리케이션의 개발과 배포가 편해집니다.
____1.2.2 여러 애플리케이션의 독립성과 확장성이 높아집니다.
1.3 도커 엔진 설치
____1.3.1 도커 엔진의 종류 및 버전
____1.3.2 리눅스 도커 엔진 설치
____1.3.3 윈도우, 맥 OS에 도커 설치
____1.3.4 Docker Toolbox와 Docker for Windows/Mac의 차이점
____1.3.5 리눅스 환경에 도커 마련하기

▣ 02장: 도커 엔진
2.1 도커 이미지와 컨테이너
____2.1.1 도커 이미지
____2.1.2 도커 컨테이너
2.2 도커 컨테이너 다루기
____2.2.1 컨테이너 생성
____2.2.2 컨테이너 목록 확인
____2.2.3 컨테이너 삭제
____2.2.4 컨테이너를 외부에 노출
____2.2.5 컨테이너 애플리케이션 구축
____2.2.6 도커 볼륨
____2.2.7 도커 네트워크
____2.2.8 컨테이너 로깅
____2.2.9 컨테이너 자원 할당 제한
2.3 도커 이미지
____2.3.1 도커 이미지 생성
____2.3.2 이미지 구조 이해
____2.3.3 이미지 추출
____2.3.4 이미지 배포
2.4 Dockerfile
____2.4.1 이미지를 생성하는 방법
____2.4.2 Dockerfile 작성
____2.4.3 Dockerfile 빌드
____2.4.4 기타 Dockerfile 명령어
____2.4.5 Dockerfile로 빌드할 때 주의할 점
2.5 도커 데몬
____2.5.1 도커의 구조
____2.5.2 도커 데몬 실행
____2.5.3 도커 데몬 설정
____2.5.4 도커 데몬 모니터링
____2.5.5 Remote API 라이브러리를 이용한 도커 사용

▣ 03장: 도커 스웜
3.1 도커 스웜을 사용하는 이유
3.2 스웜 클래식과 도커 스웜 모드
3.3 스웜 모드
____3.3.1 도커 스웜 모드의 구조
____3.3.2 도커 스웜 모드 클러스터 구축
____3.3.3 스웜 모드 서비스
____3.3.4 도커 스웜 모드 노드 다루기

▣ 04장: 도커 컴포즈
4.1 도커 컴포즈를 사용하는 이유
4.2 도커 컴포즈 설치
4.3 도커 컴포즈 사용
____4.3.1 도커 컴포즈 기본 사용법
____4.3.2 도커 컴포즈 활용
4.4 도커 학습을 마치며: 도커와 컨테이너 생태계

▣ 05장: 쿠버네티스 설치
5.1 쿠버네티스 설치 환경의 종류
5.2 쿠버네티스 버전 선택
5.3 개발 용도의 쿠버네티스 설치
____5.3.1 Docker for Mac / Windows에서 쿠버네티스 사용
____5.3.2 Minikube로 쿠버네티스 설치
5.4 여러 서버로 구성된 쿠버네티스 클러스터 설치
____5.4.1 kubeadm으로 쿠버네티스 설치
____5.4.2 kops로 AWS에서 쿠버네티스 설치
____5.4.3 구글 클라우드 플랫폼의 GKE로 쿠버네티스 사용하기

▣ 06장: 쿠버네티스 시작하기
6.1 쿠버네티스를 시작하기 전에
6.2 포드(Pod) : 컨테이너를 다루는 기본 단위
____6.2.1 포드 사용하기
____6.2.2 포드 vs. 도커 컨테이너
____6.2.3 완전한 애플리케이션으로서의 포드
6.3 레플리카셋(Replica Set) : 일정 개수의 포드를 유지하는 컨트롤러
____6.3.1 레플리카셋을 사용하는 이유
____6.3.2 레플리카셋 사용하기
____6.3.3 레플리카셋의 동작 원리
____6.3.4 레플리케이션 컨트롤러 vs. 레플리카셋
6.4 디플로이먼트(Deployment) : 레플리카셋, 포드의 배포를 관리
____6.4.1 디플로이먼트 사용하기
____6.4.2 디플로이먼트를 사용하는 이유
6.5 서비스(Service) : 포드를 연결하고 외부에 노출
____6.5.1 서비스(Service)의 종류
____6.5.2 ClusterIP 타입의 서비스 – 쿠버네티스 내부에서만 포드에 접근하기
____6.5.3 NodePort 타입의 서비스 – 서비스를 이용해 포드를 외부에 노출하기
____6.5.4 클라우드 플랫폼의 로드 밸런서와 연동하기 – LoadBalancer 타입의 서비스
____6.5.5 트래픽의 분배를 결정하는 서비스 속성 – externalTrafficPolicy
____6.5.6 요청을 외부로 리다이렉트하는 서비스 – ExternalName

▣ 07장: 쿠버네티스 리소스의 관리와 설정
7.1 네임스페이스(Namespace) : 리소스를 논리적으로 구분하는 장벽
7.2 컨피그맵(Configmap), 시크릿(Secret) : 설정값을 포드에 전달
____7.2.1 컨피그맵(Configmap)
____7.2.2 시크릿(Secret)

▣ 08장: 인그레스(Ingress)
8.1 인그레스를 사용하는 이유
8.2 인그레스의 구조
8.3 인그레스의 세부 기능 : annotation을 이용한 설정
8.4 Nginx 인그레스 컨트롤러에 SSL/TLS 보안 연결 적용
8.5 여러 개의 인그레스 컨트롤러 사용하기

▣ 09장: 퍼시스턴트 볼륨(PV)과 퍼시스턴트 볼륨 클레임(PVC)
9.1 로컬 볼륨 : hostPath, emptyDir
____9.1.1 워커 노드의 로컬 디렉터리를 볼륨으로 사용 : hostPath
____9.1.2 포드 내의 컨테이너 간 임시 데이터 공유 : emptyDir
9.2 네트워크 볼륨
9.3 PV, PVC를 이용한 볼륨 관리
____9.3.1 퍼시스턴트 볼륨과 퍼시스턴트 볼륨 클레임을 사용하는 이유
____9.3.2 퍼시스턴트 볼륨과 퍼시스턴트 볼륨 클레임 사용하기
____9.3.3 퍼시스턴트 볼륨을 선택하기 위한 조건 명시
____9.3.4 퍼시스턴트 볼륨의 라이프사이클과 Reclaim Policy
____9.3.5 StorageClass와 Dynamic Provisioning

▣ 10장: 보안을 위한 인증과 인가 – ServiceAccount와 RBAC
10.1 쿠버네티스의 권한 인증 과정
10.2 서비스 어카운트와 롤(Role), 클러스터 롤(Cluster Role)
10.3 쿠버네티스 API 서버에 접근
____10.3.1 서비스 어카운트의 시크릿을 이용해 쿠버네티스 API 서버에 접근
____10.3.2 클러스터 내부에서 kubernetes 서비스를 통해 API 서버에 접근
____10.3.3 쿠버네티스 SDK를 이용해 포드 내부에서 API 서버에 접근
10.4 서비스 어카운트에 이미지 레지스트리 접근을 위한 시크릿 설정
10.5 kubeconfig 파일에 서비스 어카운트 인증 정보 설정
10.6 유저(User)와 그룹(Group)의 개념
10.7 x509 인증서를 이용한 사용자 인증

▣ 11장: 애플리케이션 배포를 위한 고급 설정
11.1 포드의 자원 사용량 제한
____11.1.1 컨테이너와 포드의 자원 사용량 제한 : Limit
____11.1.2 컨테이너와 포드의 자원 사용량 제한하기 : Request
____11.1.3 CPU 자원 사용량의 제한 원리
____11.1.4 QoS 클래스와 메모리 자원 사용량 제한 원리
____11.1.5 ResourceQuota와 LimitRanger
____11.1.6 ResourceQuota, LimitRanger의 원리 : Admission Controller
11.2 쿠버네티스 스케줄링
____11.2.1 포드가 실제로 노드에 생성되기까지의 과정
____11.2.2 포드가 생성될 노드를 선택하는 스케줄링 과정
____11.2.3 NodeSelector와 Node Affinity, Pod Affinity
____11.2.4 Taints와 Tolerations 사용하기
____11.2.5 Cordon, Drain 및 PodDistributionBudget
____11.2.6 커스텀 스케줄러 및 스케줄러 확장
11.3 쿠버네티스 애플리케이션 상태와 배포
____11.3.1 디플로이먼트를 통해 롤링 업데이트
____11.3.2 포드의 생애 주기(Lifecycle)
____11.3.3 HPA를 활용한 오토스케일링

▣ 12장: 커스텀 리소스와 컨트롤러
12.1 쿠버네티스 컨트롤러의 개념과 동작 방식
12.2 커스텀 리소스에 대한 개념
12.3 커스텀 리소스를 정의하기 위한 CRD(Custom Resource Definition)
12.4 커스텀 리소스와 컨트롤러

▣ 13장: 포드를 사용하는 다른 오브젝트들
13.1 잡(Jobs)
13.2 데몬셋(DaemonSets)
13.3 스테이트풀셋(StatefulSets)

▣ 14장: 쿠버네티스 모니터링
14.1 모니터링 기본 구조
14.2 모니터링 메트릭의 분류
14.3 쿠버네티스 모니터링 기초
____14.3.1 metrics-server
____14.3.2 metrics-server 동작 원리: APIService 리소스
____14.3.3 kube-state-metrics
____14.3.4 node-exporter
14.4 프로메테우스를 활용한 메트릭 수집
____14.4.1 프로메테우스 설치
____14.4.2 프로메테우스로 메트릭 수집하기
____14.4.3 그라파나로 프로메테우스 메트릭 시각화하기

▣ 부록
부록A: 도커 데몬 시작 옵션 변경하기
부록B: 특정 버전의 도커 설치하기
부록C: gcloud 명령어 설치하기
부록D: AWS CLI 설치하기

Leave a Comment