Continuous uptime of guest virtual machines during upgrade of a virtualization host device
OwnerMarcus Granadoinventor
Life of this patent
Estimating the term…
Abstract
Systems and methods for providing a continuous uptime of guest Virtual Machines (“VMs”) during upgrade of a virtualization host device. The methods comprising: connecting all of the guest VMs' frontends or drivers to at least one old control VM which is currently running on the virtualization host device and which contains old virtualization software; creating at least one upgraded control VM that contains new virtualization software and that is to replace the old VM in the virtualization host device; connecting the guest VMs' frontends or drivers to the upgraded VM; and uninstalling the old control VM from the virtualization host device.
Claims17
A method, comprising:
- executing a first virtual machine and a second virtual machine on a host computing device, wherein:
- the first virtual machine manages guest virtual machines,
- the second virtual machine operates as a temporary bridge virtual machine including temporary bridge I/O data and is connected to the first virtual machine, and
- the first virtual machine operates as a I/O data bridge to a physical resource, wherein the first virtual machine is configured to enable the guest virtual machines to communicate with a first I/O process to access a virtual resource;
- live migrating the guest virtual machines connected to the first I/O process of the first virtual machine to the second virtual machine on the host computing device,
- wherein live migrating the guest virtual machines connected to the first I/O process of the first virtual machine to the second virtual machine on the host computing device comprises:
- connecting the guest virtual machines to a second I/O process of the second virtual machine, and
- live migrating the guest virtual machines to the second I/O process of the second virtual machine;
- after live migrating the guest virtual machines:
- pausing the second I/O process of the second virtual machine, and
- flushing the temporary bridge I/O data of the second virtual machine to the first virtual machine;
- subsequent to pausing the second I/O process of the second virtual machine and flushing the temporary bridge I/O data of the second virtual machine to the first virtual machine, sending a notification from the second virtual machine to the first virtual machine that prompts the first virtual machine to:
- transfer, to the physical resource, outgoing data communicated to the first I/O process, and
- relinquish control of the physical resource;
- based on the notification:
- transferring, by the first virtual machine and to the physical resource, the outgoing data communicated to the first I/O process, and
- relinquishing, by the first virtual machine, control of the physical resource;
- after the first virtual machine has relinquished control of the physical resource:
- acquiring, by the second virtual machine, control of the physical resource, and
- destroying temporary I/O data bridges connecting the guest virtual machines to the first virtual machine;
- and
- after the second virtual machine has acquired control of the physical resource, enabling the guest virtual machines to communicate with the second I/O process of the second virtual machine to access the virtual resource.
A host computing device, comprising:
- at least one processor;
- and
- at least one computer-readable medium encoded with instructions which, when executed by the at least one processor, cause the host computing device to:
- execute a first virtual machine and a second virtual machine on the host computing device, wherein:
- the first virtual machine manages guest virtual machines,
- the second virtual machine operates as a temporary bridge virtual machine including temporary bridge I/O data and is connected to the first virtual machine, and
- the first virtual machine operates as a I/O data bridge to a physical resource, wherein the first virtual machine is configured to enable the guest virtual machines to communicate with a first I/O process to access a virtual resource;
- live migrate the guest virtual machines connected to the first I/O process of the first virtual machine to the second virtual machine on the host computing device,
- wherein live migrating the guest virtual machines connected to the first I/O process of the first virtual machine to the second virtual machine on the host computing device comprises:
- connecting the guest virtual machines to a second I/O process of the second virtual machine, and
- live migrating the guest virtual machines to the second I/O process of the second virtual machine;
- after live migrating the guest virtual machines:
- pausing the second I/O process of the second virtual machine, and
- flushing the temporary bridge I/O data of the second virtual machine to the first virtual machine;
- subsequent to pausing the second I/O process of the second virtual machine and flushing the temporary bridge I/O data of the second virtual machine to the first virtual machine, send a notification from the second virtual machine to the first virtual machine that prompts the first virtual machine to:
- transfer, to the physical resource, outgoing data communicated to the first I/O process, and
- relinquish control of the physical resource;
- based on the notification:
- transferring, by the first virtual machine and to the physical resource, the outgoing data communicated to the first I/O process, and
- relinquishing, by the first virtual machine, control of the physical resource;
- after the first virtual machine has relinquished control of the physical resource;
- acquire, by the second virtual machine, control of the physical resource, and
- destroy temporary I/O data bridges connecting the guest virtual machines to the first virtual machine;
- and
- after the second virtual machine has acquired control of the physical resource, enable the guest virtual machines to communicate with the second I/O process of the second virtual machine to access the virtual resource.
Dependencies are inferred from the claim text.