Sådan fungerer OpenShift
Moderne programmering: Brug Kubernetes-teknologi til at opdele applikationen i mikrodele baseret på støttefunktioner, og placér dem i containere. Er du med? Bare rolig, vi forklarer, hvordan det hænger sammen.
PostNord Strålfors er gået over til en ny platform til softwareudvikling: Red Hats OpenShift. Det er en Platform as a Service (PaaS), hvor man kan udvikle og drive programmer, og det giver mange fordele for vores kunder. Sådan fungerer det:
Systemet er baseret på open source-softwaren Kubernetes. Det er et containerorkestreringssystem, der – følg nu godt med – bruges til at opdele især software i mikrodele for at kunne tilpasse skalerbarheden efter behov. Tabte du tråden? Det lyder faktisk mere kompliceret, end det er. Lad os sammenligne det med bilproduktion.
Opdeler software i støttefunktioner
Når der skal bygges en ny bilmodel, behøver projektteamet ikke selv at udvikle motor, rat og hjul fra bunden – de forskellige dele fremstilles af eksperter på de enkelte områder. Det er det samme, når man udvikler programmer i den Kubernetes-baserede OpenShift-platform. Når der skal udvikles et nyt program, bygger man ikke det hele op fra bunden. Man opdeler i stedet applikationen i dens enkelte mikrodele – støttefunktioner – og udvikler dem hver for sig som små selvstændige støtteapplikationer. Det betyder, at man med tiden får opbygget et bibliotek med forskellige færdige støttefunktioner, som derefter kan genbruges i andre programmer.
– Med Kubernetes-teknologien behøver man ikke genopfinde hjulet hver gang. I stedet for at udvikle hele programmer, der skal kunne mange ting, udvikler vi hver funktion for sig som en selvstændig applikation, der lægges i OpenShift. Hvis vi har brug for en funktion i et program, kan vi bruge en støtteapplikation, der allerede er udviklet, siger Jonas Westlund, udviklingschef i PostNord Strålfors.
– Med OpenShift kan vi skalere op og ned, så meget vi har brug for, i en time eller et minut, siger Jonas Westlund.
Hemmeligheden ligger i containeren
Det magiske ved OpenShift er, at der bruges såkaldte containere. En container indeholder en helt fritstående og uafhængig mikroversion af et operativsystem. I hver container udvikles og udføres der en enkelt støttefunktion. Forskellen er stor i forhold til traditionel udvikling, hvor man programmerer på en virtuel server. Med en sådan løsning kan der opstå problemer, f.eks. hvis den virtuelle server er placeret på udviklerens egen computer.
– Hvis min kollega og jeg sidder med forskellige bærbare computere, og den ene har opdateret sit styresystem og sine funktionsbiblioteker, mens den anden ikke har, kan der opstå fejl, siger Jonas Westlund og fortsætter:
– Når alle udviklere arbejder i den samme container, er alt identisk overalt, og så opstår der ikke problemer. Det sparer tid og giver bedre kvalitet og større driftssikkerhed.
En anden fordel ved containere er, at de skaber stor fleksibilitet.
– Med en containerplatform kan vi oprette containerklynger i vores egne datacentre og derefter flytte dem efter behov. Det er en stor fordel, hvis f.eks. en kunde ønsker at køre sine programmer i et bestemt geografisk område, siger Sophia Schwanborg, enterpricearkitekt i PostNord Strålfors.
Skalerbar efter behov
Da OpenShift kører via clouden eller en privat cloud, kan alle programmer eller støttefunktioner tildeles mere computerkraft, lige når der er brug for det. Og hvis der skal udvikles en ny støttefunktion, er processorkapacitet og lagerplads til en ny container kun et tastetryk væk.
– Med OpenShift kan vi skalere op og ned, så meget vi har brug for, i en time eller et minut, siger Jonas Westlund.