Do you have long-running servers? yes, keep reading.
What is a long-running server?
A long-running server is a compute resource that is hardcoded to perform a certain task, the caveat is that this resource can be changed over time and re-configured the state of the runtime.
Why do you care about changing the runtime state?
A few issues may pop when using mutable servers:
- who knows the current state of the servers?
- how do you know if things are still working as intended?
- how do you know who logs in?
- how do you keep track of who did things on the servers?
- how do you keep the consistency of your servers?
Wait! don’t answer those questions because you will probably have a sophisticated answer unless you have a system that is working for you and is proven to manage a large number of servers.
Enter Immutable servers (compute resources)
Now that we have established the issues with long-running servers let’s talk about Immutable servers AKA immutable compute resources. the core concept is that immutable servers don’t accept changes thus making the state of the current runtime precise to what you wanted to be deployed.
by using this method of immutable servers you can expect the same result of operation across your servers or compute resources.