Bird
Raised Fist0
AWScloud~30 mins

Cost optimization pillar in AWS - Mini Project: Build & Apply

Choose your learning style10 modes available
Cost Optimization Pillar in AWS
📖 Scenario: You are working as a cloud architect for a small company. Your task is to set up a simple AWS infrastructure that follows the cost optimization pillar best practices. This means you will create resources that are efficient and avoid unnecessary expenses.
🎯 Goal: Build a basic AWS infrastructure using AWS CloudFormation that includes a cost-effective EC2 instance and an S3 bucket with lifecycle rules to reduce storage costs.
📋 What You'll Learn
Create a CloudFormation template with a minimal EC2 instance using a t3.micro instance type
Add an S3 bucket with a lifecycle rule to transition objects to cheaper storage after 30 days
Use parameters to allow easy adjustment of instance type and lifecycle days
Ensure the template follows AWS best practices for cost optimization
💡 Why This Matters
🌍 Real World
Companies use cost optimization to reduce their cloud bills while maintaining performance and reliability.
💼 Career
Cloud architects and engineers must design infrastructure that balances cost and functionality to meet business goals.
Progress0 / 4 steps
1
Create the basic CloudFormation template structure
Create a CloudFormation template with the root keys AWSTemplateFormatVersion set to '2010-09-09' and Description set to 'Cost optimization example template'. Also, add an empty Resources section.
AWS
Hint

Start with the basic keys of a CloudFormation template: version, description, and resources.

2
Add parameters for instance type and lifecycle days
Add a Parameters section with two parameters: InstanceType of type String with default t3.micro, and LifecycleDays of type Number with default 30.
AWS
Hint

Parameters allow you to customize the template without changing the code.

3
Add a cost-effective EC2 instance resource
Add a resource named MyEC2Instance of type AWS::EC2::Instance with the property InstanceType set to { Ref: 'InstanceType' } and ImageId set to ami-0c02fb55956c7d316 (Amazon Linux 2 in us-east-1).
AWS
Hint

Use the parameter InstanceType to set the EC2 instance type for cost savings.

4
Add an S3 bucket with lifecycle rule for cost savings
Add a resource named MyS3Bucket of type AWS::S3::Bucket with a LifecycleConfiguration that transitions objects to STANDARD_IA storage class after { Ref: 'LifecycleDays' } days.
AWS
Hint

Use lifecycle rules to move data to cheaper storage after a set number of days.

Practice

(1/5)
1. Which AWS tool helps you understand and analyze your cloud spending over time?
easy
A. EC2 Dashboard
B. CloudTrail
C. Cost Explorer
D. IAM

Solution

  1. Step 1: Identify AWS tools for cost management

    Cost Explorer is designed to analyze and visualize AWS spending over time.
  2. Step 2: Compare other tools' purposes

    CloudTrail tracks API calls, EC2 Dashboard manages instances, IAM manages access, none focus on cost analysis.
  3. Final Answer:

    Cost Explorer -> Option C
  4. Quick Check:

    Cost analysis tool = Cost Explorer [OK]
Hint: Cost Explorer = spending analysis tool [OK]
Common Mistakes:
  • Confusing CloudTrail with cost tool
  • Thinking EC2 Dashboard shows costs
  • Mixing IAM with billing
2. Which of the following is the correct AWS pricing option to save costs for steady-state workloads?
easy
A. On-Demand Instances
B. Reserved Instances
C. Spot Instances
D. Dedicated Hosts

Solution

  1. Step 1: Understand pricing options

    Reserved Instances offer a discount for long-term, steady workloads by committing to usage.
  2. Step 2: Compare other options

    On-Demand is pay-as-you-go, Spot is for interruptible workloads, Dedicated Hosts are costly physical servers.
  3. Final Answer:

    Reserved Instances -> Option B
  4. Quick Check:

    Steady workload savings = Reserved Instances [OK]
Hint: Reserved = save on steady workloads [OK]
Common Mistakes:
  • Choosing On-Demand for savings
  • Using Spot for steady workloads
  • Confusing Dedicated Hosts with cost-saving
3. Consider this AWS Lambda function usage pattern: it runs 1000 times per day, each execution lasts 1 second, and uses 128 MB memory. Which change will reduce cost the most?
medium
A. Increase memory to 512 MB to reduce execution time
B. Decrease memory to 64 MB to save memory cost
C. Increase execution time to batch more work per run
D. Keep memory at 128 MB and reduce execution time by optimizing code

Solution

  1. Step 1: Understand Lambda cost factors

    Cost depends on memory size and execution duration multiplied by invocations.
  2. Step 2: Evaluate options

    Increasing memory may reduce time but might increase cost; decreasing memory may increase time; optimizing code reduces time without increasing memory.
  3. Final Answer:

    Keep memory at 128 MB and reduce execution time by optimizing code -> Option D
  4. Quick Check:

    Optimize code to reduce time = save cost [OK]
Hint: Lower execution time saves more than just lowering memory [OK]
Common Mistakes:
  • Assuming more memory always saves cost
  • Reducing memory without checking time
  • Increasing execution time to batch
4. You notice your AWS Trusted Advisor reports underutilized EC2 instances. What is the best immediate action to optimize cost?
medium
A. Resize instances to smaller types matching usage
B. Terminate the underutilized instances immediately
C. Ignore the report as it might be inaccurate
D. Switch all instances to Dedicated Hosts

Solution

  1. Step 1: Understand Trusted Advisor recommendations

    It flags underutilized instances to help reduce waste by resizing or terminating.
  2. Step 2: Choose best cost optimization action

    Resizing to smaller instances keeps service running but reduces cost; terminating immediately may disrupt service; ignoring wastes money; Dedicated Hosts are expensive.
  3. Final Answer:

    Resize instances to smaller types matching usage -> Option A
  4. Quick Check:

    Resize underutilized = save cost safely [OK]
Hint: Resize before terminating to avoid downtime [OK]
Common Mistakes:
  • Terminating without backup
  • Ignoring Trusted Advisor
  • Switching to costly Dedicated Hosts
5. A company wants to reduce AWS costs by automating resource scaling and tracking spending. Which combination of AWS services best supports this goal?
hard
A. AWS Auto Scaling + AWS Budgets + AWS Cost Explorer
B. AWS CloudTrail + AWS Config + AWS IAM
C. AWS Lambda + Amazon S3 + Amazon RDS
D. Amazon EC2 + AWS Trusted Advisor + AWS CloudWatch Logs

Solution

  1. Step 1: Identify services for automated scaling

    AWS Auto Scaling automatically adjusts resource capacity based on demand.
  2. Step 2: Identify services for cost tracking

    AWS Budgets sets spending limits and alerts; Cost Explorer analyzes spending patterns.
  3. Step 3: Evaluate other options

    CloudTrail and Config track changes and security, not cost; Lambda, S3, RDS are compute/storage services; Trusted Advisor gives recommendations but not automation; CloudWatch Logs monitor logs.
  4. Final Answer:

    AWS Auto Scaling + AWS Budgets + AWS Cost Explorer -> Option A
  5. Quick Check:

    Auto scale + budgets + cost explorer = cost optimization [OK]
Hint: Auto Scaling + Budgets + Cost Explorer = automate cost control [OK]
Common Mistakes:
  • Confusing CloudTrail with cost tools
  • Choosing unrelated services
  • Ignoring automation tools
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard