AWS Solutions Architect · Oppitunti

Reserved Instances, Savings Plans ja Spot

Sitoudu Reserved Instances- tai Savings Plans -varauksiin tasaisille työkuormille ja käytä Spot Instances -instansseja keskeytyksiä sietäviin erä- ja tilattomiin tehtäviin.

Oppitunti 2/413 vaihetta

Reserved Instances, Savings Plans ja Spot on ilmainen AWS Solutions Architect-oppitunti CoddyKitissä. Tämä on oppitunti 2/4. Voit lukea tästä oppimispolusta kokonaan mitkä tahansa 3 oppituntia ilmaiseksi — sen jälkeen CoddyKit PRO avaa kaikki oppitunnit sekä käytännön harjoittelun sisäänrakennetulla koodieditorilla ja ympäri vuorokauden toimivalla tekoälytuutorilla. Oppitunti kuuluu AWS Solutions Architect-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. AWS Solutions Architect-kurssilla on yhteensä 4 oppituntia.

EC2:n hankintamallien yleiskatsaus

AWS tarjoaa useita EC2:n hankintamalleja, joissa joustavuutta vaihdetaan kustannussäästöihin. On-Demand-hinnoittelu perustuu sekuntiveloitukseen ilman sitoumusta — se on joustavin mutta kallein vaihtoehto. Reserved Instances tarjoaa jopa 72 %:n säästöt yhden tai kolmen vuoden sitoumuksilla. Savings Plans tarjoaa jopa 66 %:n säästöt joustavalla tuntikohtaisella kulutussitoumuksella. Spot Instances hyödyntää ylimääräistä kapasiteettia ja tarjoaa jopa 90 %:n säästöt, mutta instanssit voidaan keskeyttää. Dedicated Hosts tarjoaa fyysiset palvelimet lisenssivaatimusten täyttämiseen korkeammilla kustannuksilla. Kunkin mallin ymmärtäminen on tärkeää SAA-C03:n kustannusskenaarioissa.

# EC2 pricing models (m5.large in us-east-1, approximate):
# On-Demand:        $0.096/hr ($70/month)
# 1yr RI (No Upf): $0.062/hr ($45/month) - 35% savings
# 1yr RI (All Upf): $0.051/hr ($37/month) - 47% savings
# 3yr RI (All Upf): $0.032/hr ($23/month) - 67% savings
# Spot:            $0.030-0.050/hr       - 50-70% savings

# Rule: RI/SP for steady state, Spot for burst/interruptible

Reserved Instances: tyypit ja maksuvaihtoehdot

Reserved Instances (RI:t) on laskutusrakenne, ei tietty instanssi — ne tarjoavat alennuksen, joka kohdistetaan tilinne vastaaviin On-Demand-instansseihin. RI-tyypit: Standard RI:t — suurin alennus (jopa 72 %), mutta instanssiperhettä ei voi vaihtaa. Convertible RI:t — pienempi alennus (noin 54 %), mutta ne voidaan vaihtaa toiseen instanssiperheeseen, käyttöjärjestelmään tai vuokrausmalliin. Maksuvaihtoehdot: No Upfront (kuukausimaksut, pienin sitoumus), Partial Upfront (pienempi efektiivinen hinta), All Upfront (pienin efektiivinen tuntihinta). Valitkaa Standard RI:t ennakoitaviin ja muuttumattomiin työkuormiin.

# Purchase Reserved Instance
aws ec2 purchase-reserved-instances-offering \
  --reserved-instances-offering-id offering-id-here \
  --instance-count 5

# List RI offerings
aws ec2 describe-reserved-instances-offerings \
  --instance-type m5.large \
  --product-description 'Linux/UNIX' \
  --offering-type 'No Upfront' \
  --duration 31536000 \
  --query 'ReservedInstancesOfferings[].{Price:RecurringCharges[0].Amount,Class:OfferingClass}'

RI:n kattavuus: alueellinen vai vyöhykekohtainen

Reserved Instances -varauksilla on kaksi kattavuusvaihtoehtoa, jotka vaikuttavat joustavuuteen. Alueellinen kattavuus tarjoaa instanssin koon joustavuuden saman perheen sisällä — alueellinen m5-RI kattaa minkä tahansa koon (m5.small, m5.large jne.) millä tahansa alueen AZ-alueella. Se EI varaa kapasiteettia. Vyöhykekohtainen kattavuus varaa kapasiteetin tietystä AZ-alueesta (kapasiteettivaraus), mikä varmistaa instanssien saatavuuden suuren kysynnän aikana, mutta ei tarjoa instanssin koon joustavuutta. Käyttäkää alueellista kattavuutta, ellei taattu kapasiteetti ole tarpeen (esimerkiksi DR:tä tai tiukkaa SLA:ta varten).

# Regional RI: flexible across sizes in a family
# 1x m5 regional RI covers:
# - m5.large (1.0 units)
# - 2x m5.medium (0.5 units each)
# - 0.5x m5.xlarge (2.0 units)

# Zonal RI: specific AZ, reserves capacity
# 1x m5.large in us-east-1a:
# - Only covers m5.large in us-east-1a
# - Guarantees capacity is available

# Most use cases: prefer REGIONAL for flexibility

Savings Plans: joustavampi kuin RI:t

Savings Plans on joustava hinnoittelumalli, jossa sitoudutaan vähintään tiettyyn tuntikulutukseen (dollareina) yhdeksi tai kolmeksi vuodeksi. AWS kohdistaa alennuksen automaattisesti soveltuvaan käyttöön. Tyyppejä on kaksi: Compute Savings Plans (säästöt jopa 66 %) — koskevat EC2:ta, Lambdaa ja Fargatea riippumatta instanssiperheestä, alueesta, käyttöjärjestelmästä tai vuokrausmallista. EC2 Instance Savings Plans (säästöt jopa 72 %) — koskevat tiettyä instanssiperhettä tietyllä alueella ja tarjoavat suuremman alennuksen pienemmällä joustavuudella. Savings Plans -suunnitelmia suositellaan useimpiin uusiin sitoumuksiin RI:iden sijaan niiden joustavuuden vuoksi.

# Purchase Compute Savings Plan
aws savingsplans create-savings-plan \
  --savings-plan-offering-id offering-id \
  --commitment 10.00 \
  --purchase-time '2026-07-01T00:00:00Z'

# $10/hr commitment covers:
# - EC2 instances (any family, region, OS)
# - Lambda invocations and duration
# - Fargate vCPU and memory

# Savings Plans apply AFTER Reserved Instances
# Check coverage in Cost Explorer > Savings Plans

RI- ja Savings Plans -vaihtoehtojen valinta

Keskeiset erot valinnan tueksi: RI:t sopivat paremmin, kun tarvitsette kapasiteettivarauksia (zonal RI), työkuormanne ovat hyvin ennakoitavia eivätkä instanssiperheet vaihdu tai vanhalla tilillänne on jo paljon olemassa olevia RI-varauksia. Savings Plans sopivat useimpiin uusiin sitoumuksiin paremmin, koska ne kohdistuvat automaattisesti uusiin instanssityyppeihin (esimerkiksi Graviton) ilman RI-varausten vaihtamista. AWS suosittelee Savings Plans -suunnitelmia Compute RI -varausten nykyaikaiseksi korvaajaksi. RDS:n, ElastiCachen ja Redshiftin kohdalla Reserved Instances on edelleen käytettävä mekanismi (näille palveluille ei ole Savings Plans -suunnitelmia).

# Savings Plans coverage analysis
aws ce get-savings-plans-coverage \
  --time-period Start=2026-05-01,End=2026-06-01 \
  --granularity MONTHLY

# Response shows:
# OnDemandCost: $5,000 (not covered)
# SpendCoveredBySavingsPlans: $10,000
# CoveragePercentage: 66%

# Recommendation:
# If coverage < 60%, consider purchasing more
# If coverage > 85%, you may be over-committed

Spot Instances: suuret alennukset keskeytysten kustannuksella

Spot Instances hyödyntävät AWS:n vapaana olevaa EC2-kapasiteettia, ja niiden hinta määräytyy dynaamisesti kysynnän ja tarjonnan perusteella — tyypillisesti 60–90 % On-Demand-hintaa edullisemmin. AWS voi ottaa Spot Instances -instanssit takaisin käyttöönsä tarvitessaan kapasiteettia, jolloin se antaa 2 minuutin varoituksen. Parhaita käyttötapauksia ovat big datan käsittely (EMR), CI/CD-koontiagentit, ELB:tä käyttävät tilattomat verkkosovellukset, koneoppimismallien koulutus (tallentakaa mallin tarkistuspiste S3:een keskeytyksen yhteydessä) sekä eräajot, jotka tallentavat käsittelyn etenemisen tarkistuspisteisiin. Suunnitelkaa sovellukset käsittelemään 2 minuutin lopetusvaroitukset hallitusti.

# Check Spot instance interruption notice
# From inside EC2 instance via Instance Metadata Service
curl http://169.254.169.254/latest/meta-data/spot/termination-time
# Returns: 2026-06-21T15:00:00Z if interruption is coming
# Returns 404 if no interruption

# Handle in your application:
# 1. Poll this endpoint every 5 seconds
# 2. On 2-min notice: checkpoint work to S3
# 3. Terminate gracefully
# 4. AWS terminates the instance 2 minutes after notice

Spot Instance -strategiat ja hajauttaminen

Voitte parantaa Spot-kapasiteetin saatavuutta ja vähentää keskeytyksiä käyttämällä hajauttamista: pyytäkää useita instanssityyppejä useilta AZ-alueilta. Yksi Spot-pooli (tietty instanssityyppi + AZ) voidaan keskeyttää samanaikaisesti. Mixed instance ASG -ryhmien käyttäminen useilla instanssityypeillä (m5.large, m5a.large, m4.large, c5.large) vähentää keskeytysriskiä huomattavasti — kun yksi pooli otetaan takaisin käyttöön, ASG korvaa sen toisella tyypillä. Käyttäkää capacity-optimized-allokointistrategiaa, jotta syvin pooli (pienimmän keskeytysriskin pooli) valitaan automaattisesti.

# ASG with diversified Spot pools
aws autoscaling create-auto-scaling-group \
  --mixed-instances-policy '{
    "LaunchTemplate": {
      "LaunchTemplateSpecification": {
        "LaunchTemplateId": "lt-12345",
        "Version": "$Latest"
      },
      "Overrides": [
        {"InstanceType": "m5.large"},
        {"InstanceType": "m5a.large"},
        {"InstanceType": "m4.large"},
        {"InstanceType": "c5.large"},
        {"InstanceType": "c5a.large"}
      ]
    },
    "InstancesDistribution": {
      "SpotAllocationStrategy": "capacity-optimized",
      "OnDemandPercentageAboveBaseCapacity": 0
    }
  }'

Spot eräajoissa ja datankäsittelyssä

Eräajotyökuormat sopivat Spot-kapasiteetille erinomaisesti, koska ne voidaan keskeyttää ja jatkaa myöhemmin. AWS Batch hallinnoi Spot-kapasiteettia natiivisti, yrittää epäonnistuneet työt automaattisesti uudelleen ja kohdistaa ne optimaalisiin Spot-pooleihin. Amazon EMR mahdollistaa On-Demand-pääsolmujen (luotettavuutta varten) yhdistämisen Spot-ydin- ja tehtäväsolmuihin (säästöjä varten). EKS:n Managed Node Groups -ryhmät voivat käyttää Spot-instansseja, ja Kubernetesin solmutason hallittu lopetus käsittelee 2 minuutin varoituksen. Nämä hallitut palvelut piilottavat Spot-keskeytysten käsittelyn monimutkaisuuden.

# EMR cluster with On-Demand master + Spot workers
aws emr create-cluster \
  --instance-fleets \
    InstanceFleetType=MASTER,TargetOnDemandCapacity=1,InstanceTypeConfigs=[{InstanceType=m5.xlarge}] \
    InstanceFleetType=CORE,TargetSpotCapacity=10,InstanceTypeConfigs=[{InstanceType=m5.xlarge},{InstanceType=m5a.xlarge}],LaunchSpecifications={SpotSpecification={TimeoutAction=SWITCH_TO_ON_DEMAND,TimeoutDurationMinutes=10}}

# SWITCH_TO_ON_DEMAND: if Spot unavailable after 10 min,
# provision On-Demand instead (ensures job completes)

Hankintamallien yhdistäminen

Kustannusten kannalta optimaalisimmissa arkkitehtuureissa yhdistetään kaikki kolme hankintamallia: Savings Plans tai RI:t kattavat vakaan perustason (aina käynnissä olevien instanssien vähimmäismäärän), On-Demand kattaa ennakoitavan mutta vaihtelevan lisäkapasiteetin ja Spot käsittelee ennakoimatonta ruuhkaliikennettä tai eräajotyökuormia. Määrittäkää ASG:ssä On-Demand-peruskapasiteetti vähimmäismääräksi luotettavia instansseja (SP:n tai RI:n kattamia) ja määrittäkää skaalauksen lisäys käyttämään Spot-kapasiteettia. Tämä hybridimalli maksimoi säästöt ja säilyttää samalla luotettavuuden.

# Hybrid ASG: On-Demand base + Spot burst
# Savings Plan covers On-Demand baseline cost
aws autoscaling create-auto-scaling-group \
  --mixed-instances-policy '{
    "LaunchTemplate": { ... },
    "InstancesDistribution": {
      "OnDemandBaseCapacity": 4,
      "OnDemandPercentageAboveBaseCapacity": 0,
      "SpotAllocationStrategy": "capacity-optimized"
    }
  }' \
  --min-size 4 --max-size 40 --desired-capacity 8

# 4 On-Demand instances (covered by Savings Plan)
# Additional instances = 100% Spot (cheapest burst)

Sitoumusten käyttöasteen seuranta

Kun olette hankkineet RI-varauksia tai Savings Plans -suunnitelmia, seuratkaa niiden käyttöastetta varmistaaksenne, että käytätte ostamaanne kapasiteettia. Cost Explorerin RI/SP-käyttöasteraportit näyttävät, kuinka suuri prosenttiosuus sitoumuksen kattamasta kapasiteetista on käytössä. Alle 80 %:n käyttöaste tarkoittaa, että tuhlaatte rahaa käyttämättömiin sitoumuksiin. Selvittäkää, onko työkuormia lopetettu tai niiden kokoa muutettu. RI-varausten kohdalla voitte myydä käyttämättömät RI-varaukset AWS Marketplacessa saadaksenne osan kustannuksista takaisin. Savings Plans -suunnitelmille ei ole jälkimarkkinoita — varmistukaa sitoumuksesta ennen ostamista.

# Check Savings Plans utilisation
aws ce get-savings-plans-utilization \
  --time-period Start=2026-06-01,End=2026-06-21 \
  --granularity DAILY \
  --query 'SavingsPlansUtilizationsByTime[].{Date:TimePeriod.Start,Utilization:Utilization.UtilizationPercentage}'

# Also check: Cost Explorer > Savings Plans > Utilization report
# Target: >80% utilisation
# If <80%: you over-committed or workload shrank

Dedicated Hosts ja Dedicated Instances

Dedicated Hosts varaa tilillenne fyysisen EC2-palvelimen, jolloin voitte käyttää olemassa olevia suoritin- tai kanta-kohtaisia ohjelmistolisenssejänne (Windows Server, SQL Server, Oracle). Dedicated Hosts voi olla huomattavan kallis, mutta tietyt ohjelmistojen lisenssisopimukset edellyttävät sitä. Dedicated Instances on kevyempi vaihtoehto — instanssit toimivat tilillenne omistetulla laitteistolla, mutta ette hallitse tiettyä isäntäpalvelinta. Kumpaakaan ei suositella pelkästään turvallisuuseristykseen (käyttäkää sen sijaan VPC-eristystä ja SG:itä); ne ovat lisenssivaatimusten täyttämiseen tarkoitettuja työkaluja.

# Allocate Dedicated Host for Oracle licensing
aws ec2 allocate-hosts \
  --quantity 1 \
  --instance-type m5.xlarge \
  --availability-zone us-east-1a \
  --auto-placement on \
  --host-recovery on

# Dedicated Host pricing is per host per hour
# Dedicated Instances: $2/region/hr + instance price

# Use Dedicated Host when:
# - Oracle/SQL Server socket-based licensing
# - Windows Server with own license
# - Compliance requires physical server isolation

Pikatarkistus

Testatkaa ymmärrystänne tämän oppitunnin AWS Solutions Architect (SAA-C03) -aiheista.

Oppitunnin kertaus

Tässä oppitunnissa opitte, että Savings Plans -suunnitelmat ovat joustavampia kuin Reserved Instances -varaukset ja koskevat EC2:ta, Lambdaa ja Fargatea, Spot Instances voi tuoda jopa 90 %:n säästöt keskeytyksiä sietäville työkuormille ja Savings Plans -suunnitelmien käyttäminen perustasolle ja Spot-kapasiteetin käyttäminen ruuhkahuippuihin mahdollistaa suurimmat kustannussäästöt. Seuratkaa sitoumustenne käyttöastetta varmistaaksenne, että käytätte sen, mistä olette maksaneet. Seuraavaksi tutustumme Cost Exploreriin, Budgets-palveluun ja kustannusten kohdistustunnisteisiin.

Aloita maksutta

Opi AWS Solutions Architect tekoälytuutorin avulla — ilmaiseksi

Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.

Kurssit
30
Oppitunnit
120

Usein kysytyt kysymykset

Onko oppitunti ”Reserved Instances, Savings Plans ja Spot” ilmainen?

Kyllä — voit lukea täällä verkossa kokonaan ilmaiseksi mitkä tahansa AWS Solutions Architect-oppimispolun 3 oppituntia, myös oppitunnin “Reserved Instances, Savings Plans ja Spot”. Sen jälkeen CoddyKit PRO avaa kaikki oppitunnit sekä interaktiiviset harjoitukset sisäänrakennetulla koodieditorilla ja ympäri vuorokauden toimivalla tekoälytuutorilla. AWS Solutions Architect-kurssilla on yhteensä 4 oppituntia.

Mitä opin oppitunnilla ”Reserved Instances, Savings Plans ja Spot”?

Sitoudu Reserved Instances- tai Savings Plans -varauksiin tasaisille työkuormille ja käytä Spot Instances -instansseja keskeytyksiä sietäviin erä- ja tilattomiin tehtäviin. Harjoittelet AWS Solutions Architect-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.

Tarvitsenko kokemusta aloittaakseni AWS Solutions Architect-opiskelun?

Aiempi kokemus ei ole tarpeen. CoddyKitin AWS Solutions Architect-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 2/4.

Kuinka kauan ”Reserved Instances, Savings Plans ja Spot”-oppitunnin suorittaminen kestää?

Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.

Voinko kirjoittaa ja suorittaa koodia tällä AWS Solutions Architect-oppitunnilla?

Kyllä. Jokainen AWS Solutions Architect-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.

Kaikki tämän kurssin oppitunnit

  1. Oikea mitoitus ja Compute Optimizer
  2. Reserved Instances, Savings Plans ja Spot
  3. Cost Explorer, Budgets ja kustannusten kohdistustunnisteet
  4. S3:n ja tiedonsiirron kustannusten optimointi
← Takaisin: AWS Solutions Architect