Academy Program

Home > > 전체교육일정

전체교육일정

Docker & Kubernetes

교육일정
교육기간
3일
교육금액
1,200,000원(면세)
전체일정보기 수강신청

교육개요

컨테이너 기반의 DevOps 이해부터 시작하여, Docker 이미지의 생성, 배포, 관리 방법을 단계별로 배웁니다. 도커 허브 사용법부터 Dockerfile을 통한 이미지 생성 실습까지, Docker의 전 과정을 체험할 수 있습니다.
Kubernetes의 기본 오브젝트 모델부터 YAML을 통한 서비스 배포 및 업그레이드 실습까지, Kubernetes를 이용한 클라우드 네이티브 애플리케이션의 관리와 배포 과정을 깊이 있게 이해합니다. Pod Status에 따른 트러블 슈팅 방법부터 레이블과 어노테이션을 활용한 롤백 응용까지, Kubernetes를 통한 효율적인 애플리케이션 관리 방법을 배웁니다.
Prometheus와 Grafana를 활용한 클러스터 모니터링과 무정비 배포, Kubernetes 환경에서 애플리케이션의 성능을 모니터링하고, 사용자 경험을 저해하지 않는 배포 방법을 실습합니다. Replicaset과 Scale Out, 셀프힐링과 무정지 배포의 실습을 통해, 고가용성이 보장된 클라우드 네이티브 애플리케이션을 구축하는 방법을 마스터하게 됩니다.



교육목표

데브옵스 프로세스 이해를 기반으로 도커 및 쿠버네티스의 기본 개념을 습득하고, 실제 애플리케이션을 배포하고 관리하는 실전 능력을 습득할 수 있습니다.



강의내용

[Chapter 1: 데브옵스 프로세스 이해]
· 학습 목표:
데브옵스와 컨테이너 기반 DevOps의 핵심 원리를 이해하고, 클라우드 네이티브 애플리케이션의 전 생명주기를 파악하여 효율적인 소프트웨어 개발과 배포를 위한 전략을 습득합니다.
· 주요 내용:
1. 데브옵스 프로세스와 컨테이너 기반 DevOps 이해
2. 클라우드 네이티브 앱 전 생명주기 이해

[Chapter 2: 도커 개념 및 이미지 이해하기(이미지 규칙 소개)]
· 학습 목표:
도커의 기본 개념을 이해하고 이미지의 역할과 생성 규칙을 파악하여, 효율적인 이미지 관리와 배포를 위한 전략을 습득합니다.
· 주요 내용:
1. 도커 개념 및 이미지 이해하기(이미지 규칙 소개)

[Chapter 3: 도커 허브와 도커 런타임]
· 학습 목표:
도커 허브를 통해 이미지 저장과 관리를 이해하고, 도커 런타임을 활용하여 컨테이너를 관리하는 방법을 습득합니다.
· 주요 내용:
1. 도커 허브와 도커 런타임

[Chapter 4: 도커 이미지 생성 & Dockerfile]
· 학습 목표:
도커 이미지를 생성하는 과정과 Dockerfile을 사용하여 이미지를 자동화하는 방법을 이해하여, 효율적이고 일관된 이미지 빌드 프로세스 구축을 학습합니다.
· 주요 내용:
1. 도커 이미지 생성 & Dockerfile

[Chapter 5: 이미지와 컨테이너 관계 실습]
· 학습 목표:
이미지와 컨테이너 간의 관계를 실제로 경험하고, 도커를 사용하여 이미지를 생성하고 컨테이너를 실행하는 실습을 통해 이해합니다.
· 주요 내용:
1. 이미지와 컨테이너 관계 실습 1
2. 이미지와 컨테이너 관계 실습 2

[Chapter 6: 이미지 생성 및 저장소 푸쉬]
· 학습 목표:
이미지를 생성하고 도커 저장소에 푸시하는 과정을 이해하고, 실제로 이미지를 빌드하고 저장소에 업로드하여 배포하는 경험을 통해 더 나은 이미지 관리 및 배포 전략을 습득합니다.
· 주요 내용:
1. 이미지 생성 및 저장소 푸쉬

[Chapter 7: 이미지 기반 컨테이너 생성 및 새 버전 배포]
· 학습 목표:
새로운 이미지를 사용하여 컨테이너를 생성하고, 이전 버전과의 차이를 이해하며 새 버전의 애플리케이션을 배포하는 과정을 이해합니다.
· 주요 내용:
1. 이미지 기반 컨테이너 생성 및 새 버전 배포

[Chapter 8: 쿠버네티스 이해]
· 학습 목표:
쿠버네티스의 기본 오브젝트 모델을 이해하고, 사용자가 만든 서비스를 쿠버네티스에 배포하고 조회하는 방법을 숙지하며, YAML 기반으로 서비스를 배포하고 업그레이드하는 프로세스를 학습합니다.
· 주요 내용:
1. 쿠버네티스 기본 오브젝트 모델
2. 내가 만든 서비스 쿠버네티스에 배포하고 조회하기
3. YAML 기반으로 내 서비스 배포 및 업그레이드 하기

[Chapter 9: Pod Status에 따른 컨테이너 트러블슈팅]
· 학습 목표:
Pod의 상태 코드를 통해 컨테이너의 이슈를 진단하고 해결합니다.
· 주요 내용:
1. Pod Status에 따른 컨테이너 트러블슈팅 - ImagePullBackOff, CrashLoopBack
2. Pod Status에 따른 컨테이너 트러블슈팅 - CrashLoopBack(kubectl exec)

[Chapter 10: 12th 어플리케이션 쿠버네티스에 배포하기]
· 학습 목표:
실제 애플리케이션의 쿠버네티스 배포 프로세스를 이해하고 경험합니다.
· 주요 내용:
1. 12th 어플리케이션 쿠버네티스에 배포하기 1 - 주문서비스 Profile 확인 및 이미지 생성
2. 12th 어플리케이션 쿠버네티스에 배포하기 2 - Kafka 설치 12th 이미지 배포
3. 12th 어플리케이션 쿠버네티스에 배포하기 3 - 서비스 생성 및 12th Mall 테스트

[Chapter 11: 레이블과 어노테이션]
· 학습 목표:
쿠버네티스의 레이블과 어노테이션을 이해하고 활용하는 것으로, 쿠버네티스 객체를 식별하고 관리하는 방법을 학습하며, 어노테이션을 활용하여 마이크로서비스 롤백을 실제 응용하는 방법을 습득합니다.
· 주요 내용:
1. 레이블과 어노테이션
2. 레이블을 활용한 쿠버네티스 객체 식별
3. 어노테이션을 활용한 마이크로서비스 롤백 응용

[Chapter 12: Replicaset과 Scale Out]
· 학습 목표:
쿠버네티스의 ReplicaSet을 이해하고 수동 및 자동 스케일 아웃을 수행하는 방법을 익히고, 이를 통해 메트릭 서버 및 워크로드 생성기를 준비하고, 주문 서비스에 자동 스케일 아웃을 적용하는 방법을 실습하며 확장성 있는 서비스 배포와 관리에 대한 이해를 합니다.
· 주요 내용:
1. 리플리카셋(ReplicaSet) 이론과 Manual Scale Out
2. 오토 스케일 아웃(Auto Scale-Out) 랩준비(Metric Server - Workload Generator)
3. 주문 서비스에 오토 스케일 아웃(Auto Scale-out) 적용하기

[Chapter 13: Deployments 객체와 네임 스페이스]
· 학습 목표:
쿠버네티스의 Deployments 객체를 종합적으로 리뷰하고, 네임스페이스의 개념을 이해하여 기본 네임스페이스를 응용하여 습득합니다.
· 주요 내용:
1. Deployments 객체 종합 리뷰
2. 네임스페이스 개념 및 기본 네임스페이스 응용

[Chapter 14: 마이크로서비스 로드밸런서]
· 학습 목표:
쿠버네티스에서의 Service 개념과 Access Scope, 그리고 다양한 타입의 로드밸런서 설정 및 활용에 대한 이해를 합니다.
· 주요 내용:
1. 마이크로서비스 로드밸런서 - Service 개념
2. 마이크로서비스 로드밸런서(Service) - Access Scope - Type 정리
3. Service - ClusterIP 타입 생성과 컨테이너와의 관계
4. Service - ClusterIP, NodePort 타입으로 서비스 접근
5. Service - LoadBalancer 타입 및 서비스 이름으로 Web URL 활용

[Chapter 15: 셀프힐링과 무정지 배포]
· 학습 목표:
셀프힐링(Liveness)과 무정지 배포(Readiness)의 개념을 소개하고, 이에 대한 실행 예제와 실습을 통해 학습합니다.
· 주요 내용:
1. 셀프힐링(Liveness) - 무정지 배포(Readiness)
2. 셀프힐링(Liveness) Exec Action 실습 1
3. 셀프힐링(Liveness) Exec Action 실습 2
4. 무정지 배포(Readiness) 실습을 위한 준비(Kafka, Siege 설치)
5. 무정지 배포(Readiness) 실습

[Chapter 16: 쿠버네티스 볼륨 인터페이스]
· 학습 목표:
다양한 유형의 볼륨 인터페이스를 학습하며, 이를 통해 AWS와 Azure 환경에서의 설정과 활용법을 실습을 통해 이해합니다.
· 주요 내용:
1. 쿠버네티스 볼륨 인터페이스 - emptyDir, hostPath 유형
2. [AWS] 쿠버네티스 볼륨 인터페이스 - EBS, EFS, and PVC
3. [AWS] 쿠버네티스 볼륨 인터페이스 - 관리콘솔을 통한 파일시스템 생성
4. [AWS] 쿠버네티스 볼륨 인터페이스 - EFS CSI Driver 설치 및 EKS 설정
5. [AWS] 쿠버네티스 볼륨 인터페이스 - EFS PVC 생성 및 Pod 연결
6. [Azure] 쿠버네티스 볼륨 인터페이스 - PVC 기반 NFS 스토리지 생성과 활용

[Chapter 17: 쿠버네티스에 환경변수 구성하기]
· 학습 목표:
ConfigMap과 Secret을 활용하여 쿠버네티스 환경에서 애플리케이션의 설정과 민감한 정보를 효과적으로 관리하는 방법을 학습합니다.
· 주요 내용:
1. 쿠버네티스에 환경변수 구성하기 - ConfigMap
2. 쿠버네티스에 환경변수 구성하기 - Secret

[Chapter 18: 파일시스템 연결과 데이터베이스 설정]
· 학습 목표:
파일시스템 및 데이터베이스 설정을 위해 이미지 생성, Secret 활용, 데이터베이스 생성 및 확인, MySQL에 PVC 연결하는 방법을 학습합니다.
· 주요 내용:
1. 파일시스템 연결과 데이터베이스 설정 - 이미지 생성 및 푸쉬
2. 파일시스템 연결과 데이터베이스 설정 - Secret을 통한 데이터베이스 설정
3. 파일시스템 연결과 데이터베이스 설정 - 데이터베이스 생성 및 확인
4. 파일시스템 연결과 데이터베이스 설정 - 데이터 보존을 위한 MySQL에 PVC 연결

[Chapter 19: Ingress를 통한 진입점 통일]
· 학습 목표:
Ingress를 통해 서비스의 외부 진입점을 통일하는 방법과 그 중요성을 이해합니다.
· 주요 내용:
1. Ingress를 통한 진입점 통일

[Chapter 20: k8s advanced Orchestration Features 학습]
· 학습 목표:
Kubernetes의 고급 Orchestration 기능을 학습하여 클러스터 관리와 운영을 더욱 효율적으로 수행하는 방법을 이해합니다.
· 주요 내용:
1. k8s advanced Orchestration Features 학습