Sovelluksen käyttöönottaminen pilviympäristössä koodipohjaisesti
Holm, Mikael (2024)
Holm, Mikael
2024
All rights reserved. This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-202401191563
https://urn.fi/URN:NBN:fi:amk-202401191563
Tiivistelmä
Insinöörityössä tutkittiin sovelluksen käyttöönottamista pilviympäristössä koodipohjaisesti. Työn aikana tutustuttiin siihen, kuinka sekä sovellus että siihen liittyvä infrastruktuuri pystyttiin käyttöönottamaan pilviympäristössä samanaikaisesti mahdollisimman automatisoidusti. Työssä toteutettiin yksinkertainen matemaattinen peli, jossa loppukäyttäjät pystyivät harjoittelemaan yksikkömuunnoksia selainpohjaisesti. Matemaattinen peli ilmensi palvelukokonaisuutta sekä edusta- että taustapalveluiden osalta.
Infrastruktuurin koodipohjaiseen hallintaan käytettiin Terraform-työkalua, ja jatkuvan integraation ja jatkuvan käyttöönoton alustana hyödynnettiin GitHub Actions -palvelua. GitHub Actionsin avulla Google Cloud Platform (GCP) -ympäristöön luotiin sovelluksen vaatima infrastruktuuri Terraformilla ja käyttöönotettiin sovellus. GitHub Actionsin ja Terraformin avulla käyttöönotettiin sekä sovellus että siihen liittyvä infrastruktuuri huomioiden ympäristökohtaiset muuttujat, kuten erilaisten tunnusten ja salasanojen hallinta.
Sovelluksen käyttöönotto pilviympäristöön tehtiin automatisoidusti hyvin korkealla tasolla. Insinöörityössä havaittiin, että Terraform soveltui hyvin infrastruktuurin koodipohjaiseen hallintaan ja sen avulla pystyttiin luomaan infrastruktuuri automatisoidusti GCP-ympäristöön GitHub Actions -työnkululla. Työssä toteutettujen Terraform-moduulien avulla infrastruktuuriin liittyvien konfiguraatiotiedostojen hallinnasta tehtiin sujuvaa sen lisäksi, että infrastruktuurin ohella myös sovellus saatiin käyttöönotettua samalla kerralla hyödyntäen GitHub Actionsia. Infrastruktuuriin tehtävistä muutoksista saatiin annettua myös yhteenveto GitHubin yhdistämispyyntöjen (pull request) yhteyteen omalla GitHub Actions -työnkululla. Tällä tavalla kehittäjät pystyivät näkemään, mitä muutoksia Terraform tekisi infrastruktuuriin, jos kehityshaarassa olevat lähdekoodimuutokset päätettäisiin yhdistää esimerkiksi päähaaraan.
Infrastruktuurin koodipohjaiseen hallintaan käytettiin Terraform-työkalua, ja jatkuvan integraation ja jatkuvan käyttöönoton alustana hyödynnettiin GitHub Actions -palvelua. GitHub Actionsin avulla Google Cloud Platform (GCP) -ympäristöön luotiin sovelluksen vaatima infrastruktuuri Terraformilla ja käyttöönotettiin sovellus. GitHub Actionsin ja Terraformin avulla käyttöönotettiin sekä sovellus että siihen liittyvä infrastruktuuri huomioiden ympäristökohtaiset muuttujat, kuten erilaisten tunnusten ja salasanojen hallinta.
Sovelluksen käyttöönotto pilviympäristöön tehtiin automatisoidusti hyvin korkealla tasolla. Insinöörityössä havaittiin, että Terraform soveltui hyvin infrastruktuurin koodipohjaiseen hallintaan ja sen avulla pystyttiin luomaan infrastruktuuri automatisoidusti GCP-ympäristöön GitHub Actions -työnkululla. Työssä toteutettujen Terraform-moduulien avulla infrastruktuuriin liittyvien konfiguraatiotiedostojen hallinnasta tehtiin sujuvaa sen lisäksi, että infrastruktuurin ohella myös sovellus saatiin käyttöönotettua samalla kerralla hyödyntäen GitHub Actionsia. Infrastruktuuriin tehtävistä muutoksista saatiin annettua myös yhteenveto GitHubin yhdistämispyyntöjen (pull request) yhteyteen omalla GitHub Actions -työnkululla. Tällä tavalla kehittäjät pystyivät näkemään, mitä muutoksia Terraform tekisi infrastruktuuriin, jos kehityshaarassa olevat lähdekoodimuutokset päätettäisiin yhdistää esimerkiksi päähaaraan.