This page is part of my personal knowledge database, that helps me to store and navigate my learnings.
Read on here for details

Cattle vs Pets

The term Cattle vs Pets describes the paradigm switch of how infrastructure operators look at singular servers and by extension whole infrastructure setups.

In the “old days”, each server was named, individually and lovingly configured. Knowledge how the system was setup and configured often only located in the head of one or a few individuals. In case of disaster, restoring such systems could take days or even weeks. These are the Pets.

Contrary, modern operations building on Infrastructure as Code and OS Configuration Management consider single servers as “nameless” compute units, that can be re-created on demand (and often are multiple times per day/hour/..) based on revisioned configuration and automation tooling. These are the Cattle.

Risk

While the Cattle strategy is generally advised within Programmable Infrastructure, not only because it fosters Immutable Infrastructure, there is also a risk of a Cobra Effect, that lies in operator laziness towards understanding the cause of failing systems. This can breed Learned Helplessness (“the systems are always going down after 30min, they are automatically re-created, so who cares?”) and blindness towards accumulating Technical Debt.

Sources