Virtualized file server rolling upgrade
First Claim
1. A system comprising:
- a virtualized file server (VFS) comprising a plurality of user virtual machines (VMs), the virtualized file server configured to provide file services to additional virtual machines hosted by one or more host machines;
a deployment server configured to upgrade the VFS from a first code version to a second code version by performing actions comprising;
generating a snapshot of a code image associated with the second program code version;
providing the snapshot to a selected user VM of the one or more user VMs when the selected user VM has acquired an upgrade token, the upgrade token configured for association with a single one of the user VMs at a time;
detaching an existing code image from the selected user VM, wherein the selected user VM is located on a host machine;
attaching the snapshot to the selected user VM; and
causing the selected user VM to boot from the snapshot.
1 Assignment
0 Petitions
Accused Products
Abstract
In one embodiment, a system for managing a virtualization environment includes a set of host machines, each of which includes a hypervisor, virtual machines, and a virtual machine controller, one or more virtual disks comprising a plurality of storage devices and accessible by the virtual machine controllers, and a deployment system configured to receive a request to upgrade a virtualized file server on a plurality of host machines from a first program code version to a second program code version, and, for each host machine, request an upgrade token. When the host machine acquires the upgrade token, the deployment system is configured to generate a snapshot of a code image associated with the second program code version, and provide the snapshot to the host machine via the virtual disk. The virtual machine controller located on the host machine stores the snapshot on a storage device associated with the host machine.
295 Citations
14 Claims
-
1. A system comprising:
-
a virtualized file server (VFS) comprising a plurality of user virtual machines (VMs), the virtualized file server configured to provide file services to additional virtual machines hosted by one or more host machines; a deployment server configured to upgrade the VFS from a first code version to a second code version by performing actions comprising; generating a snapshot of a code image associated with the second program code version; providing the snapshot to a selected user VM of the one or more user VMs when the selected user VM has acquired an upgrade token, the upgrade token configured for association with a single one of the user VMs at a time; detaching an existing code image from the selected user VM, wherein the selected user VM is located on a host machine; attaching the snapshot to the selected user VM; and causing the selected user VM to boot from the snapshot. - View Dependent Claims (2, 3, 4)
-
-
5. One or more computer-readable non-transitory storage media, the media encoded with instructions for performing operations comprising:
-
receiving a request to upgrade a virtualized file server, the virtualized file server comprising a plurality of user virtual machines (VMs) configured to provide file services to additional virtual machines hosted by one or more host machines, from a first program code version to a second program code version; generating a snapshot of a code image associated with the second program code version; providing the snapshot to a selected user VM of the multiple user VMs when the selected user VM has acquired an upgrade token, the upgrade token configuration for association with a single one of the user VMs at a time; detaching an existing code image from the selected user VM, wherein the user VM is located on a host machine; attaching the snapshot to the selected user VM; and causing the selected user VM to boot from the snapshot. - View Dependent Claims (6, 7, 8)
-
-
9. A method comprising:
-
receiving a request to upgrade a virtualized file server, the virtualized file server comprising a plurality of user virtual machines (VMs) configured to provide file services to additional virtual machines hosted by one or more host machines, from a first program code version to a second program code version; generating a snapshot of a code image associated with the second program code version; and providing the snapshot to a selected user VM of the plurality of user VMs when the selected user VM has acquired an upgrade token, the upgrade token configuration for association with a single one of the user VM at a time; detaching an existing code image from the selected user VM, wherein the selected user VM is located on a host machine; and attaching the snapshot to the selected user VM; and causing the selected user VM to boot from the snapshot. - View Dependent Claims (10, 11, 12)
-
-
13. A system comprising:
-
a virtualized file server (VFS) comprising a plurality of user virtual machines (VMs), the VFS configured to provide file services to additional virtual machines hosted by one or more host machines; a deployment server configured to upgrade one or more user VMs of the VFS from a first code version to a second code version by performing actions comprising; generating a snapshot of a code image associated with the second program code version; providing the snapshot to a selected user VM of the one or more user VMs when the selected user VM has acquired an upgrade token, the upgrade token configured for association with a single one of the user VMs at a time, wherein during at least a portion of detaching an existing code image from the selected user VM located on a host machine and attaching the snapshot to the selected user VM, a storage device and IP address of the host machine are replaced by a storage device and IP address of another host machine.
-
-
14. A method comprising:
-
receiving a request to upgrade a virtualized file server (VFS) comprising a plurality of user virtual machines (VMs), the VFS configured to provide file services to additional virtual machines hosted by one or more host machines, from a first program code version to a second program code version; generating a snapshot of a code image associated with the second program code version; and providing the snapshot to a selected user VM of the multiple user VMs when the selected user VM has acquired an upgrade token, the upgrade token configuration for association with a single one of the user VM at a time; wherein during at least a portion of detaching an existing code image and attaching the snapshot to the selected user VM on a host machine, a storage device and IP address of the host machine are replaced by a storage device and IP address of another host machine.
-
Specification