Pets versus cattle
In the old way of doing things, servers were always cared for, lovingly nurtured, and given pet names such as Atlantis, Raptor, Battlestar, and so on. These were standalone systems that hosted critical applications, were monitored 24/7, and required administrators to nurse them as soon as issues were identified. The smallest of problems with these systems meant some part of the organization would not function, or external customers would be impacted. The nature of how these systems were perceived and maintained was similar to how we treat pets – with utmost care and affection. You cannot just replace them; instead, you must fix the underlying problem and get them healthy again. The application developers also operated with a similar mindset in terms of rolling out changes to these servers. They would keep track of all changes, execute scripts in a particular order, and define runbooks for all expected scenarios. Such an approach to maintaining critical systems...