De tijd dat we als IT-afdeling wisten wat we over een jaar moeten leveren ligt gelukkig achter ons. We leveren nog maar één product: flexibiliteit. De beste manier om dat te doen is door in DevOps-teams agile te werken en continu nieuwe features te leveren aan onze business units. Ik werk op dit moment op de afdeling Cloud Integration, waar ik verantwoordelijk ben voor het ontwikkelen van Azure cloud capabilities die voldoen aan de eisen van NN Group.

Productiviteit

Om met voldoende snelheid te kunnen blijven leveren moeten we ervoor zorgen dat er aan de geleverde diensten geen operations-werk meer hoeft te worden gedaan. En om de snelheid er tijdens het ontwikkelen in te houden moeten we ervoor zorgen dat alle releases automatisch gebouwd, getest en uitgerold kunnen worden. Door veilig te werken kunnen we continu testen en uitrollen. We noemen dit Continuous Integration/Continuous Deployment (CI/CD). Applicatie-ontwikkelaars zijn hier al een tijdje mee bezig, maar voor Infrastructuur is dit een redelijk nieuw terrein. We zijn bij NN Group bezig om met de in de (open source) markt beschikbare tooling zogenoemde pipelines te bouwen, zodat we nieuwe diensten in de Public Cloud kunnen uitrollen. Dit is heel uitdagend, ook omdat we tegen issues aanlopen die direct aandacht vragen.

Azure Machine Learning

Onlangs deed zich zo’n issue voor rondom Azure Machine Learning. Met deze cloud-service van Microsoft kun je automatisch modellen ontdekken in grote hoeveelheden data. Deze modellen zijn doorgaans zo complex dat je ze niet handmatig kunt ontdekken. Op basis van de gevonden modellen kunnen we voorspellingen doen.

Daarbij moeten we continu alert zijn, dat onze werkzaamheden niet in strijd zijn met ons privacy- en veiligheidsbeleid. Daarom verlenen we alleen autorisaties voor Azure op basis van rollen, die gekoppeld zijn aan groepen en gebruikers. In Azure zijn echter geen standaardrollen beschikbaar die wij kunnen gebruiken voor de benodigde autorisaties, waarmee je toegang hebt tot de nodige bronnen. Daarom hebben we nieuwe rollen gecreëerd voor het Data Tech Team en voor de data-analisten.

Snelheid, maar wel kostenefficiënt

Door de hoge mate van automatisering van onze IT-uitrol kunnen we onze business units snel nieuwe IT-omgevingen leveren. Ons streven is ervoor te zorgen dat een klant via selfservice de omgeving kan bestellen, en dat er zonder handmatige acties een nieuwe omgeving klaargezet wordt, waarmee de klant meteen aan de slag kan. Als de omgeving eenmaal is uitgerold schalen onze services automatisch op en af, waardoor er geen onnodige IT-uitgaven zijn. Aangezien we ook meteen de beveiliging van de omgeving moeten meeleveren is dit nog een behoorlijke uitdaging!

Fail fast, learn and adapt

Plannen niet tot in het oneindige uitkauwen is de enige manier om onszelf te blijven verbeteren en steeds sneller meer diensten te kunnen blijven ontwikkelen. Een idee dat levensvatbaar en nuttig lijkt gaan we realiseren. Als we daar niet in slagen, of als het toch niet zo’n goed idee blijkt te zijn, hebben we in ieder geval veel geleerd en nieuwe ideeën opgedaan. Om nieuwe diensten te kunnen ontwikkelen zorgen we ervoor dat we goed op de hoogte zijn én blijven van alle ontwikkelingen in zowel de Public Cloud als de tooling die gebruikt kan worden om infrastructuur automatisch uit te rollen en te beheren. Dit maakt ons DevOps-team een zeer uitdagende plek om te werken!

Koen van Amerongen
DevOps Engineer Cloud Infrastructure