AWS를 통한 비용 최적화-아키텍처, 도구 및 모범 사례 2/2

빌드업웍스
15 min readFeb 20, 2020

--

https://AWS.amazon.com/ko/

[ 고지 사항 (Disclaimer) ]

본 컨텐츠는 고객의 편의를 위하여 AWS 서비스 설명을 위해 제작, 제공된 것입니다. 만약 AWS 사이트와 컨텐츠 상에서 차이나 불일치가 있을 경우 AWS 사이트 (AWS.amazon.com)가 우선합니다. 또한 AWS 사이트 상에서 한글 번역문과 영어 원문에 차이나 불일치가 있을 경우(번역의 지체로 인한 경우 등 포함), 영어 원문이 우선합니다.

본 문서는 Cost Optimization with AWS Architecture, Tools, and Best Practices(2016, 영문) 내용에 기반하여 작성 되었습니다.

이 문서는 정보 제공의 목적으로만 제공됩니다. 본 문서의 발행일 당시 AWS의 현재 제품 오퍼링 및 실행방법 등을 설명하며, 예고 없이 변경될 수 있습니다. 고객은 본 문서에 포함된 정보나 AWS 제품 또는 서비스의 사용을 독립적으로 평가할 책임이 있으며, 각 정보 및 제품은 명시적이든 묵시적이든 어떠한 종류의 보증 없이 “있는 그대로” 제공됩니다. 본 문서는 AWS, 그 자회사, 공급업체 또는 라이선스 제공자로부터 어떠한 보증, 표현, 계약 약속, 조건 또는 보장을 구성하지 않습니다. 고객에 대한 AWS의 책임 및 의무는 AWS 계약에 의해 관리되며 본 문서는 AWS와 고객 사이의 어떠한 계약에도 속하지 않으며 계약을 변경하지도 않습니다.

© 2020, Amazon Web Services, Inc. or its affiliates. All rights reserved.

본 문서는 총 2부로 구성되어 있으며 이 글은 2부입니다.

1부 링크 : AWS를 통한 비용 최적화-아키텍처, 도구 및 모범 사례 1/2

애플리케이션 서비스

응용 프로그램 서비스는 고객이 핵심 비즈니스에 집중할 수 있도록 워크로드 배포와 관련된 많은 관리 및 미분화 된 관리 작업을 제거하는 제품입니다. 예를 들어 Amazon Relational Database Service (Amazon RDS) 및 Amazon DynamoDB는 관리 형 데이터베이스 서비스입니다. DynamoDB 서비스는 NoSQL 솔루션을 제공하는 데 필요한 데이터베이스 인스턴스를 프로비저닝하고 유지 관리합니다.

비용 절감액은 월별 AWS 요금에 반영되지 않지만 이러한 관리형 서비스는 DBA 및 관리자가 백업 및 복구와 같은 핵심 비즈니스 및 개발에 집중할 수 있도록 합니다.

물론 이러한 애플리케이션 또는 데이터베이스를 EC2 인스턴스에서 직접 실행할 수 있습니다. 그러나 EC2에서 데이터베이스 또는 Hadoop 프레임 워크를 구축하려면 팀에서 배포를 구성, 관리 및 유지 관리해야 한다고 생각하면 Amazon EMR 또는 DynamoDB와 같은 애플리케이션 서비스가 시간과 비용을 절약하는 방법을 알게 됩니다.

Amazon RDS 및 Amazon EMR과 같은 데이터베이스 및 분석 제품과 Amazon Elastic Transcoder 및 Amazon Workspaces와 같은 기타 서비스를 통해 데이터베이스 백업 자동화, 환경의 초기화 및 지속적인 관리, 자동 호스트 교체와 같은 미분화 된 관리 활동을 최소화 할 수 있습니다. 이러한 서비스를 통해 얻은 시간과 효율성은 시장 출시 속도와 같은 무형의 재정적 이점을 제공 할 수 있습니다.

데이터 전송

데이터 전송 및 전송은 AWS 리전과의 전송을 의미합니다. AWS는 AWS에서 인터넷으로의 데이터 전송에 대해 계층화 된 요금을 제공합니다 (더 많이 사용할수록 지불 요금이 낮아짐). 데이터 전송 비용을 줄이기 위해 인프라의 일부를 설계하여 AWS CloudFront 및 AWS Direct Connect10과 같은 AWS 서비스를 사용할 수 있습니다. 예를 들어 배포가 온 프레미스 데이터 센터와 AWS를 포함하는 하이브리드 모델 인 경우 AWS Direct Connect를 활용하여 인터넷 대신 AWS 리소스와 데이터 센터간에 프라이빗 파이버 링크를 설정할 수 있습니다. 온-프레미스 데이터 센터로 향하는 데이터 트래픽은 데이터 전송으로 간주되어 월별 요금이 청구됩니다. 이 개인 연결을 통한 데이터 트래픽과 관련된 비용이 서비스에 포함되어 있으므로 고객은 AWS Direct Connect를 사용하여 이러한 비용을 제거 할 수 있습니다. AWS Direct Connect 비용에 대한 월별 데이터 전송 관련 요금을 계산하면 올바른 재무 선택에 도움이됩니다.

마찬가지로 콘텐츠 전송에 Amazon S3를 사용하는 경우 Amazon CloudFront를 사용하면 최종 사용자와 S3 버킷 간의 대기 시간이 줄어 듭니다. 예를 들어 미국 서부 (오레곤) 리전의 S3 버킷에서 인터넷으로 전송하는 데 드는 비용은 GB 당 0.090 달러로 매월 처음 10TB까지입니다. Amazon CloudFront 솔루션을 배포 한 경우 전송 속도는 GB 당 0.085 달러로 떨어지면서 전체 지연 시간은 줄어 듭니다.

AWS 아키텍처를 지속적으로 평가하고 데이터 전송 비용이 발생하는 위치를 이해함으로써 최종 사용자 경험을 개선하면서 전반적인 운영 비용을 줄 이도록 배포를 조정할 수 있습니다.

운영 기법

자동화 도구를 사용하면 IT 배포와 관련된 일부 관리 및 관리 작업을 최소화 할 수 있습니다. 애플리케이션 서비스의 이점과 마찬가지로 AWS 인프라에 대한 자동화 또는 DevOps 접근 방식은 최소한의 수동 개입으로 확장 성과 탄력성을 제공합니다. 또한 AWS 환경과 관련 지출에 대한 제어 수준을 제공합니다. 예를 들어, 엔지니어 또는 개발자가 관리 및 감사 할 수있는 확립 된 프로세스 및 도구 (예 : AWS Service Catalog11과 같은 프로비저닝 포털)를 통해서만 AWS 리소스를 프로비저닝 할 수있는 경우 단순히 비용 및 낭비를 피할 수 있습니다.

AWS는 AWS 리소스를 관리하는 데 사용할 수있는 도구를 지속적으로 개발하고 있습니다. AWS CloudFormation, AWS Elastic Beanstalk, AWS CodeCommit, AWS CodeDeploy 및 AWS CodePipeline과 같은 서비스를 통해 관리 오버 헤드를 줄이고 개발 시간을 단축 할 수 있습니다. 팀은 랙을 프로비저닝하고 케이블을 관리하며 구매 주문을 제기하는 것이 아니라 제품 개발에 집중하고 있습니다. 이러한 서비스를 Auto Scaling, 스팟 인스턴스 및 수명주기 정책과 결합하면 효율성과 일관성이 향상됩니다.

태깅

태그는 AWS 리소스에 할당 한 레이블입니다. 각 태그는 사용자가 정의한 키와 값으로 구성됩니다. AWS는 태그를 메커니즘으로 사용하여 비용 할당 보고서에서 리소스 비용을 구성합니다. 예를 들어 EC2 인스턴스에 태그를 지정하면 다른 프로젝트, 부서 또는 소유자에 속하는 리소스를 식별 할 수 있습니다. 태그에는 조정, 분석 또는 내부 지불 거절 모델에 도움이되는 다른 정보도 포함될 수 있습니다.

Amazon CloudWatch

Amazon CloudWatch를 사용하면 EC2 인스턴스의 CPU 사용률, 데이터 전송 및 디스크 사용 활동에 대한 지표를 모니터링 할 수 있습니다. Amazon CloudWatch를 사용하여 Amazon DynamoDB 테이블, Amazon EBS 볼륨, Amazon RDS 데이터베이스 인스턴스, Amazon EMR 작업 흐름, Elastic Load Balancing로드 밸런서, Amazon SQS 대기열 및 Amazon SNS (Amazon Simple Notification Service) 주제의 지표를 모니터링 할 수 있습니다. 이러한 서비스를 사용하면 Amazon CloudWatch가 포함됩니다.

반면, 간단한 API 요청을 통해 애플리케이션에서 생성 한 다음 Amazon CloudWatch에서 모니터링하는 고유 한 사용자 지정 지표를 생성 할 수 있습니다. 이 지표는 AWS의 워크로드 성능을 이해하는 데 유용하므로 필요한 경우 리소스 할당을 조정할 수 있습니다.

기존 시스템 및 응용 프로그램의 로그 파일을 통합 할 수도 있습니다. 이러한 로그 파일은 거의 실시간으로 모니터링 할 수 있도록 Amazon CloudWatch Logs로 전송 될 수 있습니다.

Amazon CloudWatch 알람

Amazon CloudWatch 지표를 사용하여 사용량이 부족하거나 과도하게 사용되었음을 알리는 것이 도움이됩니다. 지표에 경보를 설정하면 알림을 보내거나 다른 작업을 수행하도록 서비스를 구성 할 수 있습니다 (예 : Auto Scaling을 사용하여 인스턴스 추가 또는 제거).

Amazon CloudWatch를 사용하여 예상 월별 AWS 요금을 직접 모니터링 할 수도 있습니다. Amazon CloudWatch는 사용중인 각 AWS 서비스에 대해 하루에 여러 번 예상 요금을 받습니다. 임계 값을 설정하고 충족하면 알림을 이메일로 보낼 수 있습니다. 예를 들어 EC2 사용량에 대해 월 임계 값을 $ 1,000로 설정하고 사용량이 해당 금액을 초과하면 Amazon SNS를 통해 이메일 알림이 수신됩니다.

각 AWS 계정은 한 달에 10 개의 Amazon CloudWatch 경보와 최대 1,000 개의 Amazon SNS 이메일 알림을 수신하여 AWS 사용량을 사전에 모니터링 할 수 있는 비용 효율적인 방법입니다.

비용 최적화 노력에 도움이 되는 또 다른 기능은 비용 계획 (또는 “데이터 소비”)을 돕기 위해 사용 예산을 설정하는 것입니다. 예산은 24 시간마다 업데이트됩니다. 그들은 당신의 혼합 비용과 구독을 추적하지만 환불하지 않습니다.

다양한 유형의 비용에 대해 예산을 작성할 수 있습니다 (예 : 서비스에 대한 지출 금액 또는 특정 API 오퍼레이션 호출 빈도 12). 예산에 Amazon CloudWatch 경보를 사용하여 Amazon SNS에서 경보를 트리거 할 수도 있습니다.

AWS 서비스 카탈로그

AWS 배포가 성숙 해짐에 따라 조직의 최종 사용자가 서비스를 탐색하고 시작하는 데 사용할 수 있는 개인화 된 셀프 서비스 포털 인 AWS Service Catalog를 활용할 수 있습니다. IT 관리자는 개발 팀과 협력하여 각 서비스에 대해 승인 된 AWS 구성을 시작하는 데 사용할 수 있는 Amazon CloudFormation 템플릿을 제공 할 수 있습니다.

비용 최적화 이점은 환경에서 정책에 지정된 매개 변수 (예 : 인스턴스 유형, 스토리지 유형 등)를 사용할 수 있다는 것입니다. 이 통제 된 접근 방식을 통해 최종 사용자가 사용할 수 있는 설계 선택 및 옵션을 기반으로 예산을 정의하고 비용을 예측할 수 있습니다. 기술 서비스 사용자와 협력하여 AWS 서비스 카탈로그에 포함 할 올바른 템플릿을 정의하면 불필요한 리소스가 시작되는 경우가 종종 있습니다.

AWS Config

AWS 배포 및 인프라를 추적하는 것은 비용 관리 및 환경의 아키텍처 및 비용 최적화를 위해 매우 중요합니다.

AWS 서비스를 여러 타사 구성 관리 도구와 통합 할 수 있지만 AWS 리소스 인벤토리, 구성 기록 및 구성 변경 알림을 제공하는 완전히 관리되는 서비스 인 AWS Config도 있습니다.

AWS Config 규칙은 특정 AWS 리소스 또는 전체 AWS 계정에 대한 원하는 구성 설정을 나타냅니다. 내부 규정 준수 정책 및 규정 표준을 충족하기 위해 AWS Config 규칙을 구현할 수 있습니다. 또한 인프라의 다른 리소스에 미치는 영향과 구성 변경 사항이 정의한 규칙을 준수하는지 여부를 평가할 수 있습니다.

비용 효율적인 리소스

워크로드에 적합한 솔루션을 선택하면 배포 비용이 절감됩니다. 예를 들어, 초기 벤치마킹을 완료 한 후 확실한 성능과 가격을 제공하는 인스턴스를 결정하십시오. 이 시점에서 예약 인스턴스 구매를 고려할 수 있습니다. 1 년 또는 3 년 약정은 해당 인스턴스에 대한 전체 운영 비용을 크게 줄입니다. Trusted Advisor와 같은 도구를 사용하면 예약 인스턴스 구매로 인한 월별 절감 효과를 신속하게 파악할 수 있습니다. Trusted Advisor는 EC2 인스턴스 활용률, 유휴로드 밸런서 및 Amazon RDS 데이터베이스 인스턴스, 활용률이 낮은 Amazon EBS 볼륨 및 관련없는 탄력적 IP 주소와 같은 일반적인 지표를 검사합니다. Trusted Advisor는 고객에게 260 만 건 이상의 사용 알림을 보냈습니다. 현재까지 Trusted Advisor는 고객이 3 억 5 천만 달러 이상을 절약 할 수 있도록 지원 한 것으로 추정됩니다.

세분화 된 접근법

AWS 요금을 통해 워크로드 당 리소스를 분류 할 수 있습니다. 실제 서버에서 호스팅 할 수있는 워크로드 구성 요소 수에 따라 프로젝트 시작시 일회성 구매로 더 이상 제약을받지 않습니다. 이제 각 애플리케이션의 서로 다른 요소를 분리하고 구성 요소에서 워크로드에 프로비저닝 된 리소스 수를 드릴 다운 할 수 있습니다. 진정한 비용 효율적인 배포는 설계 결정을 계속 검토하고 리소스 사용을 평가하는 배포입니다.

Amazon EMR 작업을 완료해야하는 애플리케이션을 고려하십시오. 벤치 마크 테스트에서 5 시간 내에 더 작은 인스턴스 유형에서 작업이 완료 될 수 있음을 알 수 있습니다. 더 큰 인스턴스 유형에서는 한 시간 만에 작업을 완료 할 수 있습니다.

더 큰 인스턴스는 시간당 가격의 두 배이지만, 더 적은 시간에 작업을 완료하므로 전체 운영 비용이 줄어 듭니다.

이 예에서는 스팟 인스턴스를 사용하여 운영 비용을 추가로 절감 할 수도 있습니다. 현재 시간당 요금보다 낮은 가격으로 입찰하면 훨씬 더 많은 비용을 절감 할 수 있습니다.

지출의 인식

AWS Config, Amazon CloudWatch, AWS OpsWorks, Auto Scaling 및 AWS CloudFormation과 같은 도구를 사용하면 리소스를 효율적으로 사용할 수 있지만 지속적인 평가, 벤치마킹 및 운영과의 통합주기를 통해 비용을 최적화 할 수 있습니다.

1. 초기 평가

어떤 프로젝트를 AWS로 마이그레이션 할 수 있습니까? 어떤 인스턴스 유형 및 스토리지 옵션이 프로젝트 요구 사항 및 예산을 충족합니까?

2. 벤치마킹

시스템이 제대로 작동합니까? 그렇지 않은 경우 아키텍처를 변경하십시오 (예 : 인스턴스 크기 조정, SSD 디바이스 선택 등).

3. 운영과 통합

기존 운영 프로세스를 AWS 솔루션으로 확장하거나 교체하십시오.

a. AWS OpsWorks, AWS CloudFormation 및 Auto Scaling을 사용하여 리소스 탄력성을 자동화하고 활성화하십시오.

b. 이 단계에서 스팟 인스턴스 또는 예약 인스턴스가 적절한 지 확인하십시오.

c. Amazon CloudWatch 경보 및 알림을 설정하여 지출에 대한 즉각적인 통찰력을 제공하고 필요한 경우 자동으로 수행 할 작업을 정의하십시오.

배포 규모가 커지고 AWS에서 프로젝트 및 서비스를 마이그레이션하거나 생성 할 때 AWS Config와 같은 도구를 사용하여 인식 수준을 높일 수 있습니다. AWS Simple Monthly Calculator를 사용하여 AWS 지출에 대한 실제 추정치를 얻을 수도 있습니다.

AWS 가격표 API

AWS Price List API를 사용하면 AWS 서비스 가격을 쿼리 할 수 있습니다. 서비스 가격이 변경 될 때 알림을 받도록 Amazon SNS 알림을 구독 할 수도 있습니다. AWS 요금은 주기적으로 변경됩니다 (예 : 새 인스턴스 유형이 시작되거나 새 서비스가 도입 된 경우).

자세한 청구 보고서

세부 청구 보고서에는 시간별 광고 항목이 포함되어있어 예를 들어 요구 사항을 충족 할 예약 인스턴스가 충분한 지 예측할 수 있습니다. 이 보고서는 통합 결제 기능과 함께 사용되어 예약 인스턴스와 관련된 비용 추적 및 관리를 단순화합니다.

Jeff Barr가 자신의 블로그 게시물에서 지적한 것처럼 자세한 보고서는 “RI 선호도 및 혼합되지 않은 요금의 두 가지 주요 기능이 있는 연결 계정에 대한 추가 할당 모델을 제공합니다.”자세한 내용은 블로그 게시물을 참조하십시오.

다음과 같은 방법으로 자세한 청구 보고서를 사용자 정의하여 예상 비용을 표시 할 수 있습니다.

· 시간, 일 또는 월

· 조직의 각 계정

· 제품 또는 제품 리소스

· 정의한 태그

AWS 리소스에 대한 태그를 생성하여 보고서의 거의 모든 광고 항목에 고유 한 레이블을 추가 할 수도 있습니다. 결제 보고서를 사용하여 다음 중 하나를 수행 할 수 있습니다.

· 데이터를 읽을 수있는 애플리케이션으로 청구 데이터를 가져 오십시오.

· 청구 데이터를 사용하는 애플리케이션을 빌드하십시오.

· 월별 청구 내역을 모니터링합니다.

· 월별 요금을 예측하십시오.

· 파트너와 데이터를 공유하십시오.

· 결제 데이터를 회계 시스템으로 가져옵니다.

· 여러 계정에 대한 청구서를 검색하십시오.

이 사용자 지정을 통해 조직에 유용한 보고서를 생성 할 수 있습니다. 이 데이터는 더 많은 분석,보고 및 예측을 위해 Amazon Redshift와 같은 데이터웨어 하우징 솔루션으로 수집 될 수 있습니다.

시간이 지남에 따라 최적화

초기 평가는 100 % 정확하지는 않지만 AWS 서비스의 고유 한 유연성으로 인해 초기 설계 선택에 구속되지 않습니다. 요구 사항은 시간이 지남에 따라 변경되므로 AWS 리소스를 지속적으로 재평가하고 모니터링하는 것이 중요합니다.

AWS는 또한 비용을 줄이고 전반적인 효율성을 높일 수있는 새로운 기능과 서비스를 출시 할 것입니다. 예를 들어, 저비용의 확장 가능한 데이터웨어 하우징 솔루션 인 Amazon Redshift는 데이터웨어 하우징에 들어가는 비용을 절감했습니다. Amazon Aurora는 완벽하게 관리되는 MySQL 호환 관계형 데이터베이스 엔진으로, 고급 상용 데이터베이스의 속도와 안정성을 오픈 소스 데이터베이스의 단순성과 비용 효율성과 결합합니다.

결론

비용 최적화는 지속적인 노력입니다. 파일럿 또는 테스트 워크로드의 첫 번째 평가에서 성숙한 AWS 인프라에 이르기까지 관리자는 아키텍처 접근 방식을 재평가하고 테스트해야 합니다. 이 백서에서 설명한 프로그래밍 기능 및 액세스와 AWS 기능 및 서비스 덕분에 이러한 노력이 쉬워졌습니다.

AWS는 효율성이 뛰어나고 응답 성이 뛰어나며 적응성이 뛰어난 배포를 구축하는 동시에 효율성을 극대화하도록 노력합니다. 배포를 진정으로 비용 최적화하려면 이 백서에서 설명하는 많은 도구와 기술을 사용해야합니다.

AWS는 IT 인프라 비용을 절감하고 기업의 핵심가치에 더욱 집중할 수 있도록 합니다.

AWS에 대한 자세한 문의사항은 여기를 눌러 주세요.

빌드업웍스는 AWS 컨설팅 파트너로 고객 비즈니스를 최우선으로 하며 고객의 클라우드의 성공적인 시작과 운영을 지원합니다.

--

--

빌드업웍스
빌드업웍스

Written by 빌드업웍스

클라우드 교육, 구축, 운영, 관리, 컨설팅 및 교육 리소스 디지털 퍼블리싱 : AWS 파트너, 유데미 파트너| buw.co.kr | admin@buw.co.kr | 053–954–3711

No responses yet