Right-sizing en Compute Optimizer
Gebruik aanbevelingen van AWS Compute Optimizer om overmatig ingerichte EC2-instanties, Lambda-functies en EBS-volumes te verkleinen en kosten te verlagen.
Right-sizing en Compute Optimizer is een gratis AWS Solutions Architect-les op CoddyKit. Dit is les 1 van 4. Je kunt 3 lessen uit dit leerpad gratis volledig lezen — daarna ontgrendelt CoddyKit PRO alle lessen, plus praktische oefeningen met een ingebouwde code-editor en een AI-tutor die 24/7 beschikbaar is. Deze les maakt deel uit van het leertraject AWS Solutions Architect. Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus AWS Solutions Architect bevat in totaal 4 lessen.
Het probleem van overprovisioning
Een van de meest voorkomende en kostbaarste fouten in cloudarchitectuur is overprovisioning — meer resources toewijzen dan de werklast daadwerkelijk nodig heeft. IT-teams passen vaak overprovisioning toe vanwege gewoonten uit on-premises omgevingen (capaciteit inkopen voor piekbelasting), angst voor slechtere prestaties of simpelweg omdat ze beslissingen over de oorspronkelijke dimensionering nooit opnieuw bekijken. In AWS verspillen overgeprovisionede EC2-instanties, EBS-volumes en Lambda-functies elke minuut dat ze actief zijn geld. Juiste dimensionering is het systematische proces om deze verspilling te identificeren en te elimineren.
# Common over-provisioning symptoms:
# EC2: average CPU < 10%, memory < 20%
# RDS: storage auto-grow never triggered
# Lambda: allocated memory rarely exceeds 40%
# EBS: provisioned IOPS consistently unused
# Cost impact example:
# Over-provisioned r5.8xlarge at $1.92/hr: $1,382/month
# Correct size r5.xlarge at $0.252/hr: $181/month
# Savings: $1,201/month per instanceOverzicht van AWS Compute Optimizer
AWS Compute Optimizer analyseert historische gebruiksgegevens uit CloudWatch en gebruikt machine learning om optimale AWS-computerresources aan te bevelen. De service ondersteunt EC2-instanties, EC2 Auto Scaling-groepen, EBS-volumes, Lambda-functies en Amazon ECS op Fargate. Compute Optimizer heeft minimaal 30 dagen aan historische meetgegevens nodig om betrouwbare aanbevelingen te genereren. De service is gratis in te schakelen en levert aanbevelingen met een geschatte maandelijkse besparing en een risicoscore voor het doorvoeren van de wijziging.
# Opt in to Compute Optimizer
aws compute-optimizer update-enrollment-status \
--status Active
# Get EC2 recommendations
aws compute-optimizer get-ec2-instance-recommendations \
--query 'instanceRecommendations[].{Instance:currentInstanceType,Recommended:recommendationOptions[0].instanceType,Savings:recommendationOptions[0].estimatedMonthlySavings.value,Risk:recommendationOptions[0].performanceRisk}'
# Get Lambda recommendations
aws compute-optimizer get-lambda-function-recommendationsJuiste EC2-dimensionering met Compute Optimizer
Compute Optimizer analyseert het CPU-gebruik, geheugengebruik (via de CloudWatch-agent), de netwerkdoorvoer en EBS-IOPS van de afgelopen 3, 14 of meer dan 30 dagen. Vervolgens beveelt de service een van vier bevindingen aan: Geoptimaliseerd (de huidige grootte is passend), Overgeprovisioneerd (kan kleiner worden gemaakt), Ondergeprovisioneerd (moet groter worden gemaakt) of Niet geoptimaliseerd (onvoldoende gegevens). Controleer altijd het prestatierisico — Compute Optimizer kent aan elke aanbeveling het risico VeryLow, Low, Medium, High toe.
# EC2 recommendation findings:
# Finding: OVER_PROVISIONED
# CurrentInstanceType: m5.4xlarge
# RecommendedInstanceType: m5.xlarge
# CPU utilisation: P99 = 22%, P50 = 4%
# Memory utilisation: P99 = 18%, P50 = 8%
# EstimatedMonthlySavings: $380
# PerformanceRisk: VeryLow
# Always check:
# - Does current instance have burstable credits? (T3)
# - Are there workload spikes not captured in averages?
# - Is there seasonality to consider?Juiste Lambda-dimensionering
Voor Lambda-functies betaal je per milliseconde uitvoeringstijd, vermenigvuldigd met de toegewezen hoeveelheid geheugen. Meer geheugen toewijzen dan nodig verspilt geld, maar meer geheugen betekent ook meer CPU. De juiste balans is daarom de geheugeninstelling waarbij de kosten per aanroep minimaal zijn. Compute Optimizer analyseert de uitvoeringsduur van Lambda-aanroepen, het foutenpercentage en time-outgegevens om de optimale geheugeninstelling aan te bevelen. Met de opensource-tool Lambda Power Tuning kun je je functie ook aanroepen met verschillende geheugeninstellingen om empirisch de configuratie met de laagste kosten te vinden.
# Compute Optimizer Lambda recommendations
aws compute-optimizer get-lambda-function-recommendations \
--function-arns arn:aws:lambda:us-east-1:123:function:my-function
# Response shows:
# currentMemorySize: 1024 MB
# recommendedMemorySize: 256 MB
# utilizationMetrics:
# - type: MEMORY_MAXIMUM, value: 89 (MB)
# estimatedMonthlySavings: $45
# 89 MB actual vs 1024 MB allocated = 935 MB wastedJuiste EBS-volumedimensionering
EBS-volumes zijn vaak zowel qua grootte (ongebruikte schijfruimte) als qua IOPS (ingerichte IOPS die nooit worden gebruikt) overgeprovisioneerd. Compute Optimizer analyseert de meetgegevens VolumeReadOps, VolumeWriteOps, VolumeReadBytes, VolumeWriteBytes. Een veelvoorkomende aanbeveling is om van gp2 naar gp3 te migreren (waarbij grootte en IOPS van elkaar zijn gescheiden) — je kunt IOPS dan onafhankelijk juist dimensioneren, wat vaak 20% bespaart. Identificeer ook niet-gekoppelde EBS-volumes (beëindigde instanties waarvan de volumes zijn achtergebleven) en maak er momentopnamen van of verwijder ze.
# Get EBS volume recommendations
aws compute-optimizer get-ebs-volume-recommendations \
--volume-arns arn:aws:ec2:us-east-1:123:volume/vol-12345
# Common finding: gp2 -> gp3 migration
# gp2: 500 GB = 500 GB * $0.10 = $50/month
# IOPS: 1,500 (3 IOPS/GB, not configurable)
# gp3: 500 GB = $40/month + 3,000 IOPS free
# Save $10/month plus get MORE baseline IOPS
# Find unattached EBS volumes
aws ec2 describe-volumes \
--filters Name=status,Values=available \
--query 'Volumes[].{VolumeId:VolumeId,Size:Size,Created:CreateTime}'Aanbevelingen voor Auto Scaling-groepen
Compute Optimizer analyseert het gebruik van alle instanties in de volledige groep en beveelt wijzigingen in de startsjabloon voor het instancetype aan. Als alle instanties in een Auto Scaling-groep voortdurend overgeprovisioneerd zijn, verlaagt het overstappen op een kleiner instancetype de kosten op grote schaal. Als een groep bijvoorbeeld gemiddeld 10 instanties van m5.large heeft, bespaart overstappen op m5.medium 50% per instantie. Compute Optimizer beveelt ook op Graviton gebaseerde instanties aan wanneer je software compatibel is. Dat levert zowel betere prestaties als lagere kosten op.
# Get ASG recommendations
aws compute-optimizer get-auto-scaling-group-recommendations \
--auto-scaling-group-arns arn:aws:autoscaling:us-east-1:123:autoScalingGroup:abc:autoScalingGroupName/my-asg
# If recommendation is to switch to Graviton:
# Current: m5.large (x86, $0.096/hr)
# Recommended: m6g.large (Graviton2, $0.077/hr)
# Savings: 20% per instance
# ASG at 10 instances average = $220/month savingsTrusted Advisor voor kosteninzichten
AWS Trusted Advisor is een andere tool die inzichten in kostenoptimalisatie biedt, naast controles voor beveiliging, prestaties, fouttolerantie en servicelimieten. Belangrijke kostencontroles zijn: EC2-instanties met laag gebruik (minder dan 10% CPU gedurende 4 of meer dagen), niet-gekoppelde Elastic IP-adressen (waarvoor kosten worden berekend als ze niet zijn gekoppeld), onderbenutte EBS-volumes, inactieve load balancers (zonder gezonde doelen) en ongebruikte gereserveerde instanties. De basiscontroles van Trusted Advisor zijn gratis; voor de volledige set is Business- of Enterprise Support vereist.
# Trusted Advisor: get cost optimisation checks
aws support describe-trusted-advisor-checks \
--language en \
--query 'checks[?category==`cost_optimizing`].{Name:name,Id:id}'
# Key checks:
# Qkj5MU5fNp: Low utilisation EC2 instances
# Z4AUBRNSmh: Unassociated Elastic IP addresses
# DAvU99Dc4C: Underutilized EBS volumes
# hjLMh88uM8: Idle load balancers
# 1e93e4c0b5: Unused reserved instancesUpgrades van instancegeneraties
AWS brengt regelmatig nieuwe, efficiëntere generaties EC2-instanties uit die betere prestaties bieden tegen gelijke of lagere kosten. De overstap van de 5e generatie (m5, c5, r5) naar de 7e generatie (m7g, c7g, r7g) kan 40% betere computerprestaties opleveren tegen vergelijkbare of lagere kosten. Compute Optimizer markeert specifiek mogelijkheden om naar nieuwere generaties te upgraden, waaronder op Graviton gebaseerde instanties. Een instance-upgrade is vaak de eenvoudigste actie voor juiste dimensionering: dezelfde configuratie, nieuwere hardware, betere prestaties en lagere kosten.
# EC2 instance generation comparison (same price tier):
# m5.large: 2 vCPU, 8 GB, $0.096/hr (2019)
# m6i.large: 2 vCPU, 8 GB, $0.096/hr (2021, ~10% faster)
# m7i.large: 2 vCPU, 8 GB, $0.1008/hr (2023, ~15% faster)
# m7g.large: 2 vCPU, 8 GB, $0.0808/hr (2023, Graviton3, cheapest)
# Upgrade path for Linux workloads:
# m5 -> m7g (Graviton): best price/performance
# m5 -> m7i: same architecture, no code changesJuiste RDS-instancesdimensionering
RDS-instanties zijn duur en vaak overgeprovisioneerd. Gebruik CloudWatch-meetgegevens om het RDS-gebruik te beoordelen: CPUUtilization, FreeableMemory, ReadIOPS en WriteIOPS. Als het CPU-gebruik onder 20% blijft en er voortdurend veel geheugen beschikbaar is, kun je een kleinere instantie overwegen. Voor productiedatabases met Multi-AZ verdubbelt juiste dimensionering de besparing, omdat zowel de primaire als de stand-by-instantie wordt aangepast. Overweeg ook om van RDS MySQL/PostgreSQL naar Aurora over te stappen. Dat biedt vaak betere prestaties tegen vergelijkbare kosten en is op grote schaal kostenefficiënter.
# Monitor RDS utilisation for right-sizing
aws cloudwatch get-metric-statistics \
--namespace AWS/RDS \
--metric-name CPUUtilization \
--dimensions Name=DBInstanceIdentifier,Value=mydb \
--start-time 2026-05-21T00:00:00Z \
--end-time 2026-06-21T00:00:00Z \
--period 86400 \
--statistics Maximum Average
# If 30-day P99 CPU < 30%, consider downsizing
# If P99 CPU > 80%, consider upsizingJuiste dimensionering operationaliseren
Juiste dimensionering moet een doorlopend proces zijn, geen eenmalige activiteit. Stel een maandelijkse of driemaandelijkse beoordelingscyclus in: haal aanbevelingen uit Compute Optimizer op, bepaal welke veilig kunnen worden toegepast, voer wijzigingen door tijdens een onderhoudsvenster en meet de besparing. Automatiseer de eenvoudige verbeteringen: het opschonen van niet-gekoppelde EBS-volumes, het vrijgeven van ongebruikte Elastic IP-adressen en het verwijderen van inactieve load balancers kan met scripts worden uitgevoerd. Maak in CloudWatch een dashboard voor kostenoptimalisatie dat de maandelijkse uitgaven per service bijhoudt en ongebruikelijke stijgingen zichtbaar maakt.
# Script to release unassociated Elastic IPs
aws ec2 describe-addresses \
--query 'Addresses[?!AssociationId].AllocationId' \
--output text | xargs -I {} \
aws ec2 release-address --allocation-id {}
# Script to delete unattached EBS volumes (careful!)
# First check if snapshots exist before deleting
aws ec2 describe-volumes \
--filters Name=status,Values=available \
--query 'Volumes[].VolumeId' \
--output textJuiste dimensionering versus architectuurwijzigingen
Juiste dimensionering pakt overprovisioning binnen bestaande architecturen aan, maar soms ligt het probleem in de architectuur zelf. Een enkele grote EC2-instantie waarop meerdere applicaties draaien, heeft mogelijk architecturale opsplitsing nodig (microservices op Fargate) in plaats van alleen een kleinere instantie. Voor een monolithische database zijn mogelijk sharding of caching nodig in plaats van alleen een kleinere instantie. Juiste dimensionering is de eerste en snelste stap. Architectuuroptimalisatie (serverless, containers, caching) levert diepgaandere en duurzamere besparingen op, maar vereist meer inspanning. De pijler Kostenoptimalisatie raadt aan beide mogelijkheden te benutten.
# Cost optimisation hierarchy:
# Level 1: Right-sizing (quick wins, days)
# - Compute Optimizer recommendations
# - Delete unused resources
# - Elastic IP, EBS cleanup
# Level 2: Purchasing model (weeks)
# - Reserved Instances / Savings Plans
# - Spot for eligible workloads
# Level 3: Architecture (months)
# - Serverless migration
# - Container consolidation
# - Caching layer addition
# - Database optimisationKorte toets
Toets je begrip van de AWS Solutions Architect-concepten (SAA-C03) uit deze les.
Samenvatting van de les
In deze les heb je geleerd dat AWS Compute Optimizer machine learning toepast op CloudWatch-meetgegevens om juist gedimensioneerde computerresources aan te bevelen, dat juiste dimensionering van toepassing is op EC2, Lambda, EBS, Auto Scaling-groepen en ECS op Fargate en dat upgraden naar nieuwere instancegeneraties (vooral Graviton) zowel kosten- als prestatieverbeteringen oplevert. Maak van juiste dimensionering een terugkerende activiteit, geen eenmalige gebeurtenis. Hierna bekijken we Reserved Instances, Savings Plans en aankoopmodellen voor Spot-instanties.
Leer AWS Solutions Architect met een AI-tutor — gratis
Schrijf echte code en voer die uit in je browser, krijg direct hulp van een AI-tutor die 24/7 beschikbaar is en ga verder waar je gebleven bent op het web of in de app.
- Cursussen
- 30
- Lessen
- 120
Veelgestelde vragen
Is de les “Right-sizing en Compute Optimizer” gratis?
Ja — je kunt hier op het web alle 3 lessen van het leerpad AWS Solutions Architect, waaronder “Right-sizing en Compute Optimizer”, gratis volledig lezen. Daarna ontgrendelt CoddyKit PRO alle lessen, plus interactieve oefeningen met een ingebouwde code-editor en een AI-tutor die 24/7 beschikbaar is. De cursus AWS Solutions Architect bevat in totaal 4 lessen.
Wat leer ik in “Right-sizing en Compute Optimizer”?
Gebruik aanbevelingen van AWS Compute Optimizer om overmatig ingerichte EC2-instanties, Lambda-functies en EBS-volumes te verkleinen en kosten te verlagen. Je oefent met AWS Solutions Architect door code rechtstreeks in de browser uit te voeren. Een AI-begeleider die 24/7 beschikbaar is beantwoordt je vragen terwijl je de les doorwerkt.
Heb ik ervaring nodig om met AWS Solutions Architect te beginnen?
Ervaring vooraf is niet nodig. AWS Solutions Architect op CoddyKit is opgebouwd voor beginners tot gevorderden, zodat je hier of bij het begin kunt starten en in je eigen tempo kunt leren. Dit is les 1 van 4.
Hoe lang duurt de les “Right-sizing en Compute Optimizer”?
De meeste lessen van CoddyKit duren ongeveer 5–10 minuten. Elke les is kort en interactief, zodat je gestaag vooruitgaat en op het web en in de app precies verdergaat waar je was gebleven.
Kan ik code schrijven en uitvoeren in deze les over AWS Solutions Architect?
Ja. Elke les over AWS Solutions Architect bevat een ingebouwde code-editor, zodat je rechtstreeks in je browser echte code kunt schrijven en uitvoeren en direct feedback van AI krijgt — lokale installatie is niet nodig.
Alle lessen in deze cursus
- Right-sizing en Compute Optimizer
- Reserved Instances, Savings Plans en Spot
- Cost Explorer, budgetten en tags voor kostentoewijzing
- Kostenoptimalisatie voor S3 en gegevensoverdracht