IP Library Granted Patent US 11,347,494
Granted Patent B2
US 11,347,494 · App. 16/714,040 · Granted May 31, 2022

Installing patches during upgrades

Inventors: Jared O'Dell (Tacoma, WA); Gene W. Lee (Seattle, WA)
Assignee: EMC IP HOLDING COMPANY LLC
G06F8/65
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,347,494
App. No.
16/714,040
Granted
May 31, 2022
Kind
B2
Abstract

Techniques are provided for installing patches during upgrades. In an example, an administrator specifies an upgrade image and a patch for a computing cluster. The computing cluster verifies compatibility between the upgrade image and the patch, registers the patch, and stores the patch for later use at the cluster level. Then, at the node level, the upgrade image and the patch are applied to each node that is upgraded.

Claims (64)

1. A system, comprising:

a processor; and

a memory that stores executable instructions that, when executed by the processor, facilitate performance of operations, comprising:

receiving a first user input indicative of an upgrade image for a first computing node of a first computing cluster, and a patch for the first computing node,

in response to the receiving of the first user input and the patch, before installing the upgrade image, determining that the upgrade image and the patch are compatible at a cluster level based on an analysis of a dependency of the patch, resulting in a determination of cluster compatibility

installing the upgrade image to the first computing node at a node level,

restarting the first computing node,

performing a patch reconciliation on the first computing node, comprising:

identifying a first group of patches previously applied to the first computing node, and

comparing the first group to a second group of patches designated to be applied to the first computing node, resulting in a third group of designated patches that have not been applied to the first computing node, and

based on the patch reconciliation, applying the patch to the first computing node.

2. The system of claim 1 , wherein the operations further comprise:

based on the determination of cluster compatibility, and before installing the upgrade image on the first computing node, storing an indication that the patch is to be applied to the first computing node after the upgrade image is installed on the first computing node.

3. The system of claim 1 , wherein installing the upgrade image comprises:

based on the determination of cluster compatibility, installing in parallel, the upgrade image to the first computing node and to a second computing node of the first computing cluster.

4. The system of claim 1 , wherein the dependency of the patch comprises a dependency on another patch.

5. The system of claim 1 , wherein the determining that the upgrade image and the patch are compatible at the cluster level comprises:

determining that the upgrade image and the patch are compatible for the first computing node and a second computing node of the first computing cluster independently of performing a respective separate determination of compatibility for the first computing node and the second computing node.

6. The system of claim 1 , wherein the operations further comprise:

installing the upgrade image to a second computing node of the first computing cluster at the node level, wherein the installing of the upgrade image to the second computing node is separate from the performing the installing of the upgrade image to the first computing node.

7. A method, comprising:

receiving, by a system comprising a processor, user input indicative of an upgrade image and a patch; and

in response to receiving the user input indicative of the upgrade image and the patch before the upgrade image has been applied,

determining, by the system, that the upgrade image and the patch are compatible for a computing cluster based on analyzing a dependency of the patch, resulting in a determination of cluster compatibility;

applying, by the system, the upgrade image to a first computing node of the computing cluster and a second computing node of the computing cluster;

restarting, by the system, the first computing node and the second computing node; and

performing, by the system, a patch reconciliation on the first computing node and the second computing node, comprising:

identifying a first group of patches previously applied to the first computing node, and

comparing the first group to a second group of patches designated to be applied to the first computing node, resulting in a third group of designated patches that have not been applied to the first computing node; and

based on the patch reconciliation, applying the patch to the first computing node and the second computing node.

8. The method of claim 7 , further comprising:

completing, by the system, the performing the patch reconciliation on the first computing node before beginning the applying the upgrade image to the second computing node.

9. The method of claim 7 , wherein applying the update image comprises:

applying the upgrade image to the first computing node concurrently with applying the upgrade image to the second computing node.

10. The method of claim 9 , further comprising:

completing, by the system, the performing of the patch reconciliation on the first computing node before applying the upgrade image to a third computing node of the computing cluster.

11. The method of claim 7 , further comprising:

in response to the determining that the upgrade image and the patch are compatible for the computing cluster, registering, by the system, the patch to be applied.

12. The method of claim 7 , wherein the dependency of the patch comprises a dependency on another patch.

13. The method of claim 7 , further comprising:

based on the third list,

determining a missing designated patch that has not been applied to the first computing node, and

applying the missing designated patch to the first computing node.

14. A non-transitory computer-readable medium comprising instructions that, in response to execution, cause a system comprising a processor to perform operations, comprising:

in response to receiving a user input indicative of an upgrade image and a patch before the upgrade image has been applied,

determining that the upgrade image and the patch are compatible at a cluster level of a computing cluster based on an analysis of a dependency of the patch;

applying the upgrade image to a first computing node at a node level;

restarting the first computing node; and

performing a patch reconciliation on the first computing node, comprising:

identifying a first group of patches previously applied to the first computing node, and

comparing the first group to a second group of patches designated to be applied to the first computing node, resulting in a third group of designated patches that have not been applied to the first computing node; and

based on the patch reconciliation, applying the patch to the first computing node and the second computing node.

15. The non-transitory computer-readable medium of claim 14 , wherein the operations further comprise:

in response to the determining that the upgrade image and the patch are compatible at the cluster level, storing the patch in a computer memory,

wherein the performing of the patch reconciliation comprises performing the patch reconciliation on the first computing node using the patch stored in the computer memory.

16. The non-transitory computer-readable medium of claim 14 , wherein the determining comprises:

determining that the patch is identified as being compatible with the upgrade image is further based on compatibility information in a data store that identifies compatibility between patches and upgrade images.

17. The non-transitory computer-readable medium of claim 14 , wherein the operations further comprise:

in response to the determining, applying the upgrade image to the first computing node and to a second computing node of the computing cluster.

18. The non-transitory computer-readable medium of claim 14 , wherein the determining comprises:

determining that the patch is identified as being compatible with the upgrade image further based on compatibility information in a data store that identifies compatibility between patches and upgrade images.

19. The non-transitory computer-readable medium of claim 14 , wherein

the comparing comprises comparing independent of a number of computing nodes of the computing cluster.

20. The system of claim 1 , wherein determining that the patch is identified as being compatible with the upgrade image is further based on compatibility information in a data store that identifies compatibility between patches and upgrade images.

Assignments (9)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053311/0169) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
Reel/Frame 060438/0742 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053546/0001) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC IP HOLDING COMPANY LLC
Reel/Frame 071642/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052216/0758) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 060438/0680 →
RELEASE OF SECURITY INTEREST AF REEL 052243 FRAME 0773 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 058001/0152 →
SECURITY INTEREST Recorded Jun 5, 2020
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 053311/0169 →
SECURITY AGREEMENT Recorded Apr 22, 2020
From: CREDANT TECHNOLOGIES INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 053546/0001 →
SECURITY AGREEMENT Recorded Mar 26, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 052243/0773 →
PATENT SECURITY AGREEMENT (NOTES) Recorded Mar 24, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052216/0758 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 13, 2019
From: O'DELL, JARED; LEE, GENE W.
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 051279/0468 →