Today’s businesses demand zero downtime. It’s no more a dream to create/upgrade or destroy infrastructure (e.g. Server) without any service interruption. If you are looking for – “How” then the Answer is immutable infrastructure. It’s a powerful concept which is changing the paradigm in which software is built, deployed and managed in a dramatic way. Let’s understand what exactly it is.
Immutable means something that is created and left unchanged. In this classic paradigm, servers never go under modification after they are provisioned/deployed. In case we need to update, fix or modify them in any way, new servers are built from a common image with the appropriate changes. After validation, they’re again deployed, and the old ones are decommissioned.
In short, the immutable infrastructure approach is used to manage services and deployed where components are replaced rather than changed. Services or applications are effectively redeployed each time wherever any change occurs.
It’s a very powerful concept which provides stability, efficiency, and fidelity to your infrastructure/application through automation and using immutable patterns of programming. But, this can truly be realised in the cloud.
Now Let’s contextualise the disadvantages of mutable to understand the advantages of the Immutable
It’s very normal to see mutable infra. It always suffers from configuration drift because most of the time its configuration remains undocumented. The scaling and recovering of these infrastructures becomes difficult. Any changes will be done in series of approval and review processes. On other side, immutable infrastructure is executed by provisioning brand new server/infra based on a validated and version-controlled image. Because of this, the new deployment doesn’t simply depend on the previous state of a server.
Immutable infra provides a consistent staging environment which is easy to scale, simple to rollback and recover. I hope this gives you a glimpse of II.
So Stop hugging your servers they don’t hug you back
But before you start this using immutable infrastructure, get your environment basic rights. Please refer to Test Environment Management.
About the Author:
Anurag Sharma is a dynamic, ambitious and a result-oriented IT service management professional. He loves challenges and is willing to take risk.
Anurag’s specialities include:
- Test environment management/architect
- DevOps architect/consultant
- I.T. service management
- Test management
- Cyber resilience/security researcher