Virtual Machine Cloning via Initialization Script Parameterization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Cloning virtual machine instances is complicated due to the need for identical identity values and communication with hypervisors from different vendors, leading to increased complexity and maintenance overhead due to varied communications protocols and software applications.

Innovation Solution

The process involves storing an initialization script on the source virtual machine instance's disk that defines runtime parameters for the cloned instance using a virtual machine instance identifier, allowing the cloned instance to differentiate itself without accessing hypervisor parameters, thus enabling cloning across different hypervisor classes without requiring specific software applications for each hypervisor.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If multiple software applications are included to communicate with different hypervisor vendors, then compatibility with various hypervisors is improved, but device complexity and maintenance overhead increase

Engineering Contradiction:
Improvecompatibility with various hypervisorsVSAvoidsoftware application complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent implements a universal communication layer that can interact with multiple hypervisor vendors through a single interface. The system uses a standardized protocol translator that converts vendor-specific hypervisor protocols into a common internal format, allowing the virtual machine instance to communicate with any hypervisor without requiring separate software applications for each vendor.

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

Solution Approach 2:

The patent introduces an intermediary communication module that acts as a mediator between the virtual machine instance and various hypervisor vendors. This intermediary layer handles protocol translation and adaptation, eliminating the need for direct integration with multiple vendor-specific protocols while maintaining compatibility across different hypervisor platforms.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If multiple software applications are included to communicate with different hypervisor vendors, then compatibility with various hypervisors is improved, but maintenance overhead increases

Engineering Contradiction:
Improvecompatibility with various hypervisorsVSAvoidmaintenance overhead
Core Design Contradiction:
Adaptability or versatilityVSEase of repair

Solution Approach 1:

The universal communication layer consolidates maintenance activities into a single component. Updates or fixes to hypervisor protocol handling are made in one location and automatically apply to all hypervisor vendor interactions, eliminating the need to maintain and update separate software applications for each vendor.

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

Solution Approach 2:

The patent uses template-based configuration files that define communication parameters for different hypervisor vendors. These templates can be copied and modified to support new vendors without creating entirely new software applications, significantly reducing maintenance effort when adding or updating hypervisor support.

Inventive Principle:
Principle #26Copying

3Adaptability or versatility

If virtual machine instances include software applications specific to each hypervisor, then communication capability with each hypervisor is improved, but cloning complexity increases

Engineering Contradiction:
Improvecommunication capabilityVSAvoidcloning complexity
Core Design Contradiction:
Adaptability or versatilityVSEase of manufacture

Solution Approach 1:

The patent extracts hypervisor-specific communication logic from the virtual machine instance image and places it in the external configuration files and intermediary layer. This extraction allows the cloned virtual machine image to remain clean and vendor-agnostic, while communication capabilities are provided dynamically through configuration rather than being baked into the image itself.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent performs preliminary configuration of hypervisor communication parameters in external configuration files before cloning. When a virtual machine instance is cloned, the configuration files are copied and modified with appropriate vendor-specific parameters, eliminating the need to include multiple versions of communication software in each cloned image.

Inventive Principle:
Principle #10Preliminary action

4Adaptability or versatility

If multiple versions of virtual machine instances are generated for each hypervisor, then communication compatibility is improved, but administration complexity increases

Engineering Contradiction:
Improvecommunication compatibilityVSAvoidadministration complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent implements a single universal version of the virtual machine instance that can communicate with multiple hypervisor vendors through the intermediary layer. Configuration files specify vendor-specific parameters, allowing one virtual machine image version to serve multiple hypervisor platforms without requiring separate versions for each vendor.

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

Solution Approach 2:

The patent uses parameter-based configuration to adapt the same virtual machine instance to different hypervisor vendors. By changing configuration parameters in external files rather than creating different software versions, administrators can easily adapt virtual machine instances to different hypervisor environments without managing multiple versioned images.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS8443365B2Methods and systems to clone a virtual machine instance
Publication Date: 2013.05.14 NETFLIX INC
  • US8443365B2 patent drawing
  • US8443365B2 patent drawing
  • US8443365B2 patent drawing

AI summary

In one embodiment, an initialization script including instructions to define a value of a parameter at a cloned virtual machine instance is generated and stored at a virtual disk of a source virtual machine instance. The value of the parameter at the cloned virtual machine instance is different from the value of the parameter at the source virtual machine instance. An image of the virtual disk is then sent to a virtual machine module. The cloned virtual machine instance is instantiated at the virtual machine module based on the image of the virtual disk.