Amazon Web Services 한국 블로그

AWS 비용을 줄일 수 있는 10가지 기법

AWS에서 제공하는 광범위한 서비스 및 요금 선택 옵션은 여러분의 인프라 비용을 효과적으로 관리하고 비즈니스 요구 사항에 따라 성능과 용량을 유지할 수 있는 유연성을 제공합니다. AWS 비용 최적화 프로세스는 먼저 현재 비용 및 사용량을 모니터링하고, 데이터를 분석하여 절감 효과를 찾고, 절감 효과를 실현하기 위한 조치를 지속적으로 운영하는 것이 중요합니다.

이 글에서는 이러한 프로세스를 진행하기 이전에 고객들이 알고 계시면 좋은 가장 빠른 비용 절감 방식을 소개합니다.

0. AWS 프리티어 및 총 사용량 확인

클라우드 비용을 줄이기 위한 조치를 취하기 전에 현재 어느 정도 AWS 서비스 비용이 나가고 있는지 확인할 필요가 있습니다. 초기 테스트를 위해 제공하는 AWS 프리 티어는 초기 고객에게 각 서비스에 대해 지정된 만큼 무료로 클라우드 서비스를 사용해 볼 수 있는 기능을 제공합니다. 이 동영상 단계를 따라하시면, 현재 본인의  프리 티어 제한을 초과하는지 확인할 수 있습니다.

다음으로  AWS Cost Explorer 를 사용하여 AWS 비용 및 사용량을 분석해 보세요. 이 도구는 계정 수준(예 : AWS 계정, AWS 서비스) 또는 리소스 수준 (예 : EC2 인스턴스 ID)에서 비용 및 사용량을 시각화하는 데 도움이 되는 기본 보고서를 제공합니다. “연결 계정별 월별 비용 보고서”를 사용하여 비용이 많이 발생하는 계정을 식별할 수 있습니다. 그런 다음 해당 계정 내 비용에 기여하는 높은 비용의 서비스를 찾을 수 있습니다. “서비스 별 월별 비용 보고서”를 사용하면, 시간별 및 리소스 수준 단위 및 태그를 사용하여 비용을 발생시키는 최고 리소스를 필터링하고 검색 가능합니다.

Cost Exploere를 통한 비용 확인

이제 AWS 비용과 사용량을 이해했다면, 기존 AWS 도구 및 서비스를 사용하여 AWS 비용을 줄이기 위해 오늘 할 수 있는 10 가지 방법을 본격적으로 살펴 보겠습니다.

1. 낮은 사용률의 Amazon EC2 인스턴스에 대한 비용 절감

AWS Cost Explorer 리소스 최적화 를 사용 하여 유휴 상태이거나 활용률이 낮은 EC2 인스턴스에 대한 보고서를 얻을 수 있습니다. 이러한 인스턴스를 중지하거나 인스턴스 타입 사이즈를 축소하여 비용을 줄일 수 있습니다. AWS 인스턴스 스케줄러를 사용하면 자동으로 인스턴스가 중지됩니다. AWS Operations Conductor 를 사용 하여 EC2 인스턴스의 크기를 자동으로 조정 가능합니다. (비용 탐색기의 권장 사항 보고서를 기반으로 함).

비용 탐색기 권한 부여 권장 사항

AWS Compute Optimizer를 사용 하여 인스턴스 제품군 내에서 인스턴스 유형 권장 사항을 살펴볼 수 있습니다. 인스턴스 제품군 내 또는 전체에 걸쳐 다운 사이징 권장 사항, 성능 병목 현상을 제거하기 위한 업 사이징 권장 사항 및 Auto Scaling 그룹의 일부인 EC2 인스턴스에 대한 권장 사항을 제공합니다. (AWS Compute Optimizer에 대한 자세한 소개는 동영상를 참고하세요.)

2. 낮은 사용량의 Amazon EBS 볼륨에 대한 비용 절감

일 주일 동안 데이터 활동이 매우 적은 (하루에 1 IOPS 미만) EBS 볼륨은 아마도 사용 중이 아닐 것입니다. AWS Trusted Advisor에서 활용률이 낮은 EBS 볼륨 확인을 사용하여 찾아낼 수 있습니다 . 비용을 줄이려면 먼저 볼륨을 스냅샷 (나중에 필요할 경우)을 만든 다음, 해당 볼륨을 삭제하십시오. Amazon Data Lifecycle Manager를 사용하여 스냅 샷 생성을 자동화 할 수 있습니다 . EBS 볼륨을 삭제하려면 삭제 단계를 따르시면 됩니다.

3. 낮은 사용량의 Amazon S3 객체의 스토리지 계층 이동을 통한 비용 절감

Amazon S3 Analytics 를 사용 하여 30 일 이상 객체 데이터 세트의 스토리지 접근 패턴을 분석해 보세요. 만약, 접근 횟수가 현저히 낮다면, S3 Infrequently Accessed (IA)를 활용 하여 비용을 절감 할 수 있는지 확인할 수 있습니다 . S3 수명 주기 정책을 사용하여 이러한 객체를 저비용 스토리지 계층으로 자동 이동시킬 수 있습니다 . 또는 S3 Intelligent-Tiering을 사용 하여 객체를 자동으로 분석하고 적절한 스토리지 계층으로 옮길 수 있습니다.

4. 낮은 사용량의 Amazon RDS, Amazon Redshift 인스턴스에 대한 비용 절감

최근 7 일 동안 연결이 없는 DB 인스턴스를 식별 하려면 AWS Trusted Advisor에서 Amazon RDS 유휴 DB 인스턴스 확인 을 사용 하십시오 . AWS DB 블로그 게시물에 설명 된 자동화 단계를 사용하여 이러한 RDS DB 인스턴스를 중지할 수 있습니다. Amazon Redshift의 경우, Trusted Advisor에서 Redshift 유휴 클러스터 확인인 기능을 사용하여 지난 7 일 동안 연결이 없거나 클러스터 전체 평균 CPU 사용률이 5 % 미만인 클러스터를 식별할 수 있습니다. AWS 빅데이터 블로그 게시물에  설명 된 단계를 사용하여 이러한 클러스터를 일시 중지할 수 있습니다.

활용도가 낮은 Redshift 클러스터 일시 중지

5. Amazon DynamoDB 자동 스케일링 및 온-디맨드를 활용한 비용 절감

Amazon CloudWatch에서 ConsumedReadCapacityUnits 및 ConsumedWriteCapacityUnits를 모니터링하여 DynamoDB 사용량을 분석할 수 있습니다. DynamoDB 테이블을 자동으로 확장 및 축소하려면 자동 스케일링 기능을 사용할 수 있습니다. 또는 온-디맨드 옵션을 사용할 수도 있습니다. 이를 통해 읽기 및 쓰기 요청에 대한 요청 당 지불 방법을 사용하여 사용한 만큼만 지불하여 비용과 성능의 균형을 쉽게 맞출 수 있습니다.

DynamoDB 읽기 / 쓰기 용량 모드

6. 유휴 로드 밸런서를 삭제를 통한 비용 절감

AWS Trusted Advisor 내  유휴 로드 밸런서 검사 를 사용하여 지난 7 일 동안 RequestCount가 100 미만인 로드 밸런서에 대한 보고서를 가져옵니다. 그런 다음, 로드 밸런서를 삭제하여 비용을 줄일 수 있습니다. 또한 비용 탐색기를 사용하여 데이터 전송 비용을 검토할 수 있습니다.

EC2 데이터 전송을 비용 탐색기 필터

EC2에서 공개 인터넷으로의 데이터 전송의 경우, 상당히 많은 비용이 나온다면 Amazon CloudFront 사용을 고려해야 합니다. 이미지, 비디오 또는 정적 웹 컨텐츠는 콘텐츠 배포 네트워크 (CDN)를 사용하여 전 세계 AWS 엣지에 캐시로 서비스 할 수 있습니다. CloudFront는 잠재적 인 트래픽 급증을 처리하기 위해 용량을 미리 설정할 필요가 없습니다.

7. EC2 스팟 인스턴스를 사용한 비용 절감

여러분 워크로드에 내-결함성이 있는 경우, 스팟 인스턴스를 사용하여 최대 90 % 비용을 절감할 수 있습니다. 일반적인 워크로드 중 빅 데이터, 컨테이너화 된 워크로드, 지속적 통합 및 배포(CI/CD), 웹 서버, 고성능 컴퓨팅 (HPC) 및 기타 테스트 및 개발 워크로드가 포함됩니다. EC2 Auto Scaling을 사용하면 온 디맨드 인스턴스와 스팟 인스턴스를 모두 시작하여 대상 용량을 충족 할 수 있습니다.

Auto Scaling은 스팟 인스턴스 요청을 자동으로 처리하고 스팟 인스턴스가 중단 된 경우에도 대상 용량을 유지하려고 시도합니다. 2019 re:Invent 세션을 통해 스팟 인스턴스에 대해 자세히 알아볼 수 있습니다.

8. EC2 자동 스케일링 그룹 구성 검토 및 수정

EC2 자동 스케일링 그룹을 사용하면 수요에 따라 EC2 서버 집합을 확장하거나 축소 할 수 있습니다. describe-scaling-activity CLI 명령을 사용하거나 단계적으로  콘솔에서 스케일링 활동을 검토할 수 잇습니다 .

9. 예약 인스턴스 (RI)를 사용하여 Amazon RDS, Redshift, ElastiCache 및 Elasticsearch 비용 절감

Amazon EC2 이외에도 다양한 AWS 서비스에서 예약 인스턴스(Reserved Instance) 구매 옵션을 통해 온-디맨드 가격 대비 최대 42 %의 할인 혜택을 받을 수 있습니다. Amazon RDS, Redshift, ElastiCache 및 Elasticsearch 사용량 기반으로 AWS Cost Explorer의 RI 구매 권장 사항에서 확인 가능합니다. 선결제 없이 1 년으로 매개 변수를 조정하면 됩니다. 1 년 약정의 경우, 손익 분기점은 일반적으로 7 ~ 9 개월입니다.

10. AWS Saving Plan을 통한 EC2, Fargate 및 Lambda 비용 절감

AWS Saving Plan은 인스턴스 제품군, 크기, AZ, 리전, OS 또는 테넌시에 관계없이 EC2 인스턴스 사용에 자동으로 적용되며 AWS Fargate 및 Lambda 사용에도 적용됩니다.  온 디맨드 요금에 비해 최대 54 % 할인받을 수 있습니다. AWS Cost Explorer에서 제공하는 권장 사항을 사용하여 선결제 옵션이 없는 컴퓨팅을 1 년을 선택해서 비교해 볼 수 있습니다. AWS Saving Plan에 가입하면, 할인 가격으로 사용량에 따라 자동으로 청구됩니다. 약정 이외의 사용은 정기적인 주문형 요금으로 청구됩니다.

Saving Plan 권장 사항 확인하기

앞에서 살펴본 10가지 단계를 통해 Amazon EC2, Fargate, Lambda, EBS, S3, ELB, RDS, Redshift, DynamoDB, ElastiCache 및 Elasticsearch 비용을 절감 할 수 있습니다. 비용 및 사용량이 변경 될 때 알림을받을 수 있도록 AWS Budget을 사용하여 예산을 설정하는 것이 좋습니다.

AWS 비용 및 사용량을 추적 할 예산을 설정하십시오.

 

예상 비용에 대한 알림 설정

예산 기능을 사용하면 예측 비용에 대한 알림도 설정할 수 있습니다. 이를 통해 문제를 미리 극복하고 사전에 비용을 절감 할 수 있습니다.

마무리

이외에도 보다 빠른 비용 최적화 기술을 배우려면 한국어 온라인 세미나를 참고하시기 바랍니다.

비용에 대한 더 궁금한 사항은 AWS 문의하기를 통해 연락해 주시면, 저희가 바로 도움을 드릴 것입니다.

– Shankar Ramachandran, AWS 솔루션즈 아키텍트

이 글은 AWS Compute 블로그의 10 things you can do today to reduce AWS costs 한국어 편집본입니다.