Virtual machine configuration system
Abstract
A computing device configures virtual machines using configuration commands. Each of the virtual machines may boot from a corresponding virtual machine image file. As a virtual machine boots or executes, the virtual machine may read from or write to application and operating system files included in the corresponding virtual machine image file. Prior to the virtual machine booting, the computing device may get or set configuration properties of the operating system and applications to be booted in a respective virtual machine by reading from or writing to the application and operating system files included in the corresponding virtual machine image file. The computing device may execute configuration commands to get or set the configuration properties of the operating system and the applications.
Claims
exact text as granted — not AI-modified1 . A method for configuring virtual machines comprising:
in a computing device, obtaining a plurality of configuration commands corresponding to a plurality of virtual machines, the plurality of virtual machines comprising a first virtual machine and a second virtual machine; accessing configuration properties of the first virtual machine from a first image file of a plurality of image files based on the plurality of configuration commands, the first image file corresponding to the first virtual machine; configuring a second image file based on the configuration properties of the first image file, the second image file corresponding to the second virtual machine; and booting the second virtual machine from the configured second image file.
2 . The method of claim 1 , wherein the plurality of configuration commands comprises commands to manage configuration properties of a plurality of software applications executing in the plurality of virtual machines.
3 . The method of claim 2 , wherein a software application of the plurality of software applications comprises an operating system.
4 . The method of claim 3 , wherein obtaining the plurality of configuration commands comprises obtaining the plurality of configuration commands in a container module executing in the computing device.
5 . The method of claim 4 , wherein the computing device comprises a computer readable memory, and wherein the plurality of configuration commands is obtained by the container module from a file stored in the computer readable memory.
6 . The method of claim 1 , wherein the plurality of configuration commands comprise a command to configure a software application executing in a third virtual machine, the third virtual machine comprising a pre-booted virtual machine.
7 . The method of claim 1 , wherein the plurality of configuration commands comprise XML code.
8 . The method of claim 1 , wherein the plurality of configuration commands comprise a command to map a virtual machine image file to a virtual machine identifier.
9 . The method of claim 1 , wherein the plurality of configuration commands comprise a command to boot a virtual machine corresponding to a virtual machine identifier.
10 . The method of claim 1 , wherein accessing configuration properties of the first virtual machine from a first image file of a plurality of image files comprises:
executing a first virtual machine module of a plurality of virtual machine modules, the first virtual machine module corresponding to the first virtual machine; and accessing, through the first virtual machine module, the configuration properties of the first virtual machine from a configuration file comprised on the first image file.
11 . The method of claim 10 , wherein the plurality of configuration properties correspond to configuration properties of an operating system and a plurality of applications configured to be executed on the virtual machine.
12 . The method of claim 10 , wherein a virtual machine module of the plurality of virtual machine modules comprises program instructions to parse the configuration file in the image file to obtain a configuration property specified in the configuration command.
13 . The method of claim 10 , wherein a virtual machine module of the plurality of virtual machine modules comprises program instructions to implement an Application Program Interface (API) operable to access a configuration file in the image file.
14 . The method of claim 13 , wherein accessing configuration properties of the first virtual machine comprises accessing the configuration file in the image file through an API of the first virtual machine module.
15 . The method of claim 14 , wherein a plurality of copies of the image file are created in the computing device, and accessing configuration properties of the first virtual machine comprises accessing configuration properties stored in a first copy of the image file.
16 . The method of claim 1 , further comprising executing, in the computing device, a virtual machine management system (VMMS) configured to boot the plurality of virtual machines from the plurality of image files.
17 . The method of claim 16 , further comprising passing a reference to a image file of the plurality of image files to the VMMS.
18 . The method of claim 17 , wherein the reference comprises at least one of: a path name, and a network address.
19 . The method of claim 16 , wherein the VMMS is configured to boot the virtual machine from the configuration commands on the same computing device that the VMMS is executing on.
20 . The method of claim 16 , wherein the VMMS is executable to boot the virtual machine from the configuration commands on a machine external to the computing device the operating system is executing on.
21 . A computing device comprising:
a processor; a computer readable memory, communicatively coupled to the processor and operable to store a plurality of configuration commands; a plurality of virtual machines executed by the processor, the plurality of virtual machines comprising a first virtual machine and a second virtual machine; a plurality of software applications executing in the plurality of virtual machines; a plurality of virtual machine image files comprised in the computer readable memory and corresponding to the plurality of virtual machines, the plurality of virtual machine image files comprising a plurality of configuration files for the plurality of software applications; and a plurality of virtual machine modules corresponding to the plurality of virtual machines, each virtual machine module of the plurality of virtual machine modules being configured to access the virtual machine image file of the corresponding virtual machine and to configure the plurality of software applications executing in the corresponding virtual machine; wherein the plurality of software applications executing on a second virtual machine of the plurality of virtual machines are configured by a virtual machine module corresponding to the second virtual machine based on the plurality of configuration files for the plurality of software applications comprised in the virtual machine image file corresponding to the first virtual machine.
22 . The computing device of claim 21 , wherein the plurality of software applications comprise an operating system.
23 . The computing device of claim 22 , wherein the plurality of configuration files comprise a configuration file of the operating system.
24 . The computing device of claim 21 , wherein the plurality of configuration files corresponding to the plurality of software applications executing on the first virtual machine are comprised in a first virtual machine image file of the plurality of virtual machine image files, the first virtual machine image file corresponding to the first virtual machine.
25 . The computing device of claim 24 , further comprising:
a container module executable with the processor, the container module configured to receive the plurality of configuration commands from the computer readable memory, wherein the container module is further configured to load a first virtual machine module of the plurality of virtual machine modules and to direct the first virtual machine module to access the configuration files corresponding to the plurality of software files executing on the first virtual machine.
26 . The computing device of claim 25 , wherein the first virtual machine module comprises an Application Program Interface (API).
27 . The computing device of claim 26 , wherein the first virtual machine module comprises program instructions to access the plurality of configuration files corresponding to the plurality of software files executing on the first virtual machine through the API.
28 . The computing device of claim 25 , wherein the virtual machine module comprises program instructions to parse the plurality of configuration files.
29 . The computing device of claim 25 , wherein the container module comprises program instructions to access the plurality of configuration files.
30 . The computing device of claim 25 , wherein the container module comprises program instructions to parse the plurality of configuration files.
31 . The computing device of claim 25 , wherein the virtual machine module corresponding to a virtual machine is comprised as a file in the virtual machine image file corresponding to the virtual machine.
32 . The computing device of claim 31 , wherein the container module accesses and executes a virtual machine module directly from the virtual machine image file.
33 . A system comprising a processor and a computer readable memory having program instructions stored thereupon which, when executed by the processor, is operable to configure a plurality of virtual machines, the program instructions including:
instructions to implement a container module operable to obtain a plurality of configuration commands from a file stored in the computer readable memory, the plurality of configuration commands corresponding to a plurality of virtual machines; instructions to implement an access module to access one or more configuration properties in a plurality of virtual image files based on the plurality of configuration commands; instructions to configure a second virtual image file of the plurality of virtual image files based on configuration properties of a first virtual image file of the plurality of virtual image files; and instructions to boot a second virtual machine of the plurality of virtual machines from the configured second virtual image file
34 . The system of claim 33 , wherein the instructions to implement the container module comprise instructions to execute the plurality of configuration commands.
35 . The system of claim 33 , wherein the configuration commands are stored in a plurality of configuration files comprised among the plurality of virtual image files.
36 . The system of claim 33 , wherein the access module comprises a VMMS.
37 . The system of claim 33 , wherein each of the virtual machine image files is configured to be bootable in a virtual machine.Cited by (0)
No later patents cite this yet.
References (0)
No backward citations on record.