◇ 공부 기록용으로 작성하였으니 틀린점, 피드백 주시면 감사하겠습니다 ◇
AWS의 기본적인 요금 정책
AWS Pricing Concepts
AWS 요금 정책에는 3가지 기본적인 개념이 있다.
하지만 AWS는 200개가 넘는 서비스가 있기 때문에 모든게 같은 방식은 아니다.
Pay for what you use.
기본적으로 AWS 서비스를 사용하면, 사용한 만큼만 지불 Pay-as-You-Go (PAYG) 하면 된다.
긴 계약이나 라이선스에 관한 것들은 필요없다.
Pay less when you reserve.
일정 종류의 AWS 서비스는 길게 예약하면 저렴하게 이용할 수 있다.
예를 들면, EC2 인스턴스 사용을 길게 예약하면 (On-Demand Instance와 비교해서) 72퍼센트까지 저렴하게 구매할 수 있다.
Pay less with volume-based discounts when you use more.
일정 종류의 AWS 서비스는 많이 구매하면 디스카운트를 받을 수 있다.
예를 들면, S3 스토리지를 많이 사용하면, GB당 사용량이 더 저렴해진다.
AWS 비용에 관한 서비스들
몇 가지 중요한 AWS 요금 관리 서비스와 도구는 다음과 같다
🛠️Pricing Calculator: 예상 비용
AWS 웹 사이트에서 제공되는 계산 도구로, 서비스 사용에 따른 예상 비용(Estimate)을 계산할 수 있다.
비용 예상 & 견적
AWS Pricing Calculator 웹사이트: https://calculator.aws/#/
🛠️Cost Explorer: 비용 시각화 / 예측
AWS Cost Explorer는 AWS 리소스의 사용량과 비용을 그래프로 시각화하고, 데이터를 분석할 수 있는 서비스이다.
예를 들어, EC2나 RDS 같은 서비스별로 사용 현황과 비용을 자세히 분석하고, 시간 흐름에 따른 사용량 변화를 분석하거나, 비용 증가의 원인을 파악하는 그래프를 작성할 수 있다.
■ 시각화 및 분석
- 최대 과거 13개월간의 비용 데이터를 그래프로 확인할 수 있다.
- 향후 12개월 동안 지출할 것으로 예상되는 금액을 예측할 수 있다.
- 구매할 예약 인스턴스에 대한 추천을 받을 수 있다.
- Cost Explorer를 사용하여 자신의 요구에 맞게 비용에 관한 보고서를 생성할 수 있다.
예시) 6개월 간의 EC2 인스턴스
🛠️Budgets: 예산 초과시 경고
AWS 사용량에 대한 예산을 설정하고 추적하는 서비스로, 예산을 초과할 경우 경고를 받을 수 있다.
(예산을 초과하지 않도록 하는 서비스)
AWS Budgets는 비용과 사용량을 모니터링하고, 설정한 금액이나 사용량 임계값에 근접하거나 초과할 경우 알림이나 액션을 실행하는 서비스이다.
알림은 이메일이나 SNS 외에도 Slack과 같은 채팅 앱에서 받을 수 있다.
또한, 임계값을 초과했을 때의 액션으로 특정 EC2 인스턴스, RDS 인스턴스의 중지 설정 등이 가능하며, 이를 통해 추가적인 비용 발생을 억제할 수 있다. → AWS Budget Actions
AWS Budgets 예산을 넘으면 자동으로 어떤 AWS 리소스든지 종료시킬 수 있는가??
AWS Budgets의 Budget Actions 기능은 모든 리소스를 중지할 수 있는 것은 아니다.
현재 지원되는 주요 리소스는 EC2 인스턴스와 RDS 인스턴스이다.
다른 리소스들, 예를 들어 Lambda 함수나 S3 버킷 같은 서비스는 직접적으로 중지하는 옵션을 제공하지 않는다.
Budgets은 비용 예산을 설정하고 예산을 초과할 경우 알림을 보내는 기능에 중점을 두고 있다.
🛠️Organizations: AWS 계정들 비용을 한꺼번에 관리
만약 하나의 회사가 여러개의 AWS 계정을 가지고 있다면
→ AWS Organizations를 통해서 모든 계정 관리해라
AWS Organizations는 여러 AWS 계정을 관리하고 중앙에서 비용 및 리소스를 조직화할 수 있는 서비스이다.
Consolidated Billing
여러 AWS 계정을 한꺼번에 청구서에 포함하여 통합 청구를 수행할 수 있다.
이를 통해 전체 비용을 한 곳에서 관리할 수 있습니다. 게다가 AWS를 많이 사용했을 경우 할인을 받을 수도 있다.
(많이 사용하면 사용량에서 감가가 있는데 계정 따로 따로 관리하면 많이 사용했는지 AWS 측에서 모르기 때문에, Consolidated Billing를 사용하면 사용량이 많다는 것을 AWS측이 알기에 감가가 적용된다.)
🛠️Trusted Advisor: 전문가 Best Practice을 제공
AWS측에서 제공하는 비용 최적화 및 보안에 관한 권장 사항을 제공하는 자동화된 도구.
참고 자료: https://jibinary.tistory.com/132
🔧Cost Allocation Tags: 태그별로 비용 관리
Cost allocation tags는 AWS 리소스에 부여되는 사용자 정의 태그로, 태그 별로 비용을 분별할 수 있다.
태그를 통해 리소스 사용에 대한 비용을 추적하고 관리할 수 있다.
사용 예시) 같은 리소스여도 그룹을 나누어 용도에 따라 비용을 식별할 수 있다.
"프로젝트", "부서", "환경"과 같은 태그를 리소스에 추가하여 AWS Cost Explorer 및 기타 비용 관리 도구를 통해 해당 태그를 기반으로 비용을 분석할 수 있다.
참고 자료: https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html
🔧Cost and Usage Reports: 비용에 관한 보고서(csv파일) 생성 도구
AWS Cost and Usage Reports는 AWS 계정의 비용 및 사용 데이터에 대한 상세한 보고서를 생성하는 서비스이다.
이 보고서를 통해 AWS 리소스의 사용량, 현재 비용, 예산(예상 비용)과 같은 디테일한 정보를 확인 할 수 있다
보고서 데이터는 CSV 형식으로 Amazon S3 버킷에 저장되며, Amazon Athena와 같은 데이터 분석 도구를 사용하여 더욱 세밀한 분석을 진행할 수 있다.
보고서는 CSV, Parquet, ORC와 같은 다양한 형식으로 다운로드할 수 있다.
🔧TCO Calculator: 온프레미스나 다른 클라우드와 비용 비교
TCO (Total Cost of Ownership)
TCO Calculator는 AWS의 비용을 온프레미스(On-premise) 인프라 또는 다른 클라우드 제공자와 비교하여 요금을 추정하는 도구이다.
이 도구를 사용하면 AWS로의 이전에 따른 전체 소유 비용을 예측할 수 있다.
비용 비교: 기존 온프레미스 인프라와 AWS 간의 비용 차이를 비교할 수 있다.
🤔 SAA-C03 문제
어떤 기업은 Organizations를 사용하여 여러 AWS 계정에서 다양한 애플리케이션을 운영하고 있습니다. 관리 부서는 예산 관리를 위해 RDS 비용을 각 프로젝트별로 파악해야 하며, 비용 할당 태그를 사용할 예정입니다. 관리 부서는 Cost Explorer를 사용하여 모든 AWS 계정의 비용 보고서에 접근할 수 있는 권한을 가지고 있습니다. 또한 태그 정책에 따라 리소스가 생성될 때 반드시 Project 태그가 부여되도록 되어 있으며, 통일된 태그 형식이 유지되고 있다고 가정합니다. 가장 효율적인 방법으로 이 요구사항을 충족하는 솔루션은 무엇일까요?
- Organizations의 관리 계정에서 사용자 정의 비용 할당 태그(Project)를 활성화합니다. Cost Explorer를 사용하여 Project 태그로 그룹화하고, RDS로 필터링된 보고서를 작성합니다.
- Organizations의 관리 계정에서 사용자 정의 비용 할당 태그(Project)를 활성화합니다. Cost Explorer를 사용하여 Project 태그로 그룹화하고, RDS를 리소스 ID별로 필터링하여 보고서를 작성합니다.
- Organizations의 관리 계정의 Budgets 콘솔에서 사용자 정의 비용 할당 태그(Project)를 활성화합니다. Cost Explorer를 사용하여 Project 태그로 그룹화하고, RDS를 리소스 ID별로 필터링하여 보고서를 작성합니다.
- 조직 내 각 프로젝트의 OU에서 AWS 정의 비용 할당 태그(Project)를 활성화합니다. Cost Explorer를 사용하여 Project 태그로 그룹화하고, RDS로 필터링된 보고서를 작성합니다.
정답
정답. 1번
Organizations의 관리 계정에서 사용자 정의 비용 할당 태그(Project)를 활성화합니다. Cost Explorer를 사용하여 Project 태그로 그룹화하고, RDS로 필터링된 보고서를 작성합니다.
[Cost AllocationTag]
Cost AllocationTag는 AWS 리소스의 비용 관리와 추적을 효율화하기 위한 기능이다.
Tag는 Key와 Value으로 구성되며, 리소스에 Tag를 지정함으로써 비용을 프로젝트, 부서, 팀, 환경(개발, 테스트, 본 프로덕션) 등의 카테고리로 분류할 수 있다.
또한 AWS Cost Explorer에서 태그별 비용 보고서를 생성할 수 있어 상세한 비용 분석이 가능하다.
[AWS Organizations + Cost Allocation Tag]
AWS Organizations 사용 시에 Cost Allocation Tag 설정하는 절차이다.
[태그의 설정 및 관리]
AWS 리소스(예: RDS 인스턴스나 EC2 인스턴스 등)를 생성할 때, Key와 Value의 쌍으로 태그를 설정한다.
예를 들어, key를 "Project", value을 "ProjectA"로 설정하는 태그를 추가한다.
이러한 방식으로 사용자가 직접 생성한 태그를 "사용자 정의 태그"라고 부른다.
또한, AWS Organizations의 관리 계정에서 태그 정책을 설정하여 리소스 생성 시 특정 태그를 강제 적용하는 등, 회사 전체에서 일관된 태그 지정을 할 수 있습니다.
[Cost Allocation Tag 활성화]
AWS Organizations 관리 계정의 Billing and Cost Management 콘솔에서 사용할 태그(예: "Project" 태그)를 활성화한다. 이렇게 하면 활성화된 태그가 Cost Explorer의 비용 보고서에 포함된다.
[태그별 비용 분석]
Cost Explorer에서 새 보고서를 생성한다.
"Group by" 옵션에서 "Tag"를 선택하고, 활성화한 태그(예: "Project" 태그)를 선택한다.
필요에 따라 특정 서비스(예: Amazon RDS)로 필터링한다.
이를 통해 태그별 비용을 시각화하고 분석할 수 있다.