Vier slimme manieren om DevOps-kosten te verlagen

Vier slimme manieren om DevOps-kosten te verlagen

Elk DevOps-team wil meer doen met minder middelen. Maar soms zit de technologie of bedrijfscultuur in de weg. Met een slimme aanpak en zorgvuldige planning, lukt het toch vaak de  DevOps-kosten te verminderen. Bijvoorbeeld met de volgende praktische maatregelen:

Reduceer wildgroei

Developers zijn dol op de cloud. Daarmee kunnen ze nieuwe instances creëren, snel toegang krijgen tot zeeën aan opslagcapaciteit en efficiënt te werk gaan, zonder kostbare implementaties en investeringen in hardware en software. Maar de cloud brengt ook problemen met zich mee. DevOps-teams moeten onder andere uitkijken voor wildgroei aan instances en overschrijdingen in de DevOps-kosten. Deze kunnen ingedamd worden door alle activiteiten in de cloud te bewaken. Dat is met name belangrijk voor SaaS-accounts die in een paar seconden kunnen worden aangemaakt, maar die vervolgens nooit gebruikt worden of tegen het development-budget worden afgezet.

Automatisering van kernprocessen is ook een oplossing. Dat ondervond Substrakt Health, een aanbieder van zorgtechnologie, toen het een zelfschalende CI/CD-cluster inrichtte. Hiermee kan het bijvoorbeeld steeds wanneer er nieuwe code wordt gepusht, tests uitvoeren. GitLab CI hielp het bedrijf om deze workload te verdelen tussen verschillende servers en de capaciteit waar nodig op te voeren of te reduceren. Substrakt Health bespaarde dankzij deze aanpak maar liefst 90% van de kosten.

Less is more

Het aanbod van DevOps-tools is divers maar als je met teveel tools aan de slag gaat, zijn er snel overschrijdingen van het projectbudget. Want er moet niet alleen rekening worden gehouden met de aanloopkosten, maar ook met onderhoud en upgrades in een later stadium. Verder kan het gebruik van complexe tools het team ertoe dwingen om gespecialiseerde ontwikkelaars aan te trekken, waardoor de DevOps-kosten snel oplopen. In onze ervaring is de toolchain het beste argument voor de stelling ‘less is more’.

Een organisatie die deze optimalisatieslag wist te maken is Goldman Sachs. Het werkte met een toolchain die ze zelf ontwikkeld hadden maar toch had het bedrijf behoefte aan een sneller ontwikkelingsproces. Het DevOps-team stapte over op één toolchain met integrale mogelijkheden. Daarmee kon Goldman Sachs het tempo van zijn belangrijkste release-cyclus opvoeren van eens in de twee weken tot enkele minuten.

Technologie en bedrijfscultuur onder de loep

Sommige organisaties kunnen met een schone lei starten voor wat betreft de planning van hun DevOps-strategie. Maar voor de meeste teams is het nodig om slimmer met legacy toolchains en testfunctionaliteiten om te gaan. Helaas kan deze verstandige aanpak in een later stadium nog altijd risico’s en kosten met zich meebrengen.

Het transformeren van legacy systemen tot gestroomlijnder DevOps-oplossingen neemt niet alleen veel tijd in beslag, maar kan ook ten koste gaan van het uiteindelijke doel: snellere releases van kwalitatief hoogwaardige software. Legacy systemen zitten vaak modernisering in de weg vanwege hun enorme omvang. Met miljoenen regels code is het niet makkelijk om af te stappen van kostbare handmatige tests. In dit soort gevallen kan het nodig zijn om de technologie en bedrijfscultuur opnieuw onder de loep te nemen.

De Ask Media Group ging deze uitdaging aan. Het koos voor nieuwe technologie en moedigde zijn programmeurs en testers aan om nieuwe werkwijzen te omarmen. Dankzij deze transformatie kon het concern voor het ontwikkelingsproces afstappen van grote monolitische applicaties naar microservices.

De sleutel tot deze strategische transformatie was de ontwikkeling van een onderliggende architectuur op basis van containers. De Ask Media Group maakte daarvoor gebruik van GitLab Runners, Kubernetes, Docker, Linkerd en AWS. Ask’s developer zorgden niet alleen voor architectuurinnovatie, ze kozen ook voor een andere aanpak. Ze gebruiken GitLab nu als enige mechanisme voor het configureren, bouwen, testen en beheren van de uiteenlopende microservices.

Automatiseer testprocessen

Volgens het 2019 Global Developer Report: DevSecOps van GitLab zijn developers het eens met de stelling dat het testen van software de grootste belemmerende factor is voor bedrijfsinnovatie. Het automatiseren van diverse testprocessen kan een praktische oplossing zijn. Een goed voorbeeld hiervoor geeft Free Code Camp. Zij automatiseerden testprocessen en maakten daarmee een einde aan terugkerende handmatige taken, versnelden het ontwikkelproces en kregen meer grip op testprocessen.

Het is mogelijk om snellere resultaten te boeken en tegelijkertijd de DevOps-kosten in te dammen. Een heldere strategie, creativiteit, praktische aanpassingen van de bedrijfscultuur en aandacht voor detail kunnen wonderen doen.

 

Jason Lenny, Director of Product, CI/CD, GitLab