Kysy konsultilta: Miksi CDK-projekti tarvitsee yleensä bootstrapata?

3. tammikuuta 2024

Miksi CDK-projekti tarvitsee yleensä bootstrapata?

AWS Cloud Development Kit eli tuttavallisemmin CDK on AWS:n tarjoama framework resurssien ja infrastruktuurin provisiointiin useilla ohjelmointikielillä. Pellin alla CDK ajaa CloudFormationia ja toimii abstraktiokerroksena, jonka tarkoituksena on auttaa tekemään asioita hyvien käytäntöjen mukaisesti. Vaikka CDK abstraktoi joitakin kompastuskiviä piiloon, on syytä muistaa mahdollisuus kurkata mustan laatikon sisälle. CDK:lla provisioitavat resurssit syntyvät CloudFormation stackeina, joista näkee koodista generoidun CloudFormation templaten.


Matka koodista resurssiksi sisältää muitakin askelia, ja käytännössä kaikki ei-triviaalit CDK-projektit on tarpeen 'bootstrapata' mikä tarkoittaa CDK:n käyttämien riippuvuuksien ja resurssien luomista ympäristöön ennen itse sovelluksen resurssien pystyttämistä. Yksinkertaisimmillaan tämä tarkoittaa 'cdk bootstrap' komennon ajamista, joka perustaa ympäristöön 'CDKToolkit' nimisen CloudFormation-stackin näillä resursseilla.


Oletusasetuksillakin tehty bootstrap toimii testatessa, mutta templatea voi muokata haluamallaan tavalla ja ympäristön vaatimusten mukaan. Asioita ei tarvitse jättää maagisiksi, sillä käytössä olevan templaten näkee stackista, ja ennen luomista templatea voidaan tarkastella komentamalla 'cdk bootstrap --show-template'. Oletuksena esimerkiksi CloudFormationia ajetaan varsin laajoilla oikeuksilla, ja bootstrap-resursseille syntyvä tunniste ei ole erityisen kuvaava. Muita mahdollisesti mielenkiintoisia arvoja on useampi säädettäväksi.


CDK on myös jatkuvasti kehittyvä työkalu, ja bootstrap-template kehittyy sen mukana. Aiemmin bootstrapattu ympäristö voi siis erota joiltakin osin myöhemmin bootstrapatusta ympäristöstä. Bootstrap-templaten sisällyttäminen versionhallintaan auttaa näiden eroavaisuuksien löytämisessä ja helpottaa päivittämistä eteenpäin. CDK-projektien kanssa työskennellessä on hyvä muistaa tarkastaa mahdolliset erot CDK v1 ja CDK v2 välillä. Esimerkiksi CDK v2 tukee ainoastaan modernia bootstrap-templatea, kun CDK v1 tukee sekä modernia että vanhempaa mallia.


Hyvin suunniteltu ja tarpeen mukainen bootstrappaus osana CDK-projektia mahdollistaa asioiden tekemisen hyvien infrastructure-as-code -käytäntöjen mukaisesti sekä toistettavien ja ennakoitavissa olevien ympäristöjen pystyttämisen uudelleen helposti nyt, tulevaisuudessa ja tekijästä riippumatta.

A black and white photo of a bald man wearing a black shirt.

Teemu Ala-Järvenpää

Cloud Specialist

Viimeisimmät kirjoitukset

22. huhtikuuta 2026
Webscale sai marraskuussa 2025 vahvistusta tiiminsä, kun Teemu Peräkylä aloitti Sales Executive roolissa. Tutustu Teemuun ja lue hänen kokemuksistaan ensimmäisiltä kuukausilta Webscalella.
8. huhtikuuta 2026
Pilvipalveluiden valinta ei ole pelkkä tekninen tai kustannuksiin perustuva päätös. Digitaalinen suvereniteetti korostuu, kun organisaatiot pohtivat datan sijaintia ja hallintaa. Tekstissä vertailemme hyperscalereita ja eurooppalaisia pilvipalveluita sekä sitä, miksi paras ratkaisu löytyy usein näiden yhdistelmästä.
29. tammikuuta 2026
AWS European Sovereign Cloud (EUSC) on nyt saatavilla ensimmäisellä regionilla. EUSC on erillinen kokonaisuus AWS:n tavallisesta commercial-pilvestä. Se on rakennettu tilanteisiin, joissa eurooppalainen regioni ei enää riitä, vaan vaatimukset koskevat myös palvelun operointia ja käyttöoikeuksia.
AWS Lambda durable functions
21. tammikuuta 2026
AWS julkaisi joulukuussa 2025 uuden Lambda durable functions -ominaisuuden. Tämä tuo Lambdaan pitkäkestoisen ja monivaiheisen suoritusmallin, jossa työ voidaan pilkkoa hallittaviin osiin ja suorittaa jopa vuoden ajan.
Lisää kirjoituksia