Skip to main content

Immutability

PackageServerInstanceProvisionServerInstancePackageNewServerInstanceProvisionServerInstanceServiceServiceProvisionServerInstance

The concept behind immutability is the idea of recreation of resources instead of changing them in-situ.

Benefits

The application of concept of immutability for infrastructure yields the following benefits:

  • Clear identification of state
  • No configuration drift
    • unplanned changes over time
    • "quick fix"
  • Trivial to automate
  • "Phoenix" vs "Snowflake"
  • "Pet" vs "Cattle"

To find out more about the concept of immutability refer to the following paper of the COTB authors:

[Volpert et al.] Holistic Life-Cycle Management of Cloud-To-Thing Compute Entities. Percom IEEE"

Vertical Immutable infrastructure

Transferring this concept to the holistic perspective of a multi-layer infrastructure is a fundamental concept of COTB. We regard every layer to be immutable. As a consequence, every layer needs to have is state strictly separated and provide an API as described in the architecture section