The Cost Optimization Pillar (비용 최적화 원칙)
AWS Certified Solutions Architect Study Guide - Associate (SAA-C02) EXAM 요약
개요
비용 최적화 원칙 (cost optimization pillar) 은 가장 비용효율적으로 리소스를 배포하며, 관리 절차와 관련이 있다.
비용 계획, 추적, 제어
AWS 비용 모니터링 및 제어 도구는 지난 수년간 지속적으로 개선되어 왔다.
비용 발생 원인이 되는 리소스가 무엇인지, 이들을 어떤 방식으로 추적할 수 있는지 알아보자.
AWS Budgets
설정한 S3 버킷에 비용 청구 보고서를 전송하도록 할 수 있다.
청구 관련 경고 메시지를 Amazon CloudWatch Alarms, SNS 를 이용해 전송할 수 있다.
예산
예산 (budgets) 은 실행 중인 리소스와 관련된 사용량 및 비용을 추적한다.
미리 설정한 기준선을 넘는 사용량에 대해 경고 메시지를 전송한다.
비용 할당 태그
Cost Allocation Tag 를 사용하면 리소스를 비용 그룹별로 묶어서 표시할 수 있다.
비용 태그가 적용되기까지는 최대 24시간이 소요될 수 있고, 태그 생성 이전에 런칭된 리소스에는 적용할 수 없다.
비용 모니터링 도구
리소스 스택이 크고 복잡해질 때를 대비해서 지출 패턴을 좀 더 자세히 살펴볼 수 있다.
Cost Explorer
일정 기간 동안의 AWS 사용량 및 비용 그래프
CSV 파일로 다운로드를 지원하며, RI (Reverse Instance) 에 대한 내역이 포함된 보고서를 확인할 수 있다.
AWS Cost and Usage Reports
비용 및 사용량 보고서는 Cost Explorer와 비슷한 기능을 제공한다.
보고서 생성 과정에서 제공되는 전송 옵션 (dilivery) 을 통해 Athena, Redshift, QuickSight 와 통합해서 사용할 수 있다.
AWS Organizations
기업 조직으로서 다수의 AWS 계정을 통합적으로 관리하도록 한다.
- 개발자에게 AWS Single Sign-on 기능을 통해 전역 권한 및 리소스 공유 가능
- Service Control Policies 를 통해 전역 요소에 IAM 룰 적용 가능
- 프로그래밍 기법으로 계정, 유저, 그룹 등 관리 가능
- 기업 규정 준수를 위한 모니터링 가능
AWS Trusted Advisor
AWS 베스트 프랙티스와 현재 설정을 다음 다섯 가지로 비교해 준다.
- Cost Optimization
- 활성화 수준이 낮거나 대기 상태의 리소스
- Performance
- 부적절한 설정 요소 (EBS의 볼륨 사용량이 과도 등)
- Security
- 잠재적인 설정 문제 (퍼블릭으로 설정된 S3 등)
- Fault Tolerance
- 적절한 수준의 복제 및 중복 구현에 대한 정보
- Service Limits
- 기본 사용량 제한 조건에 근접 여부
대부분의 기능은 유료로서 Business 플랜 또는 Enterprise 플랜부터 사용이 가능하다.
온라인 비용 계산기
Simple Monthly Calculator
매우 세분화된 서비스 리소스 계산기
AWS TCO Calculator (Pricing Calculator)
TCO (Total Cost of Ownership) 계산기이다.
온프레미스의 비용과 AWS 클라우드의 비용을 비교할 수 있다.
비용 최적화 컴퓨트 전략
가상화 혁명 이후 서버의 밀도 (server density) 는 크게 높아졌다.
따라서 '서버당 생산성 향상' 보다는, '투자 대비 더 높은 가치 확보' 의 측면이 중요해졌다.
서버 밀도 최대화
EC2 기반 인스턴스나 RDS 기반 데이터베이스 운영 시 인스턴스 성능을 최대로 끌어올리는 '밀도 최대화' 가 중요하다.
워크로드에 맞는 인스턴스를 선택하는 일이 가장 중요하다.
Lambda 같은 서버리스 모델 또한 서버 밀도 향상에 도움을 준다.
Docker 같은 컨테이너 기술, Amazon ECS, EKS 등에서 사용하는 컨테이너 기술 또한 도움을 준다.
EC2 예약 인스턴스
기간 약정을 이용해서 EC2 예약 인스턴스 (reserved instances) 를 구매하면 비용을 아낄 수 있다.
전통적인 예약 인스턴스의 사용
예약 인스턴스 구매를 위해 다음 설정을 진행한다.
- 테넌시 타입
- 인스턴스 타입
- 플랫폼 타입
전환 예약 인스턴스 (Convertible RI) 는 추후 성능이 더 우수한 인스턴스로 교체할 수 있는 옵션을 제공한다.
단일 AZ로 선택해 비용을 아끼거나, 리전 내 어떤 AZ에서도 인스턴스 실행이 가능하도록 옵션 추가가 가능하다.
Scheduled Instances 는 반복적인 일정 계획에 따른 예약 인스턴스 런칭을 의미한다.
결제 옵션은 전체 선결제, 부분 선결제, 선결제 없음 세 가지로 구성된다.
Savings Plans 사용
1~3년간 동일한 수준의 서비스를 사용하는 계약을 맺는다는 측면에서는 기존 RI 와 유사하다.
- Compute Savings Plans
- 온디맨드 대비 66% 저렴한 비용으로 EMR, ECS, EKS, Fargate 워크로드 처리가 가능하다.
- 다른 AWS 리전에서 실행되는 리소스로 변경이 가능하다.
- EC2 Instance Plans
- 온디맨드 대비 72% 저렴한 비용으로 인스턴스 사용이 가능하다.
- 단일 AWS 리전 내에서만 리소스를 변경할 수 있다.
EC2 스팟 인스턴스
- Spot Price
- 인스턴스 속성에 따른 현재 스팟 인스턴스의 가격
- Spot Instance Interruption
- 스팟 가격이 설정한 최대 가격보다 높을 경우, 다음 세 방식으로 반응할 수 있다.
- 폐기 Terminate, 중지 Stop (EBS 지원 AMI일 경우), 휴면 Hibernate
- Spot Instance Pool
- 특정 런칭 속성을 갖춘, 미사용 EC2 인스턴스
- Spot Fleet 은 이 풀의 일부를 이용해 구성된다.
- Spot Fleet
- 스팟 플릿 요청에 부합하는 스팟 인스턴스 그룹
- 때로는 온디맨드 인스턴스도 포함된다
- Request Type
- Request Spot Instances 페이지에서 요청 설정 시, 다음 설정을 사용 가능하다.
- Request : 일회성
- Request And Maintain : 플릿을 이용해 목표 용량을 유지
- Request For Duration : 1~6시간동안 간섭받지 않고 사용
Auto Scaling
Auto Scaling을 이용하여 수요 감소 시 즉각적으로 리소스를 제거하는 것이 효과적인 비용 절감 방법이다.
EBS Lifecycle Manager
EC2 인스턴스에 부착된 EBS 볼륨은 스냅샷을 이용해 데이터가 복제되어 안전하게 보호된다.
다만, 구 버전의 스냅샷을 삭제하기 위해서 Lifecycle Manager 를 이용해 절차를 자동화하고 설정을 변경할 수 있다.
코멘트
클라우드 계정을 나도 모르게 해킹당해서 몇백 몇천의 청구서가 날라왔더라 하는 일을 종종 접할 수 있는 시대가 되었다.
해킹이 아니라 직접 설계한 결함있는 아키텍쳐가 피눈물나는 청구서를 가져다줄 수도 있는 노릇. 어찌 보면 제일 중요한 파트 중 하나일지도..
'공부한 이야기 > 클라우드' 카테고리의 다른 글
AWS SAA - Marked Questions I (0) | 2022.07.31 |
---|---|
AWS SAA - The Operational Excellence Pillar (운영 우수성 원칙) (0) | 2022.07.31 |
AWS SAA - The Security Pillar (보안성 원칙) (0) | 2022.07.29 |
AWS SAA - The Performance Efficiency Pillar (성능 효율성 원칙) (0) | 2022.07.28 |
AWS SAA - The Reliability Pillar (안정성 원칙) (0) | 2022.07.27 |