Policy-Driven Orchestration for Distributed Application Deployment

Resolve Bottlenecks,
Find Innovative Solutions
Generate 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

VSEngineering 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

Engineering Contradiction:
Improvedeployment flexibilityVSAvoiddeployment time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

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.

Inventive Principle:
Principle #25Self-service

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.

Inventive Principle:
Principle #35Parameter changes

2Productivity

If automated orchestrator systems are used for policy balancing, then deployment speed is improved, but device complexity and system complexity increases

Engineering Contradiction:
Improvedeployment speedVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

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.

Inventive Principle:
Principle #1Segmentation

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.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If complete recompilation is performed when policies change, then system consistency is improved, but deployment time and processing resources increase

Engineering Contradiction:
Improvesystem consistencyVSAvoidrecompilation time
Core Design Contradiction:
ReliabilityVSLoss of time

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.

Inventive Principle:
Principle #10Preliminary action

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.

Inventive Principle:
Principle #34Discarding and recovering

Data Source

PatentUS10303450B2Systems and methods for a policy-driven orchestration of deployment of distributed applications
Publication Date: 2019.05.28 CISCO TECHNOLOGY INC
  • US10303450B2 patent drawing
  • US10303450B2 patent drawing
  • US10303450B2 patent drawing

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.