Instance Manager Broker for Dynamic Service Instance Provisioning
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Microservice-oriented application platforms face challenges in dynamically managing service instances for multi-tenancy scenarios, where static binding is insufficient for applications requiring dynamic instance creation and switching at runtime.
Innovation Solution
The introduction of an Instance Manager Broker and Instance Manager, which expose a REST API for dynamic service instance creation and credential management, allowing applications to dynamically bind to and switch between service instances managed by the Instance Manager, leveraging existing Service Broker interfaces for service instance creation and binding.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If static binding of service instances is used at deployment time, then system simplicity is maintained, but dynamic service instance provisioning for multi-tenancy is insufficient
Solution Approach 1:
An Instance Manager component is introduced as an intermediary between applications and service brokers. The Instance Manager receives runtime requests from applications for service instance credentials, manages the creation and binding of service instances dynamically, and coordinates with service brokers to provision instances on-demand. This mediator handles the complexity of dynamic provisioning while presenting a simplified interface to applications.
Solution Approach 2:
The system transitions from static service instance binding at deployment time to dynamic service instance provisioning at runtime. The Instance Manager enables applications to request service instance credentials dynamically when tenants are added or when switching between tenants, allowing the system to adapt to changing requirements without redeployment.
2Adaptability or versatility
If additional service instances are created at runtime for new tenants, then multi-tenancy capability is enabled, but instance creation time and system overhead increase
Solution Approach 1:
The Instance Manager is pre-configured with service broker information and binding templates during system initialization. When a new tenant is added, the Instance Manager can quickly provision service instances by leveraging pre-established configurations and relationships with service brokers, reducing the time required for runtime instance creation.
3Adaptability or versatility
If applications are bound to fixed service instances, then binding simplicity is maintained, but runtime switching between instances is not possible
Solution Approach 1:
The Instance Manager acts as a credential management intermediary that applications interact with instead of directly binding to service instances. Applications request credentials from the Instance Manager, which handles the complexity of instance selection and binding. This maintains operational simplicity for applications while enabling runtime switching capabilities through the mediator's intelligence.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
Registering a Service Broker and an Instance Manager Broker with a Controller. Receiving a request at the Controller from a Deployer associated with an Application to bind a Service Instance of an Instance Manager to an Application. Forwarding the received request from the Controller to the Instance Manager Broker to instantiate the Service Instance of the Instance Manager. Forwarding credentials returned by the Instance Manager Broker from the instantiated Service Instance of the Instance Manager from the Controller to the Deployer.