# US 2012/0084768 A1 · Capturing Multi-Disk Virtual Machine Images Automatically

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2012/0084768 A1
- Document ID: US20120084768A1
- Status: Published application
- Kind: A1
- Application number: 12/895,237
- Filed: 2010-09-30
- Published: 2012-04-05
- Earliest claimed: 2010-09-30
- Assignees: International Business Machines Corporation
- Inventors: Shamsundar Ashok; Daniel F. De Araujo; Daniel N. Nguyen; Minh Nguyen
- Web page: https://patentgrep.com/patent/US20120084768A1

## CPC

- G06F 9/45558: {Hypervisor-specific management and integration aspects}
- G06F 2009/45579: {I/O management, e.g. providing access to device drivers or storage}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

A plurality of virtual disk images are established on a virtual machine. The virtual machine identifies corresponding network address translations for a plurality of disks, each having a corresponding plurality of data sets. The virtual machine installs the corresponding plurality of data sets to the plurality of virtual disks using the corresponding network address translations. An image of the plurality of disks is created, wherein the image contains the plurality of virtual disks with the plurality of data sets.

## Claims

### Claim 1

A computer implemented method implemented by a processor, the computer implemented method comprising:
establishing a plurality of virtual disk images on a virtual machine;
identifying, by the virtual machine, corresponding network address translations for a plurality of disks, each having a corresponding plurality of data sets;
installing, using the virtual machine, the corresponding plurality of data sets to the plurality of virtual disks using the corresponding network address translations; and
creating an image of the plurality of disks, wherein the image contains the plurality of virtual disks with the plurality of data sets.

### Claim 2 (depends on 1)

The computer implemented method of claim 1 further comprising:
booting the virtual machine using an installable image of a device having the plurality of disks.

### Claim 3 (depends on 2)

The computer implemented method of claim 2 further comprising:
removing from the virtual machine any data not related of the plurality of sets of data;
responsive to creating the image of the plurality of disks, stopping the virtual machine; and
storing the image of the plurality of disks.

### Claim 4 (depends on 3)

The computer implemented method of claim 3 further comprising:
installing the image onto a physical computer.

### Claim 5 (depends on 2)

The computer implemented method of claim 2, wherein the installable image further includes a plurality of pre-created secure shell keys, operating systems for the plurality of virtual disks, applications to install to the plurality of virtual disks, virtual disk layouts for the plurality of virtual disks, and a boot service configured to query all of a presence of a disk configuration, at least one application, at least one script to install and clean up data, and at least one pre-created secure shell.

### Claim 6 (depends on 5)

The computer implemented method of claim 5 further comprising:
adding a pre-created secure shell key to a list of authorized keys on a host operating system on which the virtual machine is running, wherein during installation of the installable image, the pre-created secure shell key is added to the list of authorized keys for the virtual machine;
using the pre-created secure shell key to access the host operating system and write a utility unique identifier done file; and
using the pre-created secure shell key to access the virtual machine and issue a command to shut down the virtual machine.

### Claim 7

A computer implemented method implemented by a processor, the computer implemented method comprising:
receiving a selection of software to be installed on a virtual machine, wherein the selection of software relates to a first disk and a second disk;
bundling the selection of software;
distributing the bundle to a host;
parsing the bundle at the host;
creating a first virtual disk and a second virtual disk consistent with the selection of software;
gathering media to be installed on a virtual machine to include the first virtual disk and the second virtual disk;
creating an installable image which is writable to a computer readable medium;
invoking a command to boot the virtual machine with the installable image;
setting up a network address translation on a host operating system such that any request to a specified port will be forwarded to the virtual machine and such that information related to the first disk can be forwarded to a first image of the first disk, and such that information related to the second disk can be forwarded to a second image of the second disk;
formatting the first virtual disk and the second virtual disk;
installing the image to the virtual machine such that the first virtual disk represents a first image of the first disk and the second virtual disk represents a second image of the second disk;
creating a tarball comprising the first virtual disk and the second virtual disk; and
storing the tarball on a computer readable medium.

### Claim 8 (depends on 7)

The computer implemented method of claim 7, wherein the first disk comprises one of a third virtual disk and a first physical disk and wherein the second disk comprises one of a fourth virtual disk and a second physical disk.

### Claim 9 (depends on 8)

The computer implemented method of claim 8, wherein the image comprises an International Organization for Standards image that further comprises at least one patch, and at least one script that drives installation and cleanup of the virtual machine.

### Claim 10 (depends on 9)

The computer implemented method of claim 9, wherein the International Organization for Standards image further includes a plurality of pre-created secure shell keys, and wherein the International Organization for Standards image comprises all of first and second operating systems for the first and second virtual disks, first and second applications to install to the first and second virtual disks, first and second virtual disk layouts for the first and second virtual disks, and a boot service, wherein the boot service is configured to query all of a presence of a disk configuration, at least one application, at least one script to install and clean up data, and at least one pre-created secure shell.

### Claim 11 (depends on 10)

The computer implemented method of claim 10 further comprising:
adding a pre-created secure shell key to a list of authorized keys on the host operating system, wherein during installation, the pre-created secure shell key is added to the list of authorized keys for the virtual machine;
using the pre-created secure shell key to access the host operating system and write a utility unique identifier done file;
using the pre-created secure shell key to access the virtual machine and issue a command to shut down the virtual machine;
responsive to creating the tarball, adding a configuration file to the tarball.

### Claim 12 (depends on 11)

The computer implemented method of claim 11 further comprising:
removing the pre-created secure shell key;
removing data not required by the virtual machine;
cleaning up residual installation files;
removing network configurations; and
removing the boot service.

### Claim 13 (depends on 12)

The computer implemented method of claim 12 further comprising:
installing the first and second virtual disks from the tarball onto first and second physical disks.

### Claim 14

A computer program product comprising:
a computer readable storage medium having computer readable program code embodied therewith, the computer readable program code comprising:
computer readable program code for receiving a selection of software to be installed on a virtual machine, wherein the selection of software relates to a first disk and a second disk;
computer readable program code for bundling the selection of software;
computer readable program code for distributing the bundle to a host;
computer readable program code for parsing the bundle at the host;
computer readable program code for creating a first virtual disk and a second virtual disk consistent with the selection of software;
computer readable program code for gathering media to be installed on a virtual machine to include the first virtual disk and the second virtual disk;
computer readable program code for creating an installable image which is writable to a computer readable medium;
computer readable program code for invoking a command to boot the virtual machine with the installable image;
computer readable program code for setting up a network address translation on a host operating system such that any request to a specified port will be forwarded to the virtual machine and such that information related to the first disk can be forwarded to a first image of the first disk, and such that information related to the second disk can be forwarded to a second image of the second disk;
computer readable program code for formatting the first virtual disk and the second virtual disk;
computer readable program code for installing the image to the virtual machine such that the first virtual disk represents a first image of the first disk and the second virtual disk represents a second image of the second disk;
computer readable program code for creating a tarball comprising the first virtual disk and the second virtual disk; and
computer readable program code for storing the tarball on a computer readable medium.

### Claim 15 (depends on 14)

The computer program product of claim 14, wherein the first disk comprises one of a third virtual disk and a first physical disk and wherein the second disk comprises one of a fourth virtual disk and a second physical disk.

### Claim 16 (depends on 15)

The computer program product of claim 15, wherein the image comprises an International Organization for Standards image that further comprises at least one patch, and at least one script that drives installation and cleanup of the virtual machine.

### Claim 17 (depends on 16)

The computer program product of claim 16, wherein the International Organization for Standards image further includes a plurality of pre-created secure shell keys, and wherein the International Organization for Standards image comprises all of first and second operating systems for the first and second virtual disks, first and second applications to install to the first and second virtual disks, first and second virtual disk layouts for the first and second virtual disks, and a boot service, wherein the boot service is configured to query all of a presence of a disk configuration, at least one application, at least one script to install and clean up data, and at least one pre-created secure shell.

### Claim 18 (depends on 17)

The computer program product of claim 17 further comprising:
computer readable program code for adding a pre-created secure shell key to a list of authorized keys on the host operating system, wherein during installation, the pre-created secure shell key is added to the list of authorized keys for the virtual machine;
computer readable program code for using the pre-created secure shell key to access the host operating system and write a utility unique identifier done file;
computer readable program code for using the pre-created secure shell key to access the virtual machine and issue a command to shut down the virtual machine;
computer readable program code for responsive to creating the tarball, adding a configuration file to the tarball.

### Claim 19 (depends on 18)

The computer program product of claim 18 further comprising:
computer readable program code for removing the pre-created secure shell key;
computer readable program code for removing data not required by the virtual machine;
computer readable program code for cleaning up residual installation files;
computer readable program code for removing network configurations; and
computer readable program code for removing the boot service.

### Claim 20 (depends on 19)

The computer program product of claim 19 further comprising:
computer readable program code for installing the first and second virtual disks from the tarball onto first and second physical disks.
