Onze IT-strategie is om zoveel mogelijk processen te automatiseren

 

Onze technisch consultant Nico Agten werkt bij een grote internationale financiële dienstverlener als Product Owner van het Windows platform. Hij verzorgt de aansturing van een agile team met technisch specialisten, waarbij men zich vooral richt op het automatiseren van zoveel mogelijk processen met behulp van Infrastructure as Code. In dit interview vertelt hij meer over zijn dagelijks werk en waar hij zich mee bezig houdt.

 

Wat is het voordeel van Infrastructure as Code (IaC)?

Tijdsbesparing. Door gebruik te maken van IaC zorg je ervoor dat je met een druk op de knop een heel proces start. Voorheen werden taken handmatig uitgevoerd waarbij de kans op fouten veel groter is. Mensen maken nu eenmaal fouten. Met een geautomatiseerd proces is dat verleden tijd. Alles wordt telkens op uniforme wijze en snel uitgevoerd. Zo hebben we bijvoorbeeld de aanvraag van een nieuwe server geautomatiseerd. Via een service portal vult de aanvrager een digitaal formulier in. Aan de hand van een menu kan men een aantal keuzes maken, zoals hoeveel geheugen, aantal CPU’s en dergelijke. Na approval wordt deze server geautomatiseerd uitgerold. De doorlooptijd is nu gereduceerd van een aantal dagen naar slechts een half uurtje per server.

 

Hoe automatiseer je de processen met Infrastructure as Code?

Er komt veel techniek bij kijken om een proces te automatiseren We doen dit met behulp van Azure DevOps en Ansible voor Windows. Hierin programmeren we in feite wat er allemaal uitgevoerd moet worden om bijvoorbeeld een aangevraagde server volgens specificaties uit te rollen. Dit is een lange reeks van afhankelijkheden en acties die via een CI/CD-pipeline in Azure worden uitgevoerd. Programmeren is een secuur en ingewikkeld klusje. Je mag niks over het hoofd zien en het moet perfect in de juiste volgorde uitgevoerd worden. Maar als dit eenmaal getest is en het goed werkt, dan hoef je er verder geen zorgen meer over te maken. Bij het aftrappen van de Azure Pipeline wordt alles strak en uniform uitgevoerd. Snel en foutloos.

 

Wat automatiseer je dan allemaal?

Onze strategie is om zoveel mogelijk processen te automatiseren. En dat zijn er nogal wat. Niet alleen het uitrollen van een nieuwe server, maar ook het decommissioning proces hoort daarbij. Zo wordt alles weer netjes opgeruimd, waaronder firewall rules, DNS entries, etcetera. Verder kunnen we bijvoorbeeld automatisch resources van een server aanpassen en servers scheduled herstarten.

 

We zetten hoog in op configuratie management, waaronder het afdwingen van een desired state configuration (DSC) op alle Windows servers. Zo kunnen we bijvoorbeeld op alle print servers controleren of de Print Spooler service aanstaat. Op niet-printservers controleren we of de Print Spooler service ook daadwerkelijk uitstaat. Hiermee reduceer je de attack surface. Een ander goed voorbeeld hiervan is het afdwingen van een CIS-security baseline op alle servers.

 

Gebruik je nog andere tools voor Infrastructure as Code?

Jazeker. We gebruiken naast closed software ook een aantal open source producten. Voorbeelden hiervan zijn Packer, Chocolatey, Ansible en Ansible Tower. Deze open source technologieën worden door een community van gebruikers verder verbeterd of door fabrikanten zoals Red Hat. Geregeld komen we zelf bugs tegen in Ansible of andere tools die we gebruiken. We raadplegen dan via GitHub het issuelog om te controleren of deze bug al bekend is en of deze inmiddels is opgelost. Soms lossen we trouwens zelf issues op. Ik heb namelijk een achtergrond op het gebied van softwareontwikkeling. Zo draagt het team dat ik aanstuur ook zijn steentje bij aan de open source community. We hebben bijvoorbeeld zelf code toegevoegd aan een DSC-module om SQL-Server te beheren. We automatiseren dus niet alleen Windows maar vaak ook applicaties die op ons platform draaien waaronder SQL-Server.

 

Wat zijn de plannen voor het komend jaar?

We gaan andere infra-teams helpen met het automatiseren van hun processen. Er staan ook nog onderwerpen in onze backlog die we willen oppakken. Een van onze wensen is om geautomatiseerd onze Windows build te testen. Dus in plaats van manueel te testen automatiseren we ook onze test methodes. Met Ansible Molecule en linting hebben we al een stap in die richting gezet. Ansible Molecule is een compleet test framework waarbij je jouw Ansible role direct kunt testen. We rollen een nieuwe test server in een test omgeving uit, voeren vervolgens een aantal tests uit en na handmatige controle en approval wordt de test server automatisch weer verwijderd.

 

Dit wil toch iedereen? Wat is dan nu de uitdaging voor bedrijven?

Kennis en capaciteit van professionals. Beheerders (Ops) worden ontwikkelaars (DevOps) en dienen zich deze nieuwe werkwijze eigen te maken wat niet voor iedereen even gemakkelijk is in het begin. Er is soms ook weerstand binnen bepaalde teams. Men vreest dat hun job weg geautomatiseerd wordt. Die vrees is ongegrond.

 

Automatisering stelt je eenvoudigweg in staat om meer te bereiken en als je als professional anderen leert om efficiënter te werken zal je van onschatbare waarde worden voor je bedrijf. Abstraheer, verminder de complexiteit, standaardiseer en automatiseer.

 

Hierdoor stel je jezelf en anderen in staat om aan moeilijkere problemen te werken in plaats van steeds weer dezelfde handmatige taken uit te voeren. En er is ook altijd iemand nodig om de automatisering te onderhouden. Er blijft genoeg werk aan de winkel!

×

Heb je een vraag?

Klik hieronder om ‘m snel te stellen aan ons via WhatsApp!

×