Policy-Driven Orchestration for Distributed Application Deployment
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The deployment of distributed applications in cloud computing environments is complex due to the need to balance various policies, such as resource consumption, security, regulatory, and network considerations, which often conflict and require significant administrative resources, making the process time-consuming and difficult to manage.
Innovation Solution
An orchestration system that compiles abstract application and service models into deployable descriptors under the control of a series of policies, maintaining and enforcing dependencies between policies and applications/services, and deploying policies as managed applications themselves, allowing for efficient application of policies through a pipeline or policy chain to generate executable descriptors for deployment on cloud environments.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If manual policy balancing and deployment decision making is performed by operators, then deployment flexibility and adaptability are improved, but administrator resources consumption increases and deployment time increases
Solution Approach 1:
The system enables self-service deployment by allowing application designers to define policies and an orchestrator to automatically execute them. The orchestrator autonomously balances conflicting policies, selects cloud environments, and manages deployment without requiring manual intervention from operators, thus reducing both deployment time and resource consumption while maintaining flexibility through policy-based configuration.
Solution Approach 2:
The system changes the parameters of deployment decision-making from manual operator judgment to automated policy-based rules. By transforming deployment decisions into executable policies with specific parameters and constraints, the system enables automatic balancing of conflicting requirements without human intervention, resolving the contradiction between flexibility and deployment time.
2Productivity
If automated orchestrator systems are used for policy balancing, then deployment speed is improved, but device complexity and system complexity increases
Solution Approach 1:
The system segments the complex deployment orchestration into independent policy modules that can be executed separately. Each policy is a discrete unit that handles specific deployment considerations (resource allocation, security, regulatory compliance), allowing the complex orchestrator to manage high-level coordination while delegating detailed decisions to simpler, specialized policy execution units.
Solution Approach 2:
The system introduces policies as intermediary elements between the deployment request and the cloud environment configuration. These policies act as mediators that translate high-level deployment goals into specific configuration actions, simplifying the orchestrator's role to policy selection and execution while handling the complexity of policy balancing and conflict resolution at the policy level.
3Reliability
If complete recompilation is performed when policies change, then system consistency is improved, but deployment time and processing resources increase
Solution Approach 1:
The system performs preliminary action by pre-compiling and caching policy execution results before actual deployment. When policies change, the system can reuse previously computed results and only recompile affected portions rather than performing complete recompilation, thus maintaining system consistency while reducing processing time and resource consumption.
Solution Approach 2:
The system discards obsolete compilation results when policies change and recovers by selectively recompiling only the affected portions. This approach maintains system consistency by ensuring that only the necessary parts are reprocessed while avoiding the time-consuming complete recompilation of the entire deployment configuration.
Data Source
AI summary
The present disclosure involves systems and methods for compiling abstract application and associated service models into deployable descriptors under control of a series of policies, maintaining and enforcing dependencies between policies and applications/services, and deploying policies as regularly managed policy applications themselves. In particular, an orchestration system includes one or more policy applications that are executed to apply policies to a deployable application or service in a computing environment. In general, the orchestration system operates to create one or more solution models for execution of an application on one or more computing environments (such as one or more cloud computing environments) based on a received request for deployment.


