Cloud Deployment Manifest for Multi-Tier Application Coordination

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current deployment tools for multi-tier applications in cloud computing environments are inefficient due to reliance on custom scripts, heavy network bandwidth usage, and lack of automation, leading to challenges in collaboration between developers and system administrators for determining deployment requirements.

Innovation Solution

A deployment system that allows developers to create application blueprints defining the structure and dependencies of applications, generating a deployment plan that is distributed across virtual machines, ensuring tasks are executed in a coordinated manner to comply with specified dependencies, thereby enabling efficient deployment across different cloud environments.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional deployment tools with centralized mechanisms are used, then deployment coordination is achieved, but network bandwidth is excessively consumed and resource contention occurs at the central point

Engineering Contradiction:
Improvedeployment coordinationVSAvoidnetwork bandwidth
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent segments the centralized deployment mechanism into distributed deployment agents deployed across multiple virtual machines. Each agent independently executes deployment tasks locally, eliminating the need for continuous centralized polling and reducing network bandwidth consumption while maintaining deployment coordination through peer-to-peer communication.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a deployment manifest as an intermediary artifact that contains pre-defined deployment instructions, dependencies, and configurations. This manifest serves as a mediator between the deployment system and target virtual machines, enabling automated deployment without requiring continuous centralized coordination or excessive network communication.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If custom scripts and property files are used for deployment, then deployment flexibility is achieved, but device complexity and difficulty of operation increase

Engineering Contradiction:
Improvedeployment flexibilityVSAvoiddeployment tool complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent creates a universal deployment framework that handles multiple deployment scenarios through a single standardized interface. The deployment manifest format and agent architecture provide multi-functional capabilities to deploy different application types (multi-tier applications, monolithic applications) across various virtualized environments using the same toolset, eliminating the need for custom scripts for each scenario.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The patent enables deployment flexibility through parameterized deployment manifests that allow configuration of deployment properties without changing the underlying deployment logic. Users can modify deployment behavior by changing parameters in the manifest file (such as virtual machine specifications, software versions, deployment timing) rather than writing custom scripts, thus maintaining flexibility while reducing complexity.

Inventive Principle:
Principle #35Parameter changes

3Reliability

If continuous polling is used to check readiness for execution, then task coordination is achieved, but network bandwidth is excessively consumed

Engineering Contradiction:
Improvetask coordinationVSAvoidnetwork bandwidth
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent replaces continuous polling with periodic status reporting by deployment agents. Agents periodically report their execution status and readiness to the deployment system at predetermined intervals or upon task completion, rather than being continuously polled. This reduces network bandwidth consumption while maintaining reliable task coordination through structured periodic communication.

Inventive Principle:
Principle #19Periodic action

4Reliability

If developers and system administrators use different views of application deployment, then specialized expertise is utilized, but collaboration difficulty increases

Engineering Contradiction:
Improvedeployment accuracyVSAvoidcollaboration ease
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The patent merges the developer's application-centric view with the system administrator's infrastructure-centric view into a unified deployment manifest. The manifest combines application deployment requirements (from developers) with virtual machine and infrastructure specifications (from system administrators) into a single standardized document that both parties can collaborate on using common terminology and concepts, improving collaboration while maintaining deployment accuracy.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS11941452B2System to generate a deployment plan for a cloud infrastructure according to logical, multi-tier application blueprint
Publication Date: 2024.03.26 VMWARE INC
  • US11941452B2 patent drawing
  • US11941452B2 patent drawing
  • US11941452B2 patent drawing

AI summary

A deployment system enables a developer to generate a deployment plan according to a logical, multi-tier application blueprint defined by application architects. The deployment plan includes tasks to be executed for deploying application components on virtual computing resource provided in a cloud infrastructure. The deployment plan includes time dependencies that determine an execution order of the tasks according to dependencies between application components specified in the application blueprint. The deployment plan enables system administrators to view the application blueprint as an ordered workflow view that facilitates collaboration between system administrators and application architects.