Virtualized file server rolling upgrade

US11550559B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11550559-B2
Application numberUS-201916687327-A
CountryUS
Kind codeB2
Filing dateNov 18, 2019
Priority dateFeb 12, 2016
Publication dateJan 10, 2023
Grant dateJan 10, 2023

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A system may include a deployment system configured to receive a request to upgrade a selected virtual machine (VM) of multiple VMs 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 a virtual disk. The snapshot is stored on a storage device associated with a host machine or a server host machine. The snapshot may include metadata identifying a location of the code image on the storage device.

First claim

Opening claim text (preview).

What is claimed is: 1. A system comprising: a storage pool including storage items distributed across two or more physical storage locations; a first file server virtual machine (FSVM) hosted at a first computing node of a distributed computing system, wherein the first FSVM is configured to process requests for input/output (I/O) transactions for a first storage item of the storage pool, the first FSVM being associated with a first IP address; a second FSVM hosted at a second computing node of the distributed computing system, wherein the second FSVM is configured to process requests for I/O transactions for a second storage item of the storage pool, the second FSVM being associated with a second IP address; a deployment server configured to upgrade the first FSVM from a first code version to a second code version by performing actions comprising: requesting an upgrade token for the first FSVM; generating a snapshot of a code image associated with the second code version; detaching an existing code image from the first FSVM; attaching the snapshot to the first FSVM and cause the first FSVM to boot from the snapshot during an upgrade of the first FSVM; assigning, to the second FSVM, in addition to the second IP address associated with the second FSVM, the first IP address associated with the first FSVM during the upgrade of the first FSVM; at least in part during the upgrade of the first FSVM, directing at least one request for an I/O transaction for the first storage item of the storage pool to the second FSVM using the first IP address associated with the first FSVM; and releasing an upgrade token from the first FSVM. 2. The system of claim 1 , wherein the first FSVM is configured to process requests from a user VM located on the first computing node. 3. The system of claim 1 , wherein during at least a portion of detaching the existing code image from the first FSVM and attaching the snapshot to the first FSVM, a storage device of the first computing node is replaced by a storage device of the second computing node. 4. 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 distributed computing system. 5. The system of claim 1 , wherein the snapshot comprises metadata identifying a location of at least one block of a code image on a second storage device associated with the distributed computing system. 6. The system of claim 1 , wherein the first FSVM is a selected FSVM from a plurality of FSVMs including the second FSVM, wherein an upgrade token is configured for association with one FSVM of the plurality of FSVMs at a time. 7. The system of claim 1 , wherein the first FSVM and the second FSVM present a namespace including the storage items of the storage pool. 8. The system of claim 1 , wherein the first FSVM is configured to determine at least one storage location of the first storage item using a map. 9. The system of claim 8 , wherein the second FSVM is configured to determine the at least one storage location of the first storage item during upgrade of the first FSVM using the map. 10. 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 (VFS) including a first file server virtual machine (FSVM) hosted at a first computing node and a second FSVM hosted at a second computing node from a first program code version to a second program code version, wherein the first FSVM is configured to process requests for input/output (I/O) transactions for a first storage item of a storage pool of the VFS, wherein the first FSVM is associated with a first IP address and the second FSVM is associated with a second IP address; requesting an upgrade token for the first FSVM; detaching an existing code image from the first FSVM; generating a snapshot of a code image associated with the second program code version; attaching the snapshot to the first FSVM, and causing the first FSVM to boot from the snapshot during an upgrade of the first FSVM; assigning, to the second FSVM, in addition to the second IP address associated with the second FSVM, the first IP address associated with the first FSVM during the upgrade of the first FSVM, wherein the second FSVM is configured to process requests for I/O transactions for a second storage item of the storage pool; at least in part during the upgrade of the first FSVM, directing a request for an I/O transaction for the first storage item of the storage pool to the second FSVM using the first IP address associated with the first FSVM; and releasing the upgrade token from the first FSVM. 11. The media of claim 10 , wherein the snapshot comprises metadata identifying one or more locations of blocks of the code image on a first storage device. 12. The media of claim 11 , wherein the snapshot comprises metadata identifying a location of at least one block of a code image on a second storage device. 13. The media of claim 10 , wherein the first FSVM is selected from a plurality of FSVMs including the second FSVM, wherein an upgrade token is configured for association with a single FSVM from the plurality of FSVMs at a time. 14. The media of claim 10 , wherein during at least a portion of detaching the existing code image from the first FSVM and attaching the snapshot to the first FSVM, a storage device of the first computing node is replaced by a storage device of the second computing node. 15. The media of claim 10 , wherein the first FSVM and the second FSVM present a namespace including the storage items of the storage pool. 16. The media of claim 10 , wherein the first FSVM is configured to determine at least one storage location of the first storage item using a map. 17. The media of claim 16 , wherein the second FSVM is configured to determine the at least one storage location of the first storage item during upgrade of the first FSVM using the map. 18. A method comprising: receiving a request to upgrade a virtualized file server (VFS) including a first file server virtual machine (FSVM) hosted at a first computing node and second FSVM hosted at a second computing node from a first program code version to a second program code version, wherein the first FSVM is configured to process requests for input/output (I/O) transactions for a first storage item of a storage pool of the VFS, wherein the first FSVM is associated with a first IP address and the second FSVM is associated with a second IP address; requesting an upgrade token for the first FSVM; detaching an existing code image from the first FSVM; generating a snapshot of a code image associated with the second program code version; attaching the snapshot to the first FSVM, and booting the first FSVM from the snapshot during an upgrade of the first FSVM; and assigning, to the second FSVM, in addition to the second IP address associated with the second FSVM, the first IP address associated with the first FSVM during the upgrade of the first FSVM, wherein the second FSVM is configured to process requests for I/O transactions for a second storage item of the storage pool; at least in part during the upgrade of the first FSVM, directing a request for an I/O transaction for the first storage item of the storage pool to the second FSVM using the first IP address associated with the first FSVM; and releasing the upgrade token from the first FSVM. 19. The method of claim 18 , wherein t

Assignees

Inventors

Classifications

  • Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes · CPC title

  • to assure secure storage of data (address-based protection against unauthorised use of memory G06F12/14; record carriers for use with machines and with at least a part designed to carry digital markings G06K19/00) · CPC title

  • Determining service level performance parameters or violations of service level contracts, e.g. violations of agreed response time or mean time between failures [MTBF] · CPC title

  • between storage system components · CPC title

  • where the redundant components share persistent storage (G06F11/2043 takes precedence) · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US11550559B2 cover?
A system may include a deployment system configured to receive a request to upgrade a selected virtual machine (VM) of multiple VMs 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…
Who is the assignee on this patent?
Nutanix Inc
What technology area does this patent fall under?
Primary CPC classification G06F8/65. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Jan 10 2023 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 12 related publications on this page (citations in our corpus or others sharing the same primary CPC).