Tilallisten sovellusten skaalaaminen Kubernetes-federaatioissa
Suvanto, Aku (2022)
Suvanto, Aku
2022
Tieto- ja sähkötekniikan kandidaattiohjelma - Bachelor's Programme in Computing and Electrical Engineering
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ä
2022-09-06
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:tuni-202209016862
https://urn.fi/URN:NBN:fi:tuni-202209016862
Tiivistelmä
Tämän tutkielman tarkoitus on selvittää, kuinka tilallisten sovellusten skaalaaminen toteutetaan Kuberneteksen ja KubeFed-ohjelmiston avulla toteutetussa klusteriympäristössä.
Ohjelmistokehityksessä suositaan nykyään entistä enemmän mikropalveluita, jotka toteutetaan konttiteknologian avulla. Mikropalveluiden tehokas ja automatisoitu hallinta on palvelun laadun ja tehokkuuden ylläpitämisen kannalta tärkeää. Automatisoitua hallintaa varten on luotu useita ohjelmistoja, joista eräs on Kubernetes. Kuberneteksen avulla yhden tai useamman mikropalvelun voi pakata yhdeksi hallittavaksi yksiköksi, kapseliksi, joka edustaa joko kokonaista palvelua tai jotakin sen osaa. Kuberneteksen ja sitä tukevan KubeFed-ohjelmiston avulla kapseleiksi pakattuja palveluita voidaan jakaa suoritettavaksi useille eri Kubernetes-klustereille yhdeltä pääklusterilta.
Tutkielmassa havaittiin, että KubeFed-ohjelmiston avulla voidaan toteuttaa hajautettu federoitu klusteri, jossa tilallisten sovellusten skaalaaminen onnistuu pääosin samalla tavalla kuin yhden klusterin järjestelmissä. Federoidussa klusterissa pääklusteri vastaa kaikkien osaklustereiden konfiguraatioista. KubeFed-ohjelmiston avulla federoidulle klusterille voidaan määrittää federoituja versioita olemassa olevista Kuberneteksen rajapintatoiminnoista. Federoituja rajapintatoimintoja käyttämällä pääklusteri voi luoda ja hallita kapseleita kaikilla osaklustereilla. Rajapintatoimintojen avulla voidaan myös määrittää pääklusteri hallitsemaan sovellusten skaalaamista tai vaihtoehtoisesti määrittää tietty osaklusteri skaalaamaan niitä itsenäisesti.
Ohjelmistokehityksessä suositaan nykyään entistä enemmän mikropalveluita, jotka toteutetaan konttiteknologian avulla. Mikropalveluiden tehokas ja automatisoitu hallinta on palvelun laadun ja tehokkuuden ylläpitämisen kannalta tärkeää. Automatisoitua hallintaa varten on luotu useita ohjelmistoja, joista eräs on Kubernetes. Kuberneteksen avulla yhden tai useamman mikropalvelun voi pakata yhdeksi hallittavaksi yksiköksi, kapseliksi, joka edustaa joko kokonaista palvelua tai jotakin sen osaa. Kuberneteksen ja sitä tukevan KubeFed-ohjelmiston avulla kapseleiksi pakattuja palveluita voidaan jakaa suoritettavaksi useille eri Kubernetes-klustereille yhdeltä pääklusterilta.
Tutkielmassa havaittiin, että KubeFed-ohjelmiston avulla voidaan toteuttaa hajautettu federoitu klusteri, jossa tilallisten sovellusten skaalaaminen onnistuu pääosin samalla tavalla kuin yhden klusterin järjestelmissä. Federoidussa klusterissa pääklusteri vastaa kaikkien osaklustereiden konfiguraatioista. KubeFed-ohjelmiston avulla federoidulle klusterille voidaan määrittää federoituja versioita olemassa olevista Kuberneteksen rajapintatoiminnoista. Federoituja rajapintatoimintoja käyttämällä pääklusteri voi luoda ja hallita kapseleita kaikilla osaklustereilla. Rajapintatoimintojen avulla voidaan myös määrittää pääklusteri hallitsemaan sovellusten skaalaamista tai vaihtoehtoisesti määrittää tietty osaklusteri skaalaamaan niitä itsenäisesti.
Kokoelmat
- Kandidaatintutkielmat [11807]
