TerraformLearn
메인 인덱스 | CCG-Platform | GitHub
이 문서는 TerraformLearn 레포의 핵심 정보와 포트폴리오 메모를 한 파일로 정리한 노트입니다.
주요 목적
AWS EKS 클라우드 게이밍 플랫폼을 위한 Infrastructure as Code (IaC). GPU/CPU 노드용 Karpenter 자동 확장, Traefik 인그레스, Cloudflare와의 ExternalDNS 통합, 및 TLS용 cert-manager를 포함한 완전한 Kubernetes 인프라를 프로비저닝합니다.
주요 기술 스택
| 카테고리 | 스택 |
|---|---|
| IaC | Terraform 1.0+ |
| 클라우드 제공업체 | AWS (EKS, EC2, VPC, IAM) |
| Kubernetes | EKS 1.33 |
| 자동 확장 | Karpenter 1.6.1 |
| 인그레스 | Traefik |
| DNS | ExternalDNS + Cloudflare |
| TLS | cert-manager (ACME DNS-01) |
| GPU | NVIDIA GPU Operator, MPS |
포트폴리오 메모
구조가 분명한 자동 확장(Karpenter), 게이밍용 GPU 지원, 여러 문서를 가진 프로덕션급 인프라입니다. 비용 최적화를 위한 스팟 인스턴스를 포함한 현재 사용한 클라우드 네이티브 패턴을 구현합니다. DevOps, 클라우드 아키텍처, 인프라 자동화 기술의 사례입니다.
주요 파일
Terraform 설정
terraform/providers.tf- AWS 제공자 설정terraform/eks.tf- EKS 클러스터 및 시스템 노드 그룹terraform/karpenter.tf- Karpenter + GPU Operatorterraform/karpenter-iam.tf- Karpenter용 IAM/IRSAterraform/traefik.tf- Traefik 인그레스 컨트롤러terraform/cloudflare-dns.tf- ExternalDNS + cert-managerterraform/variables.tf- 변수 정의terraform/outputs.tf- 출력 값terraform/terraform.tfvars.example- 설정 템플릿
Karpenter 설정
karpenter-v1.6.1.yaml- Karpenter Helm 값cpu-nodes.yaml- CPU NodePool 설정gpu-nodes.yaml- GPU NodePool 설정nodepool-v1.yaml- 대안 NodePool 설정
문서
setup/00-configuration-checklist.md- 설정 체크리스트setup/01-aws-initial-setup.md- AWS 설정setup/02-eks-cluster-setup.md- EKS 설정setup/03-gpu-sharing-warm-pool.md- GPU 웜 풀setup/04-portal-and-auth.md- 포탈 설정setup/05-integration-and-test.md- 테스트setup/06-coturn-setup.md- TURN 서버setup/07-cleanup-and-shutdown.md- 정리
테스트 설정
nginx-cpu-test.yaml- CPU 워크로드 테스트nginx-test-http.yaml- HTTP 테스트cleanup-aws.sh- AWS 정리 스크립트
아키텍처 유형
클우드 네이티브 인프라:
- 다중 노드 풀 디자인 (시스템, CPU, GPU)
- Karpenter로 동적 자동 확장
- 스팟 인스턴스로 비용 최적화
- 게이밍 워크로드용 GPU 지원
주요 기능
- 관리형 시스템 노드가 있는 AWS EKS 1.33
- 동적 자동 확장용 Karpenter v1.6.1
- NVIDIA T4 지원이 있는 GPU NodePool
- 모든 노드용 AL2023 AMI
- Traefik 인그레스 컨트롤러
- Cloudflare 통합이 있는 ExternalDNS
- ACME DNS-01 챌린지가 있는 cert-manager
- 비용 최적화를 위한 스팟 인스턴스 지원
관련 레포지토리
- portal-backend (애플리케이션 백엔드)
- PodManager/PodManager_V2 (컨테이너 오케스트레이션)
- Selkies (WebRTC 스트리밍)
참고사항
- 프로덕션 준비 클라우드 인프라
- 고급 GPU/자동 확장 사례
- 정리된 문서 커버리지
- 포트폴리오 하이라이트의 강력한 후보
- 엔터프라이즈급 DevOps 기술 설명