Automated Deployment of Distributed Applications via Service Templates

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Manual deployment and management of distributed applications in data centers are error-prone, time-consuming, and costly, as they require coordination among multiple administrators and lack a comprehensive description of the entire distributed service.

Innovation Solution

Automated deployment and servicing of distributed applications using reusable service templates that model hardware and workload definitions, enabling delta-based servicing and customizable workflows for instance-specific customizations, allowing for the management of physical and virtual machines.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If manual deployment and management methods are used, then flexibility in handling complex distributed applications is maintained, but error rates increase and time consumption increases

Engineering Contradiction:
Improvedeployment accuracyVSAvoiddeployment time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system enables self-service through automated service templates that self-describe their deployment requirements, dependencies, and configuration needs. The orchestration engine automatically interprets these templates and executes deployment actions without human intervention, allowing the system to service itself while maintaining high accuracy and reducing time loss.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

Service templates are prepared in advance with complete deployment specifications, dependencies, and configuration parameters. This preliminary action allows the orchestration engine to execute deployments by simply instantiating pre-defined templates, eliminating manual planning and reducing both errors and deployment time.

Inventive Principle:
Principle #10Preliminary action

2Manufacturing precision

If comprehensive service description is implemented, then deployment accuracy improves, but system complexity increases

Engineering Contradiction:
Improveservice deployment precisionVSAvoidsystem complexity
Core Design Contradiction:
Manufacturing precisionVSDevice complexity

Solution Approach 1:

The comprehensive service description is segmented into modular service templates, each encapsulating specific deployment information for particular services or components. This segmentation allows precise control over individual services while keeping the overall system manageable through independent, reusable template units.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Service templates are designed as universal, reusable artifacts that can describe multiple aspects of service deployment (configuration, dependencies, resources, monitoring) in a single standardized format. This multi-functionality reduces system complexity by eliminating the need for separate description mechanisms for different deployment aspects.

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

3Productivity

If automated orchestration is implemented, then productivity increases, but adaptability to custom scenarios decreases

Engineering Contradiction:
Improvedeployment efficiencyVSAvoidcustomization capability
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The orchestration system is designed to be dynamic, allowing service templates to be customized for different scenarios while maintaining automated execution. The system can adapt to custom requirements by instantiating templates with different parameters or creating new templates that extend existing ones, preserving both automation and adaptability.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

Service templates utilize configurable parameters that can be adjusted to accommodate different deployment scenarios without changing the core template structure. This parameter-based customization allows automated orchestration to handle diverse custom scenarios by simply modifying parameter values rather than requiring manual intervention or complex template modifications.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS10725769B2Automated deployment and servicing of distributed applications
Publication Date: 2020.07.28 MICROSOFT TECHNOLOGY LICENSING LLC
  • US10725769B2 patent drawing
  • US10725769B2 patent drawing
  • US10725769B2 patent drawing

AI summary

Deployment and servicing tasks associated with multi-tier, distributed applications, application environments and data centers are automated so that a person does not have to manually perform these tasks. All of the information describing and defining the distributed service is modeled and stored in a re-useable service template that can be used to drive an automated system to programmatically deploy and manage the service over time. Deployment and servicing of a distributed application can be automated using re-useable models that capture hardware and workload definitions. The re-useable models in the form of service templates enable delta-based servicing of the application. The service can be deployed to one or more physical machines, one or more virtual machines or to a combination thereof. A default deployment plan can be customized with instance-specific customizations of service parameters.