Perinteisen palvelinympäristön käyttö ei aluksi aiheuttanut ongelmia Göteborgin yliopiston sovelluskehittäjille, joiden vastuulla uuden verkkopalvelun rakentaminen oli. Aina kun uusi sovellus piti testata, IT-osaston työntekijät perustivat manuaalisesti uusia testausympäristöjä, joilla oli omat IP-osoitteensa ja palomuurinsa. Haasteet alkoivat vasta hankkeen siirtyessä aktiivisempaan vaiheeseen.
”Uusien sovellusten testaukseen tarvittiin nimittäin lukuisia kehitysympäristöjä. Näiden ympäristöjen perustaminen tavallisille palvelimille vaati paljon aikaa ja vaivaa”, Göteborgin yliopiston IT-infrastruktuuriasiantuntija Magnus Norling kertoo.
Ongelman ratkaisemiseksi päätettiin testata OpenShift-konttialustaa. Se koostuu pienistä itsenäisistä virtuaalisista yksiköistä, joiden avulla ohjelmistojen kehittäminen on erittäin nopeaa. Sovelluksia ja toimintoja voi konttien avulla myös siirtää ja skaalata helposti, mistä on hyötyä, jos halutaan kehittää samanaikaisesti useita eri sovelluksia.
”OpenShift auttaa sovelluskehittäjiä saamaan sovellukset valmiiksi nopeammin ja edullisemmin. OpenShiftin käyttö vaatii uudenlaista työskentelytapaa ja suhtautumista kehittämiseen, mikä on todella hauskaa. Kehittäjämme ovat tähän työskentelytapaan erittäin tyytyväisiä”, Magnus Norling kertoo.
”Liiketoimintojen työntekijöitä ei tarvitse ottaa mukaan aina uutta sovellusta testattaessa, vaan kehittäjät voivat perustaa tarvittavat ympäristöt itse. Koko prosessi kehittämisestä julkaisuun asti on paljon nopeampi ja automatisoitu. Uusien käyttäjien ja projektien lisääminen on myös huomattavasti aiempaa helpompaa. Kustannukset pysyvät nyt kurissa paremmin, koska ne perustuvat resurssien käyttömäärään”, Magnus Norling sanoo.
Käytimme aluksi testiversiota, jonka avulla asiasta sai mielestäni hyvän peruskäsityksen. OpenShiftin käytön aloittaminen on melko helppoa, mutta se edellyttää uudenlaista työskentelytapaa perinteisiin palvelinympäristöihin verrattuna. Kyse on ajattelutavan muutoksesta.”
”Kyllä minun mielestäni, mutta suurimman hyödyn siitä saavat organisaatiot, joissa tehdään paljon ohjelmistokehitystä ja joissa on paljon erilaisia tuotantoympäristöjä, kuten paljon sähköisiä palveluita sisältäviä verkkosivustoja. OpenShiftin avulla kuormantasaus on helpompi määrittää ja käyttöönottoa on helpompi valvoa”
Se on Kubernetes-pohjainen ympäristö konteille ja pilvinatiiville kehittämiselle. Se helpottaa ketterää koodin kehittämistä, mikä tarkoittaa, että koodien päivittäminen, käsittely ja kehittäminen on helpompaa ilman suuria vaikutuksia muihin toimintoihin.
Se helpottaa sovellusten jakelua, päivittämistä ja käyttöönottoa.
Se nopeuttaa yrityksen muutostahtia, koska sovellusten kehittäminen ja parantaminen on sen avulla paljon nopeampaa. Kehittäjät ja toiminnot ovat yhteistyössä toisiaan häiritsemättä. OpenShift on yksi esimerkki sovelletusta DevOpsista.
Ratkaisu alentaa tukikustannuksia, jolloin IT-toiminnot voivat keskittyä paremmin kehitystyöhön. Tämä puolestaan parantaa organisaation kilpailukykyä.
OpenShift on Red Hatin kehittämä Kubernetes-pohjainen ympäristö konteille ja pilvinatiiville kehittämiselle. Sitä voidaan käyttää sovellusten kehittämiseen DevOpsilla. OpenShift tukee mm. konttikuvien luomista suoraan lähdekoodista (”Source to Image”) ja kuvien automaattista käyttöönottoa konteissa.
Konttiteknologia tarjoaa kehittäjille mahdollisuuden ajaa sovelluksia tai toimintoja resurssipohjaisesti virtuaalisissa ympäristöissä. Teknologia on mullistanut tavan, jolla organisaatiot kehittävät ja julkaisevat koodia ja sovelluksia, sillä se vähentää riippuvuutta ympäristöstä ja tukee horisontaalista skaalattavuutta sekä muita teknologioita, kuten mikropalveluita.
Sovellusten automaattiseen jakeluun on saatavana useita eri työkaluja. Ansible on yksi tällainen automatisointijärjestelmä.
Monipilvi- eli hybridipilviympäristöllä tarkoitetaan IT-ympäristöä, jossa hyödynnetään yksityisten pilvien, julkisten pilvien ja omassa konesalissa sijaitsevien resurssien yhdistelmää. Ympäristö tarjoaa valinnanvapautta, sallii työkuormien siirron eri alustojen välillä ja lisää joustavuutta.
DevOps yksinkertaistaa ohjelmistokehittäjän (”development” eli dev) ja järjestelmän ylläpidon (”operations” eli ops) välistä yhteistyötä automatisoimalla sovellusten kehittämistä, käyttöönottoa, testausta, integrointia ja valvontaa. Sen avulla voidaan siis hallita sovelluksen koko elinkaari. Automatisoinnissa käytetään
OpenShiftin kaltaisia standardointityökaluja, jotka helpottavat tietojen ja tehtävien jakoa. DevOps voi tehostaa kehitysorganisaation työtä 5–40-kertaisesti, sillä sen ansiosta pystytään julkaisemaan huomattavasti laadukkaampia sovelluksia huomattavasti nopeammin. Työtä mitattiin aiemmin tuntikohtaisina kustannuksina, nyt toimintokohtaisina.