We treat all our virtual servers as immutable. When we upgrade our system we create brand new servers and destroy the old ones, rather than upgrading them in-place. This is a logical extension of the phoenix server approach in which servers are regularly recreated from scratch. Our adoption of immutable servers was inspired by an anecdote that when physical servers play up in Google’s data centers
![Rethinking building on the cloud: Part 4: Immutable Servers](https://cdn-ak-scissors.b.st-hatena.com/image/square/8caf34963e209f1b03a9fbd40a456bbbc4cb7af2/height=288;version=1;width=512/https%3A%2F%2Fwww.thoughtworks.com%2Fcontent%2Fdam%2Fthoughtworks%2Fimages%2Fphotography%2Fmeta%2Finsights%2Fin_meta_blogs.jpg)