IP Library Granted Patent US 11,327,738
Granted Patent B2
US 11,327,738 · App. 16/938,979 · Granted May 10, 2022

Software and firmware updates in a combined single pane of glass interface

Inventors: Patrick William Penzias Dirks (Palo Alto, CA); Aravinda Haryadi (Bangalore, IN); Mukund Gunti (Palo Alto, CA); Vishnu Mohan Sekhar (Chennai, IN); Naga Ullas Vankayala Harinathagupta (Palo Alto, CA)
Assignee: VMWARE, INC.
G06F8/65G06F9/45558G06F2009/4557
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,327,738
App. No.
16/938,979
Granted
May 10, 2022
Kind
B2
Abstract

An image of a virtualization software and firmware in a plurality of hosts are upgraded by performing the steps of: in response to a user input, generating a software specification that specifies a desired state of the virtualization software and a desired state of the firmware; based on the software specification, preparing a desired image of the virtualization software that includes software components of a desired version of the firmware; and from a virtual machine management server that is programmed to deploy virtual machines in the hosts, coordinating an upgrade to the desired image of the virtualization software and the desired version of the firmware in the hosts by (1) instructing a hardware support manager to upgrade the hosts to the desired version of the firmware, and (2) instructing each of the hosts to upgrade to the desired image of the virtualization software.

Claims (44)

1. A method of upgrading an image of a virtualization software and firmware in a plurality of hosts, wherein the virtualization software includes a base image of the virtualization software and software components of the firmware, said method comprising:

in response to a user input of at least a desired version of the base image and a desired version of the firmware, retrieving metadata corresponding to the desired version of the base image and the desired version of the firmware, and generating a desired image of the virtualization software based on the retrieved metadata, the desired image of the virtualization software including software components of the desired version of the base image and software components of the desired version of the firmware;

validating the desired image of the virtualization software that includes software components of the desired version of the base image and software components of the desired version of the firmware; and

from a virtual machine management server that is programmed to deploy virtual machines in the hosts, coordinating an upgrade of the virtualization software and the firmware in the hosts,

wherein said coordinating includes (1) instructing a hardware support manager to upgrade each of the hosts to the desired version of the firmware, and (2) instructing each of the hosts to upgrade to the desired image of the virtualization software.

2. The method of claim 1 , further comprising:

storing the desired image of the virtualization software in a first storage location, from which each of the hosts retrieves the desired image of the virtualization software in response to the instruction to upgrade to the desired image of the virtualization software.

3. The method of claim 2 , further comprising:

prior to instructing the hardware support manager to upgrade the hosts to the desired version of the firmware, instructing the hardware support manager to stage the desired version of the firmware in the hosts; and

prior to instructing each of the hosts to upgrade to upgrade to the desired image of the virtualization software, instructing the hosts to stage the desired image of the virtualization software in the hosts.

4. The method of claim 1 , wherein the hardware support manager exposes a set of APIs to be called by the virtual machine management server, the set of APIs including an API to upgrade the hosts to the desired version of the firmware.

5. The method of claim 4 , wherein the set of APIs further include an API to list all firmware packages that the hardware support manager is supporting, an API to compare a current version of the firmware running in the hosts to the desired version of the firmware, an API to report the current version of the firmware running in the hosts, an API to confirm that it is possible to upgrade the firmware running in the hosts to the desired version of the firmware, and an API to retrieve the desired version of the firmware and stage the desired version of the firmware in a local memory of the hosts.

6. The method of claim 5 , further comprising:

from the virtual machine management server, prior to instructing the hardware support manager to upgrade the hosts to the desired version of the firmware, issuing the API to confirm that it is possible to upgrade the firmware running in the hosts to the desired version of the firmware, determining that the hosts are required to enter into a maintenance mode to upgrade the firmware running in the hosts to the desired version of the firmware, and then issuing the API to retrieve the desired version of the firmware and stage the desired version of the firmware in the local memory of the hosts.

7. The method of claim 4 , wherein the hosts expose another set of APIs to be called by the virtual machine management server, the set of APIs including an API to upgrade the hosts to the desired image of the virtualization software.

8. A non-transitory computer readable medium comprising instructions that are executable in a processor for the processor to carry out a method of upgrading an image of a virtualization software and firmware in a plurality of hosts, wherein the virtualization software includes a base image of the virtualization software and software components of the firmware, said method comprising:

in response to a user input of at least a desired version of the base image and a desired version of the firmware, retrieving metadata corresponding to the desired version of the base image and the desired version of the firmware, and generating a desired image of the virtualization software based on the retrieved metadata, the desired image of the virtualization software including software components of the desired version of the base image and software components of the desired version of the firmware;

validating the desired image of the virtualization software that includes software components of the desired version of the base image and software components of the desired version of the firmware; and

from a virtual machine management server that is programmed to deploy virtual machines in the hosts, coordinating an upgrade of the virtualization software and the firmware in the hosts,

wherein said coordinating includes (1) instructing a hardware support manager to upgrade each of the hosts to the desired version of the firmware, and (2) instructing each of the hosts to upgrade to the desired image of the virtualization software.

9. The non-transitory computer readable medium of claim 8 , wherein the method further comprises:

storing the desired image of the virtualization software in a first storage location, from which each of the hosts retrieves the desired image of the virtualization software in response to the instruction to upgrade to the desired image of the virtualization software.

10. The non-transitory computer readable medium of claim 9 , wherein the method further comprises:

prior to instructing the hardware support manager to upgrade the hosts to the desired version of the firmware, instructing the hardware support manager to stage the desired version of the firmware in the hosts; and

prior to instructing each of the hosts to upgrade to upgrade to the desired image of the virtualization software, instructing the hosts to stage the desired image of the virtualization software in the hosts.

11. The non-transitory computer readable medium of claim 8 , wherein the hardware support manager exposes a set of APIs to be called by the virtual machine management server, the set of APIs including an API to upgrade the hosts to the desired version of the firmware.

12. The non-transitory computer readable medium of claim 11 , wherein the set of APIs further include an API to list all firmware packages that the hardware support manager is supporting, an API to compare a current version of the firmware running in the hosts to the desired version of the firmware, an API to report the current version of the firmware running in the hosts, an API to confirm that it is possible to upgrade the firmware running in the hosts to the desired version of the firmware, and an API to retrieve the desired version of the firmware and stage the desired version of the firmware in a local memory of the hosts.

13. The non-transitory computer readable medium of claim 12 , wherein the method further comprises:

from the virtual machine management server, prior to instructing the hardware support manager to upgrade the hosts to the desired version of the firmware, issuing the API to confirm that it is possible to upgrade the firmware running in the hosts to the desired version of the firmware, determining that the hosts are required to enter into a maintenance mode to upgrade the firmware running in the hosts to the desired version of the firmware, and then issuing the API to retrieve the desired version of the firmware and stage the desired version of the firmware in the local memory of the hosts.

14. The non-transitory computer readable medium of claim 11 , wherein the hosts expose another set of APIs to be called by the virtual machine management server, the set of APIs including an API to upgrade the hosts to the desired image of the virtualization software.

15. A computer system comprising a management server, a cluster of hosts in which virtualization software and firmware are to be upgraded, and a hardware support manager that is connected to a baseboard management controller in each of the hosts, wherein the management server is programmed to execute a method of upgrading an image of a virtualization software and firmware in a plurality of hosts, wherein the virtualization software includes a base image of the virtualization software and software components of the firmware, said method comprising:

in response to a user input of at least a desired version of the base image and a desired version of the firmware, retrieving metadata corresponding to the desired version of the base image and the desired version of the firmware, and generating a desired image of the virtualization software based on the retrieved metadata, the desired image of the virtualization software including software components of the desired version of the base image and software components of the desired version of the firmware;

validating the desired image of the virtualization software that includes software components of the desired version of the base image and software components of the desired version of the firmware; and

from a virtual machine management server that is programmed to deploy virtual machines in the hosts, coordinating an upgrade of the virtualization software and the firmware in the hosts,

wherein said coordinating includes (1) instructing a hardware support manager to upgrade each of the hosts to the desired version of the firmware, and (2) instructing each of the hosts to upgrade to the desired image of the virtualization software.

16. The computer system of claim 15 , wherein the method further comprises:

storing the desired image of the virtualization software in a first storage location, from which each of the hosts retrieves the desired image of the virtualization software in response to the instruction to upgrade to the desired image of the virtualization software.

17. The computer system of claim 16 , wherein the method further comprises:

prior to instructing the hardware support manager to upgrade the hosts to the desired version of the firmware, instructing the hardware support manager to stage the desired version of the firmware in the hosts; and

prior to instructing each of the hosts to upgrade to upgrade to the desired image of the virtualization software, instructing the hosts to stage the desired image of the virtualization software in the hosts.

18. The computer system of claim 15 , wherein the hardware support manager exposes a set of APIs to be called by the virtual machine management server, the set of APIs including an API to upgrade the hosts to the desired version of the firmware.

19. The computer system of claim 18 , wherein the set of APIs further include an API to list all firmware packages that the hardware support manager is supporting, an API to compare a current version of the firmware running in the hosts to the desired version of the firmware, an API to report the current version of the firmware running in the hosts, an API to confirm that it is possible to upgrade the firmware running in the hosts to the desired version of the firmware, and an API to retrieve the desired version of the firmware and stage the desired version of the firmware in a local memory of the hosts.

20. The computer system of claim 19 , wherein the method further comprises:

from the virtual machine management server, prior to instructing the hardware support manager to upgrade the hosts to the desired version of the firmware, issuing the API to confirm that it is possible to upgrade the firmware running in the hosts to the desired version of the firmware, determining that the hosts are required to enter into a maintenance mode to upgrade the firmware running in the hosts to the desired version of the firmware, and then issuing the API to retrieve the desired version of the firmware and stage the desired version of the firmware in the local memory of the hosts.

Assignments (2)
CHANGE OF NAME Recorded Apr 15, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 067102/0395 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 26, 2020
From: DIRKS, PATRICK WILLIAM PENZIAS; HARYADI, ARAVINDA; GUNTI, MUKUND; SEKHAR, VISHNU MOHAN; VANKAYALA HARINATHAGUPTA, NAGA ULLAS
To: VMWARE, INC.
Reel/Frame 053312/0200 →
Priority Claims (1)
IN 202041014710 · Apr 2, 2020 · national
Continuity (1)
Related Publication 20210311715A1 · Oct 7, 2021
Cited By (1)
US 12,578,946