Opinnäytetyön aiheena oli KPI-mittarien määritteleminen ja automatisoidun mittausprosessin luominen OpenShift Container Platform -konttialustalle. KPI-mittari on käytännössä mikä tahansa numeroilla ilmaistava arvo, esimerkiksi prosessista tai järjestelmästä, jonka muutosta voidaan seurata vertaamalla nykyisiä arvoja menneisiin arvoihin. Konttialusta tarkoittaa ohjelmistoa, jonka sisällä muita ohjelmia sekä niiden vaatimia kirjastoja voidaan ajaa eristetysti eri konttien sisällä. OCP-konttialusta koostuu tyypillisesti useammasta eri laitteesta, jonka sisällä konttien suorittaminen jaetaan laitteiden kesken. Nämä laitteet voivat olla joko fyysisiä tai virtuaalisia palvelimia.
KPI-mittarien valinta ja määrittely
Ensimmäinen vaihe KPI-mittareiden määrittelyssä oli tunnistaa ne mittarit, jotka ovat keskeisiä OCP-alustan suorituskyvyn ja käytettävyyden seurannassa. Nokian vaatimusten ja OCP-alustan asiantuntijoiden suositusten perusteella valittiin kaksi keskeistä mittaria: alustan uudelleenkäynnistysaika ja asennusaika. Kolmantena mittarina oli alustan päivitysaika, mutta sen kehitysvaiheen keskeneräisyyden vuoksi se jätettiin pois tämän työn laajuudesta.
Uudelleenkäynnistysaika mittaa, kuinka kauan OCP-alusta kestää käynnistyä uudelleen esimerkiksi huoltokatkon jälkeen. Tämä mittari on tärkeä, koska lyhyempi uudelleenkäynnistysaika tarkoittaa vähemmän seisokkeja ja parempaa käytettävyyttä.
Asennusaika puolestaan mittaa, kuinka kauan alustan asentaminen kestää uudesta asennuksesta tuotantokäyttöön. Tämä mittari on kriittinen, koska se vaikuttaa alustan käyttöönoton nopeuteen ja tehokkuuteen.
Automatisoitu mittausprosessi
Kun mittarit oli valittu, seuraava vaihe oli kehittää automatisoitu järjestelmä näiden mittarien seuraamiseksi. Tämä järjestelmä rakennettiin Robot Framework -automaatiokielellä, joka oli jo käytössä Nokian sisällä. Robot Frameworkin avulla luotiin työkalu, joka kerää mittaustuloksia eri järjestelmistä, muokkaa ne sopivaan muotoon ja tallentaa ne tietokantaan.
Tekniset ratkaisut
Mittausjärjestelmän tekninen toteutus sisälsi useita vaiheita. Ensiksi asennettiin ja konfiguroitiin InfluxDB-tietokanta ja Grafana-visualisointialusta. InfluxDB toimii tietokantana, johon mittaustulokset tallennetaan, ja Grafana puolestaan visualisoi nämä tulokset käyttäjäystävällisessä muodossa.
Robot Framework -työkalu hyödyntää useita rajapintoja, kuten Jenkins, Redfish ja OpenShift mittaustulosten keräämiseen. Kuvassa 1 on esitetty käyttäjän ja eri järjestelmien välistä suhdetta. Työkalu hakee ja luo mittausdataa näiden rajapintojen kautta, tallentaa tiedot InfluxDB-tietokantaan, ja Grafana-alusta automaattisesti noutaa, muokkaa ja visualisoi datan halutussa muodossa. Tämä mahdollistaa reaaliaikaisen seurannan ja analysoinnin, mikä auttaa havaitsemaan ja ennakoimaan mahdolliset suorituskyky- ja käytettävyysongelmat.
Tulokset ja johtopäätökset
Lopputuloksena kehitetty työkalu osoittautui toimivaksi ja yhteensopivaksi Nokian olemassa olevien järjestelmien kanssa. Työkalu pystyi tuottamaan halutut mittaustulokset ja oli helposti laajennettavissa uusien mittareiden lisäämistä varten. Grafana-alustalla visualisoidut mittaustulokset olivat selkeitä ja helposti tulkittavissa, mikä mahdollisti tehokkaan seurannan ja analyysin. Kuvasta 2 nähdään, että mittaustulokset ovat eroteltavissa ja verrattavissa eri laitteistojen kesken, mikä oli tärkeä tavoite työn tulosten kannalta.
Mittausjärjestelmän avulla voidaan tulevaisuudessa ennaltaehkäistä mahdollisia OCP-alustan suorituskyky- ja käytettävyysongelmia vertaamalla mittaustulosten muutoksia. Tämä parantaa alustan luotettavuutta ja käytettävyyttä, mikä on kriittistä tuotantoympäristöissä. Tutkimuksen pohjalta suositellaan laajentamaan mittausprosessia myös alustan päivitysaikoihin, kun päivitysprosessi on kehittyneempi.
Yhteenveto
Tässä opinnäytetyössä toteutettiin onnistuneesti KPI-mittarien määrittely ja automatisoidun mittausprosessin luonti OpenShift Container Platform -alustalle. Projekti toteutettiin yhteistyössä Nokian kanssa, ja sen tuloksena syntynyt mittausjärjestelmä on toimiva, laajennettavissa ja yhteensopiva Nokian järjestelmien kanssa. Tämä työ tarjoaa hyvän pohjan tulevaisuuden kehitykselle ja mahdollistaa OCP-alustan suorituskyvyn ja käytettävyyden tehokkaan seurannan.
Tämä artikkeli pohjautuu opinnäytetyöhön, jonka toteutti Jan Mäkelä ja ohjasi Antti Virtanen. Opinnäytetyö löytyy osoitteesta: https://urn.fi/URN:NBN:fi:amk-2024052917401