시스템/배포(Deploy)

Part4. 개발자를 위한 Kubernetes 활용

EastHoon 2024. 8. 21. 22:15

개발자를 위한 Kubernetes 활용 파트 컨셉

1. 클라우드 인프라 기반 컨테이너 플랫폼 환경 설계 및 구축 수행

2. 컨테이너 플랫폼 기반 개발 환경 구성

3. 컨테이너 플랫폼의 안정적인 운영 방안 마련

 

 

개발자를 위한 Kubernetes 활용 파트 구성

0. 개발자를 위한 Kubernetes 활용 소개

1. Terraform을 활용한 AWS EKS 생성

2. AWS EKS 기본 Plugin 구성 방법

3. Kubernetes Manifest 작성을 위한 Helm 활용

4. Kubernetes 배포를 위한 GitHub와 ArgoCD 활용

5. Kubernetes 안정성 강화 방법

6. Kubernetes Custom 관리 방법

7. Kubernetes 보안 강화 방법

8. Kubernetes 트러블 슈팅 방법

9.Go를 활용한 Kubernetes CLI 개발

10.Kubernetes 활용 미니프로젝트 수행 하기

 

 

[1] Terraform을 활용한 AWS EKS 생성

1. Terraform을 활용한 AWS EKS 생성 소개

2. 실습 환경 구성을 위한 AWS 네트워크 및 EKS 설계

3. [실습] AWS 웹 콘솔을 활용한 AWS EKS 생성

4. Terraform 소개 (Terraformer 포함)

5. [실습] Terraform을 활용한 AWS EKS 생성

6. [실습] Terraformer를 활용한 AWS EKS 관리

 

참고

- https://www.terraform.io/

- GoogleCloudPlatform/terraformer: CLI tool to generate terraform files from existing infrastructure (reverse Terraform). Infrastructure to Code (github.com)

 

 

[2] AWS EKS 기본 Plugin 구성 방법

1. AWS EKS 기본 설정 방법 소개

2. [실습] EKS Node 및 POD IP 대역 분리(Secondray CIDR) 적용

3. [실습] AWS ALB Controller를 활용한 Ingress ALB 생성

4. [실습] AWS ALB Controller를 활용한 Service NLB 생성

5. [실습] AWS EBS CSI Driver를 활용한 Block Storage PV 생성

6. [실습] AWS EFS CSI Driver를 활용한 File Storage PV 생성

7. [실습] Cluster Autoscaler를 활용한 EKS노드 오토스케일링

 

참고(AWS EKS Plugin 제공 사이트)

- https://github.com/kubernetes-sigs/aws-load-balancer-controller

- https://github.com/kubernetes-sigs/aws-ebs-csi-driver

- https://github.com/kubernetes-sigs/aws-efs-csi-driver

 

[3] Kubernetes Manifest 작성을 위한 Helm 활용
1. Kubernetes Manifest 작성 방법 소개

2. Kustomize 소개

3. [실습] Kustomize을 활용한 Manifest 배포하기

4. Helm Charts 소개

5. Helm Values 및 Template 소개

6. [실습] Helm Charts를 활용한 Manifest 배포하기

 

참고

- https://kustomize.io/

- https://helm.sh/

 

[4] Kubernetes 배포를 위한 GitHub와 ArgoCD 활용

1. Git을 활용한 Kubernetes 배포 방법 소개

2. [실습] Github Repository 생성 및 설정

3. Kubernetes 배포 도구(ArgoCD, ArgoRollout) 소개

4. [실습] ArgoCD 구성

5. [실습] ArgoCD를 활용한 Kubernetes Manifest 배포

6. [실습] ArgoRollout 구성

7. [실습] Argo Rollout을 활용한 무중단 배포

 

참고

- https://argo-cd.readthedocs.io/en/stable/

- https://argoproj.github.io/argo-rollouts/

 

[5] Kubernetes 안정성 강화 방법

1. Kubernetes 안정성 강화 방법 소개

2. [실습] HPA 소개 및 Metrics Server 설치

3. [실습] HPA 및 오토스케일링 적용

4. [실습] Minio 소개 및 설치

5. [실습] Minio 및 AWS S3 연결후 업로드/다운로드 적용

6. [실습] Velero 소개 및 설치

7. [실습] Velero 백업 적용

8. [실습] Velero 복구 적용

 

[6] Kubernetes Custom 관리 방법

1. Kubernetes Custom 관리 방법 소개

2. Custom Resource Definition(CRD) 소개

3. Kubernetes Operator 소개

4. [실습] Kubernetes Operator 적용

 

[7] Kubernetes 보안 강화 방법

1. Kubernetes 보안 강화 활용 소개

2. [실습] kube2iam 소개 및 설치

3. [실습] kube2iam를 활용한 AWS IAM 기반 권한 관리

4. [실습] Falco 소개 및 설치

5. [실습] Falco를 활용한 런타임 보안 강화

6. [실습] OPA Gatekeeper 소개 및 설치

7. [실습] OPA Gatekeeper를 활용한 보안 정책 관리

8. [실습] cert-manager 소개 및 설치

9. [실습] cert-manager를 활용한 TLS 인증서 관리

10.[실습] AWS ACM 활용 TLS 인증서 관리

 

[8]. Kubernetes 트러블 슈팅 방법

1. Kubernetes 트러블 슈팅 방법 소개

2. [실습] Cluster 로깅 및 이슈 사례 조치방법

3. [실습] Node 로깅 및 이슈 사례 조치방법

4. [실습] POD 로깅 및 이슈 사례 조치방법

5. [실습] 보안관련 로깅 및 이슈 사례 조치방법

6. [실습] DNS 로깅 및 이슈 사례 조치방법

 

[9] Go를 활용한 Kubernetes CLI 개발

1. Go를 활용한 Kubernetes CLI 개발 소개

2. Go언어 필수 문법 소개

3. Kubernetes Custom CLI 설계

4. [실습] Kubernetes API 활용 모듈 구현

5. [실습] Kubernetes CLI 빌드 및 실행

 

[10] Kubernetes 활용 미니프로젝트 수행 하기

1. Kubernetes 활용 미니프로젝트 소개

2. [실습] CI 환경 설정 및 빌드 준비 하기

3. [실습] CD 환경 설정 및 배포 준비 하기

4. [실습] CI 빌드 수행 및 컨테이너 Push, Helm Charts Push 하기

5. [실습] CD 자동 Trigger 및 배포/기동 상태 확인 하기

6. [실습] Canary 배포 적용 및 무중단 버전 업데이트 하기

반응형