Skip to main content

Getting Started with AWS Tuner

This guide walks you through onboarding AWS Tuner, from initial account setup to implementing your first cost optimizations.


Table of Contentsโ€‹

  1. Prerequisites
  2. Account Onboarding
  3. Initial Discovery & Analysis
  4. Understanding Recommendations
  5. Implementing Your First Optimizations
  6. Setting Up Scheduler
  7. Browser Extension Installation
  8. Best Practices

Prerequisitesโ€‹

Access Requirementsโ€‹

  • CloudKeeper Account: Active CloudKeeper platform account
  • AWS Account Access: AWS accounts to be optimized
  • IAM Permissions: Ability to create IAM roles in target AWS accounts
  • User Role: Minimum role of "Tuner User" in CloudKeeper platform

Technical Requirementsโ€‹

  • Browser: Chrome, Firefox, Edge, or Safari (latest version)
  • Network Access: HTTPS connectivity to CloudKeeper platform
  • AWS Console Access: For implementing recommendations
  • Basic AWS service familiarity (EC2, RDS, S3)
  • Understanding of AWS pricing models (On-Demand, Reserved, Spot)
  • AWS IAM role and policy concepts

Account Onboardingโ€‹

Step 1: Access AWS Tunerโ€‹

  1. Log in to CloudKeeper platform at https://app.cloudkeeper.com
  2. Click "Switch to Tuner" in the left navigation
  3. You'll be redirected to the Tuner dashboard

Tuner Dashboard

Option A: CloudFormation StackSet (Recommended for Multiple Accounts)

# 1. Download CloudFormation template
wget https://cloudkeeper-public.s3.amazonaws.com/tuner/cloudkeeper-tuner-role.yaml

# 2. Create stack in AWS CloudFormation
aws cloudformation create-stack \
--stack-name CloudKeeperTunerRole \
--template-body file://cloudkeeper-tuner-role.yaml \
--parameters \
ParameterKey=ExternalId,ParameterValue=YOUR_EXTERNAL_ID \
ParameterKey=CloudKeeperAccountId,ParameterValue=123456789012 \
--capabilities CAPABILITY_NAMED_IAM

Option B: Manual IAM Role Creation

  1. Navigate to Tuner โ†’ Accounts โ†’ Link Account
  2. Click "Generate IAM Policy"
  3. Copy the generated IAM policy JSON
  4. In AWS Console โ†’ IAM โ†’ Roles โ†’ Create Role
  5. Select "Another AWS Account"
  6. Enter CloudKeeper Account ID: 123456789012
  7. Check "Require external ID" and enter your unique External ID
  8. Attach the generated policy
  9. Name role: CloudKeeperTunerRole
  10. Copy the Role ARN back to CloudKeeper Tuner

IAM Policy (Read-Only):

{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"ec2:Describe*",
"rds:Describe*",
"cloudwatch:GetMetricStatistics",
"cloudwatch:ListMetrics",
"pricing:GetProducts",
"ce:GetCostAndUsage",
"s3:ListBucket",
"s3:GetBucketLocation",
"dynamodb:DescribeTable",
"dynamodb:ListTables",
"redshift:Describe*",
"elasticache:Describe*",
"autoscaling:Describe*"
],
"Resource": "*"
}
]
}

Step 3: Verify Accessโ€‹

  1. Click "Verify Access" in Tuner
  2. Tuner will test IAM role assumption
  3. Wait for green checkmark: โœ… "Account linked successfully"
  4. Initial resource discovery begins automatically

Troubleshooting:

ErrorCauseSolution
"AssumeRole failed"External ID mismatchVerify External ID matches exactly
"Access Denied"Insufficient permissionsReview IAM policy, ensure all actions allowed
"Role not found"Role ARN incorrectDouble-check Role ARN, ensure role exists

Initial Discovery & Analysisโ€‹

What Happens After Onboarding?โ€‹

Timeline:

Hour 0:    Account linked successfully
Hour 1: Resource metadata sync begins (EC2, RDS, S3, etc.)
Hour 4-6: CloudWatch metrics collection starts
Hour 24: First recommendations available
Hour 48: Full analysis complete (30-day lookback)

Monitoring Discovery Progressโ€‹

Navigate to Tuner โ†’ Accounts โ†’ [Your Account] โ†’ Discovery Status:

โœ… EC2 Instances:        456 resources discovered
โœ… RDS Databases: 23 resources discovered
โณ CloudWatch Metrics: Collecting (78% complete)
โœ… EBS Volumes: 1,234 volumes discovered
โœ… EBS Snapshots: 8,765 snapshots discovered
โณ S3 Buckets: Analyzing (45% complete)
โœ… NAT Gateways: 12 gateways discovered
โœ… VPC Endpoints: 34 endpoints discovered

First Look at Your Environmentโ€‹

After 24 hours, check Tuner โ†’ Recommendations:

Recommendations Dashboard

What You'll See:

Total Potential Savings: $XX,XXX/month

Category Breakdown:
โ”œโ”€ Cleaner: $XX,XXX/month (remove unused resources)
โ”œโ”€ OverProvisioned: $XX,XXX/month (rightsize over-allocated)
โ”œโ”€ Modernization: $XX,XXX/month (upgrade services)
โ””โ”€ Potential Benefits: $XX,XXX/month (RIs & Savings Plans)

Understanding Recommendationsโ€‹

Recommendation Anatomyโ€‹

Each recommendation contains:

  1. Category: Cleaner, OverProvisioned, Modernization, or Potential Benefits
  2. Resource Details: Instance ID, name, region, account
  3. Current State: Current configuration and cost
  4. Recommended Action: Specific change to implement
  5. Cost Impact: Monthly and annual savings
  6. Risk Level: Low, Medium, or High
  7. Metadata: Utilization metrics, sizing details

Example Recommendation:

โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”
๐Ÿ“‹ EC2 Instance Rightsizing

Resource ID: i-0abcd1234efgh5678
Resource Name: api-server-prod-3
Region: us-east-1
Account: Production (123456789012)

Category: OverProvisioned
Risk Level: Medium

โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”
Current Configuration:
Instance Type: m5.2xlarge
CPU: 8 vCPUs
Memory: 32 GB
Cost/Hour: $0.384
Cost/Month: $280.32

Utilization (30-day average):
CPU: 12% (max: 18%)
Memory: 25% (max: 32%)
Network: Low

โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”
Recommended Configuration:
Instance Type: m5.large
CPU: 2 vCPUs
Memory: 8 GB
Cost/Hour: $0.096
Cost/Month: $70.08

Savings:
Monthly: $210.24 (75% reduction)
Annual: $2,522.88

โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”
Action Required:
1. Test m5.large in staging environment
2. Monitor performance for 1 week
3. If acceptable, apply to production
4. Schedule change during maintenance window

Recommended By: Drools Rule Engine (oper_provisioned_ec2_instance_rules.drl)
Confidence: High (based on 30 days data)
โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”

Prioritizing Recommendationsโ€‹

Priority Matrix:

PriorityCriteriaTypical SavingsRisk
P0 - Critical> $5K/month, Low risk$5K-$50KLow
P1 - High> $1K/month, Low-Medium risk$1K-$5KLow-Medium
P2 - Medium> $100/month, Any risk$100-$1KVaries
P3 - Low< $100/month< $100Low

Recommended Approach:

  1. Week 1: Implement all P0 cleaner recommendations (low-risk wins)
  2. Week 2-3: Test P1 rightsizing recommendations in non-prod
  3. Week 4: Implement P1 rightsizing in production with monitoring
  4. Month 2: Address P2 and modernization recommendations

Implementing Your First Optimizationsโ€‹

Quick Win: EBS Snapshot Cleanupโ€‹

Goal: Remove orphaned EBS snapshots to save $5K-$15K/month

Navigate to Tuner โ†’ Recommendations โ†’ Cleaner:

Cleaner Recommendations

Step-by-Step:

  1. Review Recommendations:

    • Click "EBS Snapshots" tile
    • Review list of snapshots recommended for deletion
    • Filter by age: "Older than 90 days"
  2. Validate Safety:

    # For each snapshot, verify no attached volumes
    aws ec2 describe-snapshots --snapshot-ids snap-0abcd1234 \
    --query 'Snapshots[0].VolumeId'

    # If Volume is deleted, snapshot is safe to remove
  3. Implement (Choose one):

    Option A: Automated Remediation (Recommended)

    • Check snapshots to delete
    • Click "Auto Remediate"
    • Confirm deletion
    • Tuner deletes snapshots automatically

    Option B: Manual Deletion

    • Export snapshot IDs to CSV
    • Use AWS CLI or Console to delete
    • Mark as "Implemented" in Tuner
  4. Monitor Results:

    • Savings appear in next month's bill
    • Tuner tracks realized savings vs. projected

Expected Results:

  • Time to Implement: 30 minutes - 2 hours
  • Monthly Savings: $5K-$15K (typical)
  • Risk: Very Low (only deletes unattached snapshots)

Medium Impact: EC2 Rightsizingโ€‹

Goal: Reduce EC2 costs by 20-40% through rightsizing

Navigate to Tuner โ†’ Recommendations โ†’ OverProvisioned:

OverProvisioned Recommendations

Step-by-Step:

  1. Select Test Candidate:

    • Start with non-production environment
    • Choose instance with > $100/month savings
    • Low utilization (< 20% CPU)
  2. Validate Recommendation:

    # Review CloudWatch metrics manually
    aws cloudwatch get-metric-statistics \
    --namespace AWS/EC2 \
    --metric-name CPUUtilization \
    --dimensions Name=InstanceId,Value=i-0abcd1234 \
    --start-time 2025-09-26T00:00:00Z \
    --end-time 2025-10-26T00:00:00Z \
    --period 3600 \
    --statistics Average,Maximum
  3. Test in Staging:

    • Create AMI of current instance
    • Launch new instance with recommended type
    • Run load tests
    • Monitor performance for 1 week
  4. Implement in Production:

    # 1. Stop instance
    aws ec2 stop-instances --instance-ids i-0abcd1234

    # 2. Modify instance type
    aws ec2 modify-instance-attribute \
    --instance-id i-0abcd1234 \
    --instance-type m5.large

    # 3. Start instance
    aws ec2 start-instances --instance-ids i-0abcd1234

    # 4. Monitor CloudWatch for 24 hours
  5. Mark as Implemented:

    • In Tuner, click "Mark as Implemented"
    • Tuner tracks actual savings vs. projected

Expected Results:

  • Time to Implement: 1-2 weeks (including testing)
  • Monthly Savings: $200-$500 per instance
  • Risk: Medium (requires performance validation)

Setting Up Schedulerโ€‹

Goal: Automatically stop non-production resources during off-hours

Navigate to Tuner โ†’ Scheduler:

Scheduler

Basic Schedule Configurationโ€‹

Use Case: Development environment used Monday-Friday, 8 AM - 7 PM

Step-by-Step:

  1. Create Schedule:

    • Click "Create Schedule"
    • Name: "Dev Environment Schedule"
    • Schedule Type: "Tag-Based"
  2. Define Time Windows:

    Start Time:  Monday-Friday 7:00 AM EST
    Stop Time: Monday-Friday 7:00 PM EST
    Weekend: Completely off
    Timezone: America/New_York
  3. Configure Tag Rules:

    Match resources where:
    - Tag Key: "Environment"
    - Tag Value: "Dev"

    AND

    - Tag Key: "Scheduler"
    - Tag Value: "Enabled"
  4. Select Resource Types:

    • โœ… EC2 Instances
    • โœ… RDS Databases
    • โŒ Auto Scaling Groups (optional)
  5. Safety Settings:

    • โœ… Enable retry on failure
    • โœ… Send email alerts
    • โŒ Allow manual override (optional)
  6. Review & Activate:

    • Preview matched resources (e.g., 45 EC2, 12 RDS)
    • Review projected savings
    • Click "Activate Schedule"

Savings Calculationโ€‹

Tuner automatically calculates expected savings:

Development Environment:
โ”œโ”€ 45 EC2 instances (avg $0.10/hr)
โ”œโ”€ Off hours: 127 hours/week
โ”œโ”€ Monthly off hours: 548 hours
โ””โ”€ Monthly savings: 45 ร— $0.10 ร— 548 = $2,466/month

12 RDS databases (avg $0.15/hr):
โ””โ”€ Monthly savings: 12 ร— $0.15 ร— 548 = $986/month

Total Monthly Savings: $3,452
Annual Savings: $41,424

Monitoring Schedulerโ€‹

Dashboard Metrics:

  • Success Rate: 99.2% (446/450 operations)
  • Failed Stops: 2 (retry successful)
  • Failed Starts: 2 (manual intervention required)
  • Realized Savings: $3,387/month (98% of projected)

Browser Extension Installationโ€‹

Goal: See Tuner recommendations directly in AWS Console

Installation Stepsโ€‹

  1. Chrome Web Store:

  2. Firefox Add-ons:

  3. Authentication:

    • Log in to CloudKeeper web app
    • Extension automatically captures JWT token
    • Green badge indicates: โœ… Authenticated

Using the Extensionโ€‹

When viewing an AWS resource in AWS Console:

EC2 Instance Example:

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚ ๐Ÿ’ก CloudKeeper Tuner Recommendation โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚ Instance: i-0abcd1234efgh5678 โ”‚
โ”‚ Current: m5.2xlarge ($280.32/month) โ”‚
โ”‚ CPU Utilization: 12% (30-day avg) โ”‚
โ”‚ โ”‚
โ”‚ Recommended: m5.large ($70.08/month) โ”‚
โ”‚ Monthly Savings: $210.24 โ”‚
โ”‚ โ”‚
โ”‚ [Implement] [Snooze 30 days] [Dismiss] โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

Actions:

  • Implement: Creates Jira ticket or schedules change
  • Snooze: Hide recommendation for 30/60/90 days
  • Dismiss: Permanently dismiss (requires reason)

Best Practicesโ€‹

For Maximum Savingsโ€‹

  1. Start with Low-Risk Wins:

    • Cleaner recommendations first (snapshots, idle resources)
    • Build confidence before rightsizing production
  2. Use Phased Approach:

    • Week 1: Non-production optimizations
    • Week 2-3: Test production changes in staging
    • Week 4+: Implement in production with monitoring
  3. Enable Automated Remediation:

    • Only for low-risk recommendations
    • Review audit logs weekly
    • Disable if unexpected issues arise
  4. Schedule Non-Production Resources:

    • Immediate 40-60% savings on dev/staging
    • Zero performance impact on production
    • Tag resources properly for accuracy

For Safetyโ€‹

  1. Always Test First:

    • Never apply rightsizing directly to production
    • Use staging environment mirror
    • Run load tests before production rollout
  2. Monitor After Changes:

    • CloudWatch alarms for CPU, memory, response time
    • Application performance monitoring (APM)
    • Rollback plan ready
  3. Document Implementations:

    • Track which recommendations implemented
    • Note any issues encountered
    • Share learnings with team
  4. Review Monthly:

    • New recommendations generated continuously
    • Workload patterns change over time
    • Adjust thresholds as needed

For Governanceโ€‹

  1. Define Approval Workflows:

    Low-Risk (< $500/month):   Engineering team approval
    Medium-Risk ($500-$5K): Engineering + Finance approval
    High-Risk (> $5K): C-level approval required
  2. Tag Resources Properly:

    • Environment: Dev/Staging/Prod
    • Owner: Team responsible
    • CostCenter: For chargeback
    • Scheduler: Enable/Disable scheduling
  3. Audit Trail:

    • All changes logged in Tuner
    • Export monthly reports
    • Track realized vs. projected savings

Common Pitfalls to Avoidโ€‹

โŒ Don't:

  • Implement all recommendations immediately without testing
  • Ignore utilization spikes (e.g., month-end batch jobs)
  • Disable scheduler without communication
  • Delete snapshots without verifying no restore needs

โœ… Do:

  • Validate recommendations with your domain knowledge
  • Consider workload patterns (daily, weekly, seasonal)
  • Communicate schedule changes to developers
  • Keep critical snapshots (disaster recovery)

Success Metricsโ€‹

Track your optimization progress:

Month 1 (Discovery & Quick Wins):

  • โœ… All accounts onboarded
  • โœ… 100% snapshot cleanup completed
  • โœ… Scheduler enabled for dev/staging
  • ๐Ÿ“Š Savings: 5-10% of AWS spend

Month 2 (Rightsizing Testing):

  • โœ… Non-production instances rightsized
  • โœ… Production test candidates identified
  • ๐Ÿงช Performance testing in progress
  • ๐Ÿ“Š Savings: 10-15% of AWS spend

Month 3 (Production Rollout):

  • โœ… Production rightsizing completed
  • โœ… Modernization recommendations reviewed
  • โœ… Spot instances for batch workloads
  • ๐Ÿ“Š Savings: 15-25% of AWS spend

Month 6 (Continuous Optimization):

  • โœ… Reserved Instances purchased
  • โœ… Automated remediation enabled
  • โœ… Browser extension adopted by 80% of engineers
  • ๐Ÿ“Š Savings: 20-35% of AWS spend

Getting Helpโ€‹

Support Channelsโ€‹

Escalation Pathโ€‹

  1. Level 1: Tuner UI help documentation and tooltips
  2. Level 2: Email support (24-hour response SLA)
  3. Level 3: Customer Success Manager (existing customers)
  4. Level 4: Solutions Architect (enterprise customers)

Training Resourcesโ€‹


Next Stepsโ€‹

  1. Review Key Features: Key Features & Capabilities
  2. Understand ROI: Business Value & ROI Examples
  3. Deep Dive on Architecture: Architecture Overview

Ready to get started? Link your first AWS account โ†’