Different microservices can require different extents of isolation. Deploying multiple microservices in an environment that does not meet all of their isolation requirements can result in a number of problems associated with security, regulation, auditing, licensing, availability, and performance.
Formal isolation levels are defined and assigned to microservices. The microservices are then deployed in environments that leverage logical and physical isolation mechanisms to support the required isolation levels.
Different infrastructure components, such as the physical server, virtual server and container are utilized with appropriate deployment models to meet the required isolation levels.
Formal isolation levels are defined and assigned to microservices and available deployment models. This ensures that each microservice is implemented using an appropriate deployment model that meets its required isolation level. Components belonging to a given microservice must also be deployed inside the microservice’s isolation boundary.
This pattern can be applied using a number of pre-defined isolation levels, each with its own deployment environment, as explained and illustrated in the complete pattern description.