Näin toimii OpenShift-alusta
Nykyaikaista ohjelmointia: ohjelmistot pilkotaan Kubernetes-tekniikan avulla mikro-osiin tukitoimintoajattelun pohjalta ja nämä mikro-osat laitetaan kontteihin. Putositko kärryiltä? Älä huoli. Selitämme, miten palaset loksahtavat paikoilleen.
PostNord Strålfors on siirtynyt käyttämään uudenlaista ohjelmistokehitysalustaa. Sen nimi on Red Hats OpenShift, ja se on yksi esimerkki Platform as a Service (PaaS) -ilmiöstä. Alustalla voi kehittää ja ajaa ohjelmistoja, ja se tarjoaa asiakkaillemme monia etuja. Näin se toimii:
Järjestelmä perustuu Kubernetes-nimiseen avoimen lähdekoodin ohjelmistoon. Se on konttienhallintajärjestelmä, jonka avulla – koeta pysyä kärryillä – ohjelmistot pilkotaan mikro-osiin, ja näin saavutetaan parempi skaalattavuus. Tuntuiko tämä vaikealta ymmärtää? Se kuulostaa oikeasti monimutkaisemmalta kuin onkaan. Lähestytäänpä asiaa autoteollisuuteen liittyvän vertauksen avulla.
– OpenShiftin ansiosta voimme skaalata ohjelmistoa juuri niin paljon kuin tarvitsee – vaikka tunnin tai minuutin ajaksi, Jonas Westlund sanoo.
Ohjelmistojen pilkkominen yksittäisiin tukitoimintoihin

Kun halutaan kehittää uusi automalli, ei tarvitse aloittaa tyhjästä ja kehittää itse moottoria, rattia ja pyöriä. Erillisalojen asiantuntijat valmistavat yksittäiset osat. Ohjelmiston kehittäminen Kubernetes-pohjaisella OpenShift-alustalla on samanlaista. Kun täytyy saada tehtyä jokin uusi sovellus, työtä ei tehdä alusta alkaen. Sen sijaan sovellus pilkotaan yksittäisiin mikro-osiin – tukitoimintoihin – ja toimintoja kehitetään erillään toisistaan pieninä tukisovelluksina. Tämä tarkoittaa sitä, että ajan myötä syntyy kattava kirjasto erilaisia valmiiksi ohjelmoituja toimintoja, joita voidaan käyttää uudelleen muissa ohjelmistoissa.
– Kubernetes-tekniikan ansiosta ei tarvitse jatkuvasti keksiä pyörää uudelleen. Sen sijaan, että kehittäisimme kokonaisen ohjelmiston monine toimintoineen, voimme tehdä yksittäisestä toiminnosta erillisen sovelluksen, joka ladataan OpenShift-alustalle. Kun sitten tarvitsemme johonkin ohjelmistoon tietyn ominaisuuden, voimme käyttää valmiiksi kehitettyä tukisovellusta, selittää PostNord Strålforsin kehityspäällikkö Jonas Westlund.
Salaisuus piilee konttitekniikassa
OpenShiftin taika on niin kutsuttujen konttien (engl. “container”) käytössä. Kontti sisältää täysin erillisen ja itsenäisen miniversion tietokoneen käyttöjärjestelmästä. Kussakin kontissa kehitetään ja ajetaan vain yhtä yksittäistä ohjelmiston toimintoa. Tämä eroaa suuresti perinteisestä ohjelmistokehityksestä, jossa ohjelmointi tehdään virtuaalisella palvelimella. Sellaisia ratkaisuja käytettäessä voi tulla ongelmia, jos palvelin sijaitsee esimerkiksi ohjelmistokehittäjän omalla tietokoneella.
– Jos minä ja kollegani työskentelemme eri läppäreillä, ja toinen on päivittänyt käyttöjärjestelmän ja ajurit, mutta toinen ei, koodiin saattaa tulla virheitä, Jonas Westlund sanoo ja jatkaa:

– Kun kaikki ohjelmistokehittäjät tekevät työtä saman kontin sisällä, ympäristö on kaikille identtinen, eikä ongelmia tule. Se säästää aikaa ja parantaa laatua sekä käyttövarmuutta.
Toinen konttien etu on joustavuus.
– Konttialustalla voimme luoda konttiklustereita omiin datakeskuksiimme ja siirrellä niitä tarpeen mukaan. Tästä on suurta etua esimerkiksi silloin, jos asiakas haluaa ajaa ohjelmistoa jollain tietyllä maantieteellisellä alueella, kertoo PostNord Strålforsin IT-arkkitehti Sophia Schwanborg.
Tarpeiden mukaista skaalattavuutta
Koska OpenShiftiä ajetaan pilvipalvelun kautta tai yksityisessä pilvessä, laskentatehoa voidaan jakaa eri ohjelmistojen ja toimintojen kesken tarpeiden mukaan. Jos taas täytyy kehittää kokonaan uusi tukitoiminto, uuden kontin tarvitsemat suoritinresurssit ja tallennustila ovat vain painalluksen päässä.
– OpenShiftin ansiosta voimme skaalata ohjelmistoa juuri niin paljon kuin tarvitsee – vaikka tunnin tai minuutin ajaksi, Jonas Westlund sanoo.