Hyppää sisältöön
    • Suomeksi
    • In English
Trepo
  • Suomeksi
  • In English
  • Kirjaudu
Näytä viite 
  •   Etusivu
  • Trepo
  • Opinnäytteet - ylempi korkeakoulututkinto
  • Näytä viite
  •   Etusivu
  • Trepo
  • Opinnäytteet - ylempi korkeakoulututkinto
  • Näytä viite
JavaScript is disabled for your browser. Some features of this site may not work without it.

Comparison of cloud platforms for hosting microservices : Determining the best cloud platform for microservice hosting by costs and maintainability

Hiltunen, Joonas (2024)

 
Avaa tiedosto
HiltunenJoonas.pdf (1.456Mt)
Lataukset: 



Hiltunen, Joonas
2024

Tietotekniikan DI-ohjelma - Master's Programme in Information Technology
Informaatioteknologian ja viestinnän tiedekunta - Faculty of Information Technology and Communication Sciences
This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Hyväksymispäivämäärä
2024-05-07
Näytä kaikki kuvailutiedot
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:tuni-202404093375
Tiivistelmä
As microservices, containerisation, and related tools have matured significantly in the past years, many companies have started to decouple their monolithic software products into smaller microservices. With this change, the companies have faced a new problem: how to host these new services efficiently and how to keep these services maintainable without spending vast amounts of money on DevOps.
The customer of this thesis was developing a customer information system, or CIS, that is used extensively within a niche industry and is looking for the best possible cloud platform for their needs. The software was quite large and complex, consisting of multiple separate modules. At the time of writing, the software was being converted from a modular monolith to a microservices solution. The customer desired to determine the cheapest and the most maintainable cloud platform for their needs.
The research was done using Design Science Research introduced by Peffers et al. The research was classified as a technical experiment that outputs an artefact, which in this case was the advisory of the best cloud platform for the software.
To determine the best-suited cloud platform for the future microservice-based solution, two of the largest cloud platforms, Amazon Web Services and Microsoft Azure, were compared. Multiple relevant platforms' services, such as Kubernetes service, virtual machines, and databases, were compared to determine the best options for the software. A simple definition for the maintainability of a cloud platform was formed, as no peer-reviewed standard definition for it could be found. The platforms were then compared based on multiple subjective and objective metrics described in the definition. The possibility of using proprietary services such as AWS Elastic Container Service was also explored.
The results showed that Amazon Web Services was the cheaper option. Simultaneously, Microsoft Azure was deemed better in terms of maintainability, with the most significant differences coming from higher uptime service level agreements of Azure. Proprietary services were considered and compared, but it was determined that they were not the right choice for complex software such as the one used in this research. In the end, a recommendation was given for Amazon Web Services if there are no other reasons to use Azure, such as previous know-how.
 
Mikropalveluiden, konttipalveluiden ja niihin liittyvien työkalujen viime vuosien merkittävän kehittymisen vuoksi monet yritykset ovat alkaneet hajottaa monoliittisia ohjelmistotuotteitaan pienemmiksi mikropalveluiksi. Tämän muutoksen myötä yritykset ovat kohdanneet uuden ongelman: kuinka ylläpitää näitä uusia palveluita tehokkaasti ja miten nämä palvelut pidetään ylläpidettävinä ilman, että joudutaan käyttämään suuria summia rahaa DevOpsiin.
Tämän opinnäytetyön asiakas oli kehittämässä erikoisalalla laajasti käytettyä asiakastietojärjestelmää eli CIS-ohjelmistoa ja etsi parasta mahdollista pilvialustaa tarpeisiinsa. Ohjelmisto oli melko laaja sekä monimutkainen, ja se koostui useista erillisistä moduuleista. Kirjoitushetkellä ohjelmistoa oltiin muuntamassa modulaarisesta monoliitista mikropalveluratkaisuksi. Asiakas halusi selvittää halvimman, mutta myös ylläpidettävimmän pilvialustan tarpeisiinsa.
Tutkimus tehtiin Peffers et al.:n esittelemän Design Science Researchin avulla. Tutkimus luokiteltiin tekniseksi kokeeksi, joka tuottaa artefaktin eli tässä tapauksessa neuvon parhaasta pilvialustasta tarpeeseen.
Tulevalle mikropalvelupohjaiselle ratkaisulle parhaiten soveltuvan pilvialustan määrittämiseksi verrattiin kahta suurinta pilvialustaa, jotka olivat kirjoitushetkellä Amazon Web Services ja Microsoft Azure. Parhaiden vaihtoehtojen määrittämiseksi verrattiin useita alustojen palveluita, kuten Kubernetes-palvelua, virtuaalikoneita ja tietokantoja. Pilvialustan ylläpidettävyydestä muodostettiin yksinkertainen määritelmä, sillä sille ei löytynyt vertaisarvioitua standardimääritelmää. Tämän jälkeen alustoja verrattiin useiden määritelmässä kuvattujen subjektiivisten ja objektiivisten mittareiden perusteella. Myös mahdollisuutta käyttää alustojen omia palveluja, kuten AWS Elastic Container Serviceä tutkittiin.
Tulokset osoittivat, että Amazon Web Services oli halvempi vaihtoehto kahdesta vertaillusta palvelusta. Samaan aikaan Microsoft Azure voitiin kuitenkin pitää ylläpidettävyyden kannalta parempana, suurimmat erot tulivat esiin Azuren paremmista palvelutasosopimuksista. Alustojen omia palveluja pohdittiin ja vertailtiin, mutta lopulta todettiin, että ne eivät olleet oikea valinta tässä tutkimuksessa käytetyn kaltaisille monimutkaisille ohjelmistoille. Lopulta annettiin suositus Amazon Web Servicesille, mikäli Azuren käyttöön ei ole muita syitä, kuten aiempaa osaamista.
 
Kokoelmat
  • Opinnäytteet - ylempi korkeakoulututkinto [40800]
Kalevantie 5
PL 617
33014 Tampereen yliopisto
oa[@]tuni.fi | Tietosuoja | Saavutettavuusseloste
 

 

Selaa kokoelmaa

TekijätNimekkeetTiedekunta (2019 -)Tiedekunta (- 2018)Tutkinto-ohjelmat ja opintosuunnatAvainsanatJulkaisuajatKokoelmat

Omat tiedot

Kirjaudu sisäänRekisteröidy
Kalevantie 5
PL 617
33014 Tampereen yliopisto
oa[@]tuni.fi | Tietosuoja | Saavutettavuusseloste