AWS 청구서의 Amazon S3 요금이 이상할 정도로 높습니다. Amazon S3 비용을 낮추려면 어떻게 해야 합니까?

최종 업데이트 날짜: 2020년 5월 28일

AWS 청구서에서 Amazon Simple Storage Service(Amazon S3) 사용 요금이 예상보다 높습니다. Amazon S3 비용을 낮추려면 어떻게 해야 합니까?

간략한 설명

Amazon S3 요금은 스토리지, 요청 및 데이터 검색, 데이터 전송(S3 Transfer Acceleration 사용량 포함) 및 데이터 관리를 기준으로 합니다. Amazon S3 요금을 어디서 절감할 수 있는지 파악하려면 먼저 Amazon S3의 현재 청구 요금 및 사용량비용이 발생할 수 있는 경로를 이해해야 합니다.

Amazon S3에 대해 어느 정도 요금이 부과되는지 이해한 뒤에는 다음과 같은 방법으로 비용을 검토하고 낮출 수 있습니다.

  • 불완전한 멀티파트 업로드 정리
  • 필요 없는 객체의 이전 버전 삭제
  • 스토리지 클래스 전환 비용 검토
  • 데이터 검색 비용 검토
  • 버킷에 대한 요청 추적
  • 버킷 크기 변경 사항 확인
  • 각 버킷의 비용 검토
  • 사용량과 요금이 어떤 관계인지 이해

해결 방법

불완전한 멀티파트 업로드 정리

멀티파트 업로드를 시작한 후에 Amazon S3은 멀티파트 업로드를 완료하거나 중단할 때까지 파일의 모든 업로드된 부분을 보관합니다. 멀티파트 업로드가 성공적으로 완료되지 않으면 Amazon S3은 기본적으로 업로드된 부분을 계속 저장합니다. 즉, 업로드된 부분을 저장하는 비용이 부과됩니다.

AWS 명령줄 인터페이스(AWS CLI)를 사용하여 멀티파트 업로드를 중단할 경우(abort-multipart-upload), 이 작업을 통해 불완전한 멀티파트 업로드에서 업로드된 부분이 삭제됩니다. 하지만 Amazon S3의 멀티파트 업로드 API를 사용하는 다른 도구를 사용할 경우, 불완전한 멀티파트 업로드로 인해 업로드된 부분이 남아 있을 수 있습니다.

불완전한 멀티파트 업로드로 인해 남겨진 업로드된 부분에 저장 요금이 부과되지 않도록 하려면 일정 기간이 지나서 불완전한 멀티파트 업로드를 정리하는 수명 주기 정책을 생성할 수 있습니다.

또한, Amazon S3 API 호출을 사용하여 멀티파트 업로드를 목록으로 작성한 다음, 실패하거나 취소하려는 멀티파트 업로드를 중단할 수 있습니다.

필요 없는 객체의 이전 버전 삭제

경고: 필요 없는 객체 또는 객체 버전만 삭제하도록 주의하십시오. Amazon S3는 버킷에서 삭제한 데이터를 복원할 수 없습니다.

버킷에서 버전 관리가 활성화되어 있다면 각 객체에는 여러 버전이 있을 수 있습니다. 각 객체 버전은 스토리지 비용이 상승하는 데 기여합니다.

객체 버전을 검토하려면 Amazon S3 콘솔을 사용하거나 ListObjectVersions API 호출을 실행할 수 있습니다. 그런 다음, 더 이상 필요 없는 객체 버전을 삭제할 수 있습니다.

참고: 버전이 활성화된 버킷에서는 객체 버전 ID를 지정하여 객체 버전을 영구적으로 삭제해야 합니다. 버전이 활성화된 버킷에서 객체에 대한 단순 삭제 요청을 실행할 경우, Amazon S3이 객체에 삭제 마커를 추가합니다. 그 삭제 마커가 객체의 최신 버전이 되고 실제 객체는 이전 버전이 됩니다. 그러나 객체와 그 버전은 실제로 삭제되지 않습니다.

또한, 수명 주기 규칙을 사용하여 객체의 최신 및 최신이 아닌 버전을 관리할 수 있습니다. 하지만 Amazon S3의 영구 삭제는 되돌릴 수 없기 때문에 수명 주기 규칙의 파라미터를 신중하게 검토해야 합니다.

스토리지 클래스 전환 비용 검토

일반적으로 다른 스토리지 클래스로 객체를 전환해서 지속적으로 스토리지 비용이 발생하지 않도록 합니다. 그러나 객체를 다른 스토리지 클래스로 전환하는 것과 관련된 비용이 발생할 수 있다는 점을 인지하고 있어야 합니다.

예를 들어 Amazon S3 Standard 스토리지 클래스에서 Amazon S3 Standard-Infrequent Access(S3 Standard-IA) 스토리지 클래스로 전환하는 객체의 수명 주기 전환 요청 1,000회당 0.01 USD의 요금이 부과됩니다. 모든 스토리지 클래스에서 Amazon Simple Storage Service Glacier(Amazon S3 Glacier) 스토리지 클래스로 전환하는 객체의 수명 주기 전환 요청 1,000회당 0.05 USD의 요금이 부과됩니다. 자세한 내용과 요금 정보는 Amazon S3 요금을 참조하세요.

수백만 개의 객체가 포함된 버킷 전체를 다른 스토리지 클래스로 전환하는 수명 주기 구성 규칙을 설정할 경우, Amazon S3 요금이 상승하게 됩니다. 수명 주기 규칙으로 인해 요금이 상승했는지 확인하려면 AWS CloudTrail event history 또는 Amazon S3 서버 액세스 로그에서 PutBucketLifecycleConfiguration 호출을 검토하고 언제 규칙이 적용되었는지 알아봅니다.

데이터 검색 비용 검토

S3 Standard-IA, S3 One Zone-IA, Amazon S3 Glacier 또는 Amazon S3 Glacier Deep Archive 스토리지 클래스에 저장된 객체는 데이터 검색과 관련된 비용이 발생합니다.

예를 들어 합계 100TB에 달하는 용량의 Amazon S3 Glacier 스토리지 클래스에서 150만 개의 객체를 검색할 경우, 총 검색 비용은 선택하는 검색 옵션에 따라 달라집니다.

대량 검색:

  • 검색 요청은 15,000,000 / 1,000 * 0.025 USD = 375 USD입니다.
  • 검색은 100,000 * 0.0025 USD = 250 USD입니다.
  • 총 비용은 625 USD입니다.

표준 검색:

  • 검색 요청은 15,000,000 / 1,000 * 0.05 USD = 750 USD입니다.
  • 검색은 100,000 * 0.01 USD = 1,000 USD입니다.
  • 총 비용은 1750 USD입니다.

신속 검색:

  • 검색 요청은 15,000,000 / 1,000 * 10 USD = 150,000 USD입니다.
  • 검색은 100,000 * 0.03 USD = 3,000 USD입니다.
  • 총 비용은 153,000 USD입니다.

버킷에 대한 요청 추적

다음 중 하나 이상의 방법을 사용하여 버킷에 대한 요청을 모니터링할 수 있습니다.

버킷에 대한 요청을 파악한 후에는 요청에서 비용을 절감하는 조치를 취할 수 있습니다. 예를 들어 버킷 정책 또는 AWS Identity and Access Management(IAM) 정책을 사용하여 버킷에 대한 무단 액세스 또는 공개 액세스를 제한할 수 있습니다. 또는 데이터 전송 OUT 요금에서 발생하는 비용을 줄이려면 버킷과 동일한 AWS 리전 내에 있는 Amazon Virtual Private Cloud(Amazon VPC)의 Amazon Elastic Compute Cloud(Amazon EC2) 인스턴스를 사용하여 버킷에 액세스할 수 있습니다.

버킷 크기 변경 사항 확인

스토리지 비용을 분리하려면 버킷의 현재 용량과 이전 월의 버킷 용량을 비교하면 됩니다. Amazon S3 콘솔에서 버킷 스토리지 용량을 검토할 수 있습니다.

  1. Amazon S3 콘솔에서 버킷을 확인할 수 있습니다.
  2. [관리] 탭을 선택합니다.
  3. [지표]를 선택합니다.

AWS CLI 또는 CloudWatch 콘솔을 사용하여 버킷의 스토리지 용량을 검토할 수 있습니다.

각 버킷의 비용 검토

특정 버킷 하나에서 높은 비용이 발생하는지 확인하려면 버킷에서 비용 할당 태그를 활성화한 다음, AWS Cost Explorer를 사용하여 버킷을 검토할 수 있습니다.

사용량과 요금이 어떤 관계인지 이해

사용 보고서에서는 바이트/시간 단위로 스토리지 사용량을 기록하고 청구 보고서는 GB/월 단위로 스토리지 사용량을 기록합니다. 스토리지 사용량이 스토리지 요금과 어떤 관계가 있는지 알아보려면 바이트/시간 단위를 GB/월 단위로 변환해야 합니다. 이러한 변환의 예시는 사용량 바이트/시간 기준을 청구된 GB/월 기준으로 변환을 참조하십시오.

Billing & Cost Management Dashboard에서 Amazon S3 사용 보고서를 다운로드할 수 있습니다.


이 문서가 도움이 되었습니까?

AWS에서 개선해야 할 부분이 있습니까?


도움이 필요하십니까?