Networking Costs in AWS per GB - Simplified
- 예) 리전 하나에 가용 영역 두 개가 있을 때
첫 번째 AZ에 EC2 인스턴스가 있을 때 들어오는 트래픽은 모두 무료이며 또 다른 EC2 인스턴스가 같은 가용 영역에 위치한다면
가용 영역은 지리적으로 인접한 데이터 센터 집합이므로 두 인스턴스 간 트래픽은 Private IP로 통신하면 연결되므로 전부 무료
같은 리전 내 다른 두 AZ의 EC2 인스턴스가 서로 소통하길 바란다면 Public IP나 Elasitc IP를 사용하며
두 인스턴스가 통과하려면 트래픽이 AWS 네트워크 밖으로 나갔다가 다시 들어와야 하므로 비용은 GB당 2센트
대신 Private IP를 사용하면 두 가용 영역을 연결하는데 내부 AWS 네트워크를 사용하기 때문에 비용이 반으로 절감되며
인스턴스가 소통할 때 속도는 높이고 비용은 줄이려면 최대한 Public IP 보다는 Private IP를 사용해야 함
가용 영역을 포함하는 리전이 하나 더 있는 경우 트래픽이 다른 리전으로 이동할 때 GB당 0.02달러가 청구됨
EC2 인스턴스 간에 활발히 소통하기를 요구한다면 최대한 비용을 절감하도록 같은 가용 영역에서 사용해야하는 반면,
같은 가용 영역에서 사용하는 만큼 AZ가 다운되면 장애 조치가 하나도 없다는 뜻이므로 가용성이 떨어짐
그러므로 가용성과 비용 사이에서 균형을 유지해야 함
Minimizing egress traffic network cost
- 아키텍처를 영리하게 구성해서 네트워크 비용을 최적화하는 방법
- Egress traffic : 송신 트래픽은 아웃바운드 트래픽이므로 AWS에서 밖으로 나간다는 뜻
Ingress traffic : 수신 트래픽은 인바운드 트래픽이므로 외부에서 AWS로 들어오는 트래픽을 뜻하며 보통 무료
AWS로 데이터를 보내는건 대부분 무료지만 데이터를 내보낼 땐 비용이 드니까 최대한 AWS 내부에 두고 비용을 최소화해야 함 - 문제) 데이터베이스가 있고 기업 데이터 센터에 사용자가 있을 때,
기업 데이터 센터에서 애플리케이션을 실행한다면 애플리케이션은 데이터베이스에 쿼리를 보내
데이터베이스에서 데이터 100MB를 회수한 뒤 집계와 계산까지 마치고 나면
사용자에게 쿼리 결과 50KB만을 반환한다고 가정할 경우
데이터 100MB를 AWS에서 가져와 인터넷을 통해 기업 데이터 센터로 전송했으므로
송신 트래픽이 엄청나게 발생해서 비용이 아주 많이 들게 됨
- 해결) 위의 경우를 해결하기 위한 현명한 방법으로는 EC2 인스턴스의 AWS Cloud로 애플리케이션을 이동하는 것
동일한 가용 영역에 데이터를 두므로 DB 쿼리 데이터 전송이 무료가 되므로
100MB가 모든 계정에 생기지 않고 쿼리 결과 50KB만 전송되기 때문에 비용이 훨씬 절감되어 송신 비용이 최소화
- 송신 트래픽 네트워크 비용을 최소로 줄이는 또 다른 방법은
Direct Connect를 사용할 경우 Direct Connect 로케이션을 동일한 AWS 리전으로 설정해 비용을 아끼도록 함
S3 Data Transfer Pricing – Analysis for USA
- 예) 미국에서의 S3 데이터 전송 비용
S3 버킷으로 들어가는 데이터는 수신 트래픽이므로 전부 무료지만
S3에서 컴퓨터로 인터넷을 통해 데이터를 내려받는다면 송신 트래픽 1GB마다 9센트를 지불하게 됨
S3 전송 가속화를 사용한다면 전송 속도가 50~500% 정도 빨라지지만 데이터 전송에 추가 비용으로 GB당 4~8센트가 청구됨
S3 버킷 상에 CloudFront 배포를 생성하면 S3에서 CloudFront로 발생하는 트래픽은 무료이지만
CloudFront에서 인터넷으로 전송할 때는 GB당 8.5센트가 청구됨
그외에도 캐싱 기능을 사용해 데이터 액세스 지연 시간이 짧아지며 요청을 보낼 때마다 비용이 절감될 수 있음
또한 S3 버킷에 요청이 들어오면 비용을 부담해야 하지만, CloudFront로 들어올 경우 일곱 배나 저렴하게 되므로
S3 상에서 CloudFront를 사용해 비용을 절약할 수 있음
S3 버킷에서 리전 간 복제를 수행한다면 GB당 2센트를 지불
비용은 시간이 지나면서 혹은 지역에 따라 달라질 수 있음
Pricing: NAT Gateway vs Gateway VPC Endpoint
- NAT Gatway와 게이트웨이 VPC 엔드 포인트 비용
- 예) 리전에 VPC가 있고 사설 서브넷 두 개는 다른 유형의 EC2 인스턴스를 사용할 때 S3 버킷으로 데이터를 액세스하고자 함
공용 인터넷을 사용하는 방법과 VPC 엔드포인트를 사용하는 방법이 존재
공용 인터넷 사용을 위해 NAT Gateway가 있는 공용 서브넷을 생성해야 하며 인터넷 게이트웨이로 향하는 라우트가 필요하므로
라우팅 테이블을 사용해 라우트를 구축하면 EC2 인스턴스에서 NAT Gateway와 인터넷 게이트웨이를 지나 인터넷과 직접 연결
그러므로 S3 버킷 내 데이터를 인터넷에서 액세스할 수 있으며 NAT Gateway 요금은 시간당 0.045달러이며
NAT Gateway에서 처리되는 데이터 1GB마다 0.045달러, S3로 리전 간 데이터 송신 비용은 시간당 0.09달러가 청구되며
동일한 리전이라면 비용이 발생하지 않음
만약 VPC 엔드 포인트에 액세스하려면 여기로 연결되는 라우트만 설치하면 되며
데이터는 사설 서브넷에서 VPC 엔드 포인트와 S3 버킷으로 직접 흐르게 되므로 게이트웨이 엔드 포인트 사용료가 들지 않음
동일한 리전에서 S3로 데이터를 주고받을 때 데이터 1GB마다 1센트를 지불
그러므로 NAT Gateway보다 VPC 엔드 포인트를 사용하는 것이 훨씬 저렴
'Cloud > AWS' 카테고리의 다른 글
[SAA] 데이터베이스 마이그레이션 서비스 (DMS) (0) | 2022.05.02 |
---|---|
[SAA] AWS의 재해 복구 (0) | 2022.05.02 |
[SAA] VPC 섹션 (0) | 2022.05.01 |
[SAA] 이그레스 전용 인터넷 Gateway (0) | 2022.04.30 |
[SAA] VPC용 IPv6 (0) | 2022.04.30 |