- Sun 03 October 2021
- misc
It's been about a decade since Randy Bias of CloudScaling first made the "pets vs cattle" metaphor when describing how cloud infrastructure should be managed.
A couple of weeks ago I was talking with a colleague about his organization's infrastructure-as-code journey and he said that they were mostly there but still had a few pets that needed to be properly sorted out.
I asked "are you sure you don't have any barn cats?"
By way of explanation, for readers who don't go to the country much, barn cats are thought of much differently than house cats. They're not "pets" which are part of the family; they're more like hired help. They get some degree of medical care but not to the degree that a pet would, and they tend to live shorter lives. They're working animals; their job is to keep rodents under control on the farm.
If you have a place that has barn cats, no doubt you think of them as livestock.
But when you start talking about putting one down because it's injured rather than making heroic efforts to save it, someone will shout OH MY GOD YOU CAN'T KILL FLUFFY!. Because they think that Fluffy is a pet, not livestock, and are not prepared to think of it in any other way.
You really don't want to discover at the worst possible moment that some of your servers that you thought were livestock are in fact barn cats.