Comparison
Cattle not petsvsIn-place upgrade
Cattle not pets
nobody knows the names of the machines, and the fix for a sick one is to terminate it rather than to log in.
The doctrine that infrastructure should be numerous, identical and disposable rather than individually named and nursed. It is a statement about operational posture rather than technology: the test is whether replacing any given machine is a routine, automated non-event. Where it fails is where it always fails — the one host with something on its local disk that nobody has written down.
Full entry →In-place upgrade
you ran the package upgrade on the running fleet, and now the machines differ from each other by whatever failed halfway.
Modifying running machines rather than replacing them. It is faster and it preserves anything local, which is exactly why it accumulates divergence: every partial failure leaves a machine in a state no image describes. It remains the only option for genuinely long-lived stateful hosts, which is where the discipline of configuration management still earns its keep.
Full entry →