Posts

Showing posts from January, 2023

Cattle and Pets

Image
A term we hear a lot is systems are either Cattle or Pets.  But what does this really mean? What makes a system a “pet“ and what makes a system “cattle” and why is everyone trying to have cattle? Aren’t we all supposed to be eating less meat? Okay so it has nothing to do with meat, and I am sure, as I explain it many farmers would disagree with the analogy, however like it or not, it does seem to have become a term that is ingrained in IT today. What are “Cattle” Systems? For a system to be considered “Cattle” it must be deployable and rebuildable, so, for example, it is created using something like Terraform, it is configured by something like Puppet and it contains no specific data.  To use another buzzword, it should be ephemeral. This means it is replaceable/deployable automatically.  And ideally, it is part of a group, even better a load-balanced or auto-scaling group so an instance can disappear and be replaced with no interruption of service.  It can appear to...