Patentable/Patents/US-10540165
US-10540165

Virtualized file server rolling upgrade

PublishedJanuary 21, 2020
Assigneenot available in USPTO data we have
Inventorsnot available in USPTO data we have
Technical 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.

Patent Claims
14 claims

Legal claims defining the scope of protection, as filed with the USPTO.

1

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.

2

2. The system of claim 1 , wherein when the snapshot has been attached to the selected user VM, the deployment server is further configured to release the upgrade token acquired by the selected user VM.

3

3. The system of claim 1 , wherein the snapshot comprises metadata identifying one or more locations of blocks of the code image on a first storage device associated with the host machine.

4

4. The system of claim 1 , wherein the snapshot comprises metadata identifying a location of at least one block of the a code image on a second storage device associated with a server host machine.

5

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.

6

6. The media of claim 5 , wherein the operations further comprise, when the snapshot has been attached to the user VM on the host machine, releasing the upgrade token acquired by the selected user VM.

7

7. The media of claim 5 , wherein the snapshot comprises metadata identifying one or more locations of blocks of the code image on a first storage device associated with the host machine.

8

8. The media of claim 5 , wherein the snapshot comprises metadata identifying a location of at least one block of a code image on a second storage device associated with a server host machine.

9

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.

10

10. The method of claim 9 , further comprising: when the snapshot has been attached to the selected user VM on the host machine, releasing the upgrade token acquired by the selected user VM.

11

11. The method of claim 9 , wherein the snapshot comprises metadata identifying one or more locations of blocks of the code image on a first storage device associated with the host machine.

12

12. The system method of claim 9 , wherein the snapshot comprises metadata identifying a location of at least one block of a code image on a second storage device associated with a server host machine.

13

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

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.

Classification Codes (CPC)

Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.

Patent Metadata

Filing Date

February 1, 2017

Publication Date

January 21, 2020

Want to explore more patents?

Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.

Citation & reuse

Analysis on this page is generated by Patentable — an AI-powered patent intelligence platform. AI-generated summaries, explanations, and analysis may be reused with attribution and a visible link back to the canonical URL below. Patent abstracts and claims are USPTO public domain.

Cite as: Patentable. “Virtualized file server rolling upgrade” (US-10540165). https://patentable.app/patents/US-10540165

© 2026 Patentable. All rights reserved.

Patentable is a research and drafting-assistant tool, not a law firm, and does not provide legal advice. Documents we generate are drafts for review by a licensed patent attorney.