Huisdieren versus vee

Ik weet het, het is een vreemde titel. Maar dit gaat meer over het helder krijgen van een mindset.

In de wereld van DevOps en cloud computing is een krachtige metafoor ontstaan om twee verschillende benaderingen van het beheer van servers en applicaties te illustreren: huisdieren versus vee.

In traditionele IT-omgevingen werden servers behandeld als huisdieren. Elk had een unieke naam, vaak verwijzend naar planeten, Griekse goden of tekenfilmfiguren. Wanneer een server een probleem ondervond, werd deze individueel gediagnosticeerd en gerepareerd, net als het verzorgen van een ziek huisdier tot het weer beter werd. Na verloop van tijd konden deze servers evolueren naar licht afwijkende configuraties vanwege handmatige aanpassingen, een fenomeen dat bekendstaat als “configuratiedrift”. Omdat applicaties nauw aan deze servers waren gekoppeld, was elke storing cruciaal. Back-up, noodherstel en oplossingen met hoge beschikbaarheid werden essentieel.

De overgang naar cloudgerichte modellen met de nadruk op schaalbaarheid leidde tot een meer losgekoppelde benadering waarbij servers verwant werden aan vee. In plaats van namen kregen servers ID’s, wat zorgde voor uitwisselbaarheid. Hun kortstondige aard werd een kenmerk, vaak uren of dagen lang, afhankelijk van de belasting en vraag, wat overeenkwam met moderne auto-scaling-mogelijkheden. Als een server problemen vertoonde, werd deze snel vervangen door een nieuw exemplaar. Toepassingen werden veerkrachtig, ontworpen om het verlies van een of meerdere servers te beheren zonder waarneembare verstoringen.

Centraal in de Cattle-benadering staat het principe van Infrastructure as Code (IaC). Hierbij worden handmatige handelingen omzeild ten gunste van het programmatisch beheren van servers en infrastructuurcomponenten met behulp van tools zoals Terraform, AWS CloudFormation en Ansible. Met IaC wordt provisioning geautomatiseerd en blijft infrastructuur consistent en reproduceerbaar. Wanneer infrastructuur wordt weergegeven als code, wordt het gemakkelijker om samen te werken, te beoordelen en te integreren in CI/CD-pijplijnen. Het dient ook als zelfdocumentatie en weerspiegelt altijd de huidige staat van de infrastructuur. Uiteindelijk leidt dit tot kostenbesparingen, omdat omgevingen kunnen worden opgestart en afgebroken op basis van de vraag.

De verschuiving van huisdieren naar vee vertegenwoordigt de bredere beweging in IT van ambachtelijk, handgemaakt serverbeheer naar industriële, geautomatiseerde en schaalbare cloudinfrastructuur. Deze metafoor benadrukt automatisering, veerkracht en de rol van tools als Terraform en vat de essentie van moderne DevOps-praktijken en -principes samen.