Virtual Machine Dependency Management via Service Provisioning Metadata

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

As computing environments with virtual machines grow in complexity, existing technologies struggle to efficiently express and manage dependencies between virtual machines and the virtualization platform, leading to inefficiencies in handling large dependencies.

Innovation Solution

A method for deploying virtual machines on a virtualization platform that formalizes dependencies by using configuration information to identify required services and bind service providers, generating runtime information for service provisioning, and incorporating this information into the virtual machine's configuration metadata.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If the OVF specification and vApp grouping are used to manage virtual machine dependencies, then virtual machines can be packaged and deployed with basic dependency expression, but the ability to formally express platform dependencies is limited and handling large dependencies becomes increasingly inefficient

Engineering Contradiction:
Improveability to express platform dependenciesVSAvoidefficiency in handling large dependencies
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The patent segments the dependency management system into distinct components: configuration information specifying VM dependencies, service provisioning information identifying required services, and runtime information providing service binding details. This segmentation allows each component to handle specific aspects of dependency management, improving both expressiveness and efficiency.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary actions by generating service provisioning information during the deployment phase, before runtime execution. This includes identifying services required by virtual machines and determining service providers in advance, so that dependency satisfaction can be verified and configured before the virtual machines actually run, improving efficiency.

Inventive Principle:
Principle #10Preliminary action

2Adaptability or versatility

If vApps group related virtual machines together with startup order semantics, then abstract level dependencies can be expressed, but detailed dependency relationships and platform dependencies cannot be formally expressed

Engineering Contradiction:
Improvedetail level of dependency expressionVSAvoidcomplexity of dependency management system
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent introduces service provisioning information as an intermediary layer between the virtual machine configuration and the platform. This intermediary formally expresses detailed dependency relationships by specifying which services each virtual machine requires and which providers can satisfy those requirements, enabling precise dependency management without excessive system complexity.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent adds another dimension to dependency expression by introducing service-level dependencies alongside the existing virtual machine grouping. Instead of only expressing dependencies through vApp startup orders, the system now expresses dependencies in terms of required services and providers, adding a new dimension of formal dependency specification.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

Data Source

PatentUS10013269B2Component framework for deploying virtual machines using service provisioning information
Publication Date: 2018.07.03 VMWARE INC
  • US10013269B2 patent drawing
  • US10013269B2 patent drawing
  • US10013269B2 patent drawing

AI summary

Virtual machines may be configured in a complex computing environment having dependencies among themselves and on the virtualization platform they operate on. The present disclosure formalizes these dependencies by defining a component framework that enables a deployer to know about the dependencies at deployment time and allow the platform to ensure that all required dependencies are satisfied at runtime. Disclosed is a set of Open Virtualization Format (OVF) sections that allow an OVF package to express dependencies to services using OVF meta-data. At deployment time, those OVF sections allow the platform to recognize and honor those dependencies, and at runtime provide the virtual machines with appropriate configuration meta-data.