AWS

AWS 비용 최적화

DevelopC 2022. 10. 7. 16:20
728x90

AWS 비용 최적화

AWS를 사용하면서 비용 절감할 수 있는 몇 가지 방법을 설명합니다. AWS 사용하다 보면 비용에 크게 신경 쓰지 않고 사용하는 경우가 있습니다. AWS 비용이 많이 나오지 않는다면 크게 체감되지 않지만, AWS 사용을 많이 할수록 비용절감 효과는 크게 나타납니다. 

 

EC2 

  • 사용하지 않는 EC2 Instace 삭제하기
  • 업무시간에만 사용하는 EC2 Instance는 Instance Scheduler를 사용하여 특정 시간에만 실행하고, 사용하지 않는 시간에는 stop 합니다.
  • 모니터링하여 CPU / Memory 사용량을 측정 후 over-provisioning 된 EC2 Instance의 타입을 변경합니다.
  • EC2 Instance는 RI(예약 인스턴스) 또는 Savings Plans을 구매하여 사용합니다.
  • stateless 한 애플리케이션은 SPOT Instance를 사용합니다.
  • Arm 기반의 AWS Graviton 프로세서로 구동되는 AWS 인스턴스를 사용합니다.

EBS

  • 사용하지 않는 EBS 볼륨을 삭제합니다.
  • 사용하지 않는 EBS 스냅샷을 삭제합니다.
  • gp3 볼륨을 사용합니다.
    • gp2 볼륨보다 GB당 월비용이 20% 저렴합니다.

S3

  • 불완전한 멀티파트 업로드 객체를 삭제합니다.
  • 필요 없는 파일을 삭제합니다.
  • 액세스 하진 않지만 계속 보관해야 하는 파일이면 lifecycle rule을 생성하여, Glacier Instant Retrieval, Glacier Flexible Retrieval, Glacier Deep Archive storage class로 변경합니다.
  • storage class를 standard로 사용해야 하는 경우가 아니라면 ifecycle rule을 생성하여 Intelligent-Tiering storage class로 변경합니다.
  • Zstandard로 압축하여 저장합니다.

네트워크

  • private subnet을 사용하고, 외부 통신을 위해 NAT Gateway를 사용한다면, VPC Endpoint 설정하여 네트워크 비용을 줄일 수 있습니다.
    • S3, DynamoDB 사용 중이면, Gateway 타입의 VPC Endpoint를 설정하면 네트워크 비용 없이 무료로 사용할 수 있습니다.
    • Interface 타입의 VPC Endpoint를 사용하면 AWS 서비스 사용을 위한 보안 및 안정성이 좋아지며, NAT Gateway의 과금보다 네트워크 비용이 저렴하여 비용 절감할 수 있습니다.
  • 여러 가용 영역 사용 시 다른 가용 영역과 통신할 경우 네트워크 비용이 발생하므로, 최대한 같은 가용 영역에서만 통신할 수 있도록 설정합니다.
    • NAT Gateway설정 시 사용하는 모든 가용 영역에 NAT Gateway를 생성하고, 같은 가용 영역의 NAT Gateway에만 통신하도록 route table을 설정합니다.
  • 여러 개의 VPC를 사용하면, Transit Gateway 사용하여, NAT Gateway 및 VPC Endpoint를 모든 VPC에 생성하지 않고, 하나의 VPC에만 설정하여 비용을 절감할 수 있습니다.
  • AWS 데이터 전송 비용 알아보기 참고
  • NAT Gateway 분석방법 참고
728x90