세부 구성 요소 및 세부 설정
네트워킹
- VPC (Virtual Private Cloud)
- AWS 클라우드 내에서 격리된 가상 네트워크를 제공
- 보안 및 네트워크 구성을 위한 기본 단위
- 세부 설정
- Region: ap-northeast-2 (Seoul)
- CIDR Block: 10.0.0.0/16
- 2^16 - 6 = 65,536 - 6 = 65,530 hosts
- Private Subnet
- VPC 내에서 인터넷과 분리된 네트워크 세그먼트
- 내부 서비스와 데이터베이스 서버를 위한 보안 환경을 제공
- 세부 설정
- CIDR Block: 10.0.2.0/24, 10.0.4.0/24
- Public Subnet
- 외부 인터넷에 연결 가능한 VPC 내 네트워크 세그먼트
- 공개적으로 접근 가능한 리소스를 위한 환경을 제공
- 세부 설정
- CIDR Block: 10.0.1.0/24, 10.0.3.0/24
- Internet Gateway 연결
- Internet Gateway
- VPC를 인터넷과 연결하는 게이트웨이
- 공개 서브넷에 있는 리소스가 인터넷으로부터의 트래픽을 수신하거나 보낼 수 있게 해주는 역할
- Route 53
- 클라우드 DNS 웹 서비스로, 도메인 네임 시스템(DNS) 서비스를 제공
- 사용자의 요청을 애플리케이션의 인프라로 라우팅
- 세부 설정
- A Records
- salesync.site
- api.salesync.site
- argo.salesync.site
- logging.salesync.site
- monitoring.salesync.site
- CloudFront
- 콘텐츠 전송 네트워크(CDN) 서비스로, 전 세계에 분산된 데이터 센터를 통해 콘텐츠를 빠르게 제공
- 세부 설정
- 원본: S3 정적 웹 사이트 호스팅
- 동작: HTTP를 HTTPS로 리다이렉트
- Certificate Manager
- SSL/TLS 인증서를 관리하는 서비스로, 보안된 통신을 위해 사용
- 세부 설정
- 인증서 발급 후 api.salesync.site 도메인에 연결
컴퓨팅 및 오케스트레이션
- EKS (Elastic Kubernetes Service)
- 관리형 쿠버네티스 서비스로, 컨테이너화된 애플리케이션의 배포, 관리 및 확장을 용이하게 함
- 세부 설정
- Kubernetes 버전: 1.28
- 플랫폼 버전: eks.6
- 역할
- 정책
- AmazonEKSClusterPolicy
- AmazonEKSVPCResourceController
- EKSEBSPolicy
- Public Subnets: ap-northeast-2a, ap-northeast-2c
- 추가 기능
- EC2 (Elastic Compute Cloud)
- 가상 서버를 제공하는 서비스로, 다양한 컴퓨팅 작업을 위해 활용
- 세부 설정
- On-demand
- Bastion Host
- EKS Worker Nodes
- Instance Class: m5a.large
- Auto Scaling Group
- 애플리케이션 수요에 따라 EC2 인스턴스의 수를 자동으로 조절하는 기능을 제공
- 세부 설정
- Cluster Autoscaler가 ASG 값을 바꿔 Auto Scaling
- ECR (Elastic Container Registry)
- 컨테이너 이미지를 저장하고 관리하는 서비스
- 세부 설정
로드 밸런싱
- Application Load Balancer (ALB)
- 애플리케이션 레이어에서 들어오는 트래픽을 여러 EC2 인스턴스, 컨테이너, IP 주소 간에 자동으로 분산
- Classic Load Balancer (CLB)
- 레거시 환경을 위한 기본적인 로드 밸런싱 기능을 제공
- Network Load Balancer (NLB)
스토리지 및 데이터베이스
- RDS (Relational Database Service)