Converting virtual machine images from source to destination virtualization environments

US8990804B1 · US · B1

Patent metadata
FieldValue
Publication numberUS-8990804-B1
Application numberUS-201113313701-A
CountryUS
Kind codeB1
Filing dateDec 7, 2011
Priority dateDec 7, 2011
Publication dateMar 24, 2015
Grant dateMar 24, 2015

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Techniques are described for facilitating sharing and reuse of executable software images between multiple execution environments. In at least some situations, the executable software images are virtual machine images (e.g., images that are bootable or otherwise loadable by a virtual machine in a particular virtualization environment, and that each include operating system software and/or software for one or more application programs, optionally along with one or more hard disks or other representations of stored data). The described techniques may include use of an image conversion tool that is configured to support interactions with multiple distinct types of source execution environments to extract executable software images from those environments, and to modify extracted software images for execution in one or more distinct types of destination execution environments, optionally as directed by one or more users via a GUI provided by the image conversion tool.

First claim

Opening claim text (preview).

What is claimed is: 1. A computer-implemented method comprising: receiving, by a first configured computing system executing software instructions of a virtual machine image conversion tool, a selection from a user of one of multiple computer virtualization environments supported by the virtual machine image conversion tool, wherein the selection is made by the user via a graphical user interface of the virtual machine image conversion tool, and wherein the virtual machine image conversion tool has multiple modules that are each specific to one of the multiple computer virtualization environments; interacting, by the first configured computing system, with one or more second computing systems of the selected one computer virtualization environment to obtain a data copy of a virtual machine image that is being executed by the selected one computer virtualization environment, wherein the obtained data copy is not executable by a destination computer virtualization environment distinct from the multiple computer virtualization environments, and wherein the interacting includes using one of the multiple modules that is specific to the selected one computer virtualization environment to extract the obtained data copy from the selected one computer virtualization environment by accessing an API (application programming interface) provided by the selected one computer virtualization environment; modifying, by the first configured computing system, the obtained data copy of the virtual machine image to enable the modified data copy of the virtual machine image to be executable by the destination computer virtualization environment; and sending, by the first configured computing system, the modified data copy of the virtual machine image to one or more third computing systems of the destination computer virtualization environment, to initiate execution of the virtual machine image in the destination computer virtualization environment based on the modified data copy. 2. The method of claim 1 further comprising, after the receiving of the selection of the one computer virtualization environment by the user: interacting, by the first configured computing system, with the one or more second computing systems of the selected one computer virtualization environment to identify multiple virtual machine images that are executable by the selected one computer virtualization environment and that are associated with the user; presenting, by the first configured computing system, information about the multiple virtual machine images to the user via the graphical user interface; and receiving, by the first configured computing system, a selection by the user via the graphical user interface of one of the multiple virtual machine images, and wherein the obtained data copy is of the selected one virtual machine image. 3. The method of claim 1 further comprising: receiving, by the first configured computing system, one or more additional selections by the user via the graphical user interface corresponding to the virtual machine image, the one or more additional selections identifying at least one of a group that includes one or more parameter values to be used within the virtual machine image when executing within the destination computer virtualization environment, one or more of multiple geographical areas in which to execute the virtual machine image within the destination computer virtualization environment, or one or more of multiple types of computing nodes to use for the virtual machine image within the destination computer virtualization environment, and wherein the modifying and the sending are performed in accordance with the one or more additional selections by the user. 4. A computer-implemented method comprising: receiving, by an image conversion tool executing on a first configured computing systems, an indication of a user selection of a source computer virtualization environment that is one of multiple computer virtualization environments supported by the image conversion tool, wherein the image conversion tool has multiple modules that are each specific to one of the multiple computer virtualization environments; interacting, by the executing image conversion tool, with a second computing system of the selected source computer virtualization environment to obtain a copy of a virtual machine image executable by the selected source computer virtualization environment, wherein the interacting includes using one of the multiple modules that is specific to the selected source computer virtualization environment to obtain the copy of the virtual machine image from the selected source computer virtualization environment by accessing an API (application programming interface) provided by the selected source computer virtualization environment, and wherein the obtained copy of the virtual machine image is not executable by a destination computer virtualization environment; modifying, by the executing image conversion tool, data in the obtained copy of the virtual machine image to enable the obtained copy of the virtual machine image with the modified data to be used with the destination computer virtualization environment, wherein the destination computer virtualization environment is distinct from the multiple computer virtualization environments; and supplying, by the executing image conversion tool, the obtained copy of the virtual machine image with the modified data to at least one other computing system affiliated with the destination computer virtualization environment, to initiate execution of the virtual machine image in the destination computer virtualization environment based at least in part on the modified data. 5. The method of claim 4 further comprising: interacting, by the executing image conversion tool, with a second computer virtualization environment of the multiple computer virtualization environments to obtain data for a second virtual machine image executable by the second computer virtualization environment, the interacting being performed in a manner that is specific to the second computer virtualization environment and that is distinct from the interacting with the second computing system of the source computer virtualization environment; modifying, by the executing image conversion tool, the obtained data to enable the second virtual machine image to be used with the destination computer virtualization environment based at least in part on the modified data; and supplying, by the executing image conversion tool, the modified data to the at least one other computing systems, to enable execution of the second virtual machine image in the destination computer virtualization environment based on the modified data for the second virtual machine image. 6. The method of claim 4 further comprising: further modifying, by the executing image conversion tool, data in the obtained copy of the virtual machine image to enable the obtained copy of the virtual machine image with the further modified data to be used with a second destination computer virtualization environment that is distinct from the destination computer virtualization environment; and supplying, by the executing image conversion tool, the obtained copy of the virtual machine image with the further modified data to at least one computing system affiliated with the second destination computer virtualization environment, to enable execution of the virtual machine image in the second destination computer virtualization environment based at least in part on the further modified data. 7. The method of claim 4 wherein the interacting with the second computing system of the source computer virtualization environment further includes accessing and retrieving one or more data files that are at least part of t

Assignees

Inventors

Classifications

  • Adapting program code to run in a different environment; Porting · CPC title

  • Hypervisors; Virtual machine monitors · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US8990804B1 cover?
Techniques are described for facilitating sharing and reuse of executable software images between multiple execution environments. In at least some situations, the executable software images are virtual machine images (e.g., images that are bootable or otherwise loadable by a virtual machine in a particular virtualization environment, and that each include operating system software and/or softw…
Who is the assignee on this patent?
Lissack Avichai M, Deb Bashuman, Amazon Tech Inc
What technology area does this patent fall under?
Primary CPC classification G06F9/45533. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Mar 24 2015 00:00:00 GMT+0000 (Coordinated Universal Time) (B1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).