IP Library › Granted Patent US 12,299,470
Granted Patent B2
US 12,299,470 · App. 17/655,839 · Granted May 13, 2025

Reducing downtime caused by incompatibility issues from upgrading firmware and software

Inventors: Anjil Reddy Chinnapatlolla (Bangalore, IN); Hariganesh Muralidharan (Bangalore, IN); Satish K. Rao (Austin, TX); John John Goodson (Austin, TX); Anil Kalavakolanu (Austin, TX); Peter J. Heyrman (Rochester, MN); Vani D. Ramagiri (Austin, TX)
Assignee: International Business Machines Corporation
G06F9/45558G06F8/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 12,299,470
App. No.
17/655,839
Granted
May 13, 2025
Kind
B2
Abstract

A method and system for estimating upgrade time and mitigating errors when updating a virtualized computing system. Operations of this method include, but are not necessarily limited to the following (and not necessarily in the following order): (i) identify updates needed by a system; (ii) compare the system to be updated to other systems to determine similar systems that already had the similar updates; (iii) project the time to complete the update based on the performance characteristics of the system to be updated, the performance characteristics of the similar systems that have already been updated, and the time taken to update the similar systems; (iv) identify errors that occurred when updating the similar systems and the corresponding error resolutions; and (v) pre-emptively apply configuration changes or other error resolutions to the system to be updated.

Claims (52)

1. A computer-implemented method (CIM) for updating a virtualized computing environment, the CIM comprising:

identifying a first plurality of updates that a first virtualized computing system requires, wherein the first virtualized computing system is a virtual IO server;

comparing the first virtualized computing system with a set of benchmark virtualized computing systems to determine a set of similar virtualized computing systems that have made updates comparable to the first plurality of updates required by the first virtualized computing system;

determining whether the update passes a stack compatibility check, based on comparing the first virtualized computing system with a set of benchmark virtualized computing systems;

responsive to a determination the update passes a stack compatibility check, determining an estimated time to complete the first plurality of updates based, at least in part, upon a set of performance characteristics of the first virtualized computing system;

identifying a first plurality of errors that occurred during an update of the set of similar virtualized computing systems; and

responsive to identifying the first plurality of errors, pre-emptively applying configuration changes to the first virtualized computing system.

2. The CIM of claim 1 further comprising:

responsive to identifying the first plurality of errors that occurred during the update of the set of similar virtualized computing systems, determining that the first plurality of errors has not exceeded a first error threshold.

3. The CIM of claim 1 wherein the set of performance characteristics of the first virtualized computing system comprises information indicative of a compute performance of the first virtualized computing system.

4. The CIM of claim 1 wherein the set of performance characteristics of the first virtualized computing system comprises information indicative of a storage read and/or write performance data of the first virtualized computing system.

5. The CIM of claim 1 further comprising:

determining a first amount of time taken to pre-emptively apply the configuration changes to the first virtualized computing system.

6. The CIM of claim 5 further comprising:

responsive to determining the first amount of time taken to pre-emptively apply the configuration changes to the first virtualized computing system, using the first amount of time taken to pre-emptively apply the configuration changes as a baseline update data for a future application of the configuration changes to the first virtualized computing system.

7. The CIM of claim 1 , wherein the stack compatibility check comprises ensuring that the stack configuration of the virtualized environment remains compatible after the update.

8. A computer program product (CPP) for updating a virtualized computing environment, the CPP comprising:

a machine readable storage device; and

program instructions stored on the machine readable storage device, the program instructions executable by one or more processors, causing the processor to perform one or more operations, wherein the program instructions comprise:

program instructions to identify a first plurality of updates that a first virtualized computing system requires, wherein the first virtualized computing system is a virtual IO server;

program instructions to compare the first virtualized computing system with a set of benchmark virtualized computing systems to determine a set of similar virtualized computing systems that have made updates comparable to the first plurality of updates needed by the first virtualized computing system;

program instructions to determine whether the update passes a stack compatibility check, based on comparing the first virtualized computing system with a set of benchmark virtualized computing systems;

responsive to determining the update passes a stack compatibility check, program instructions to determine an estimated time to complete the first plurality of updates based, at least in part, upon a set of performance characteristics of the first virtualized computing system;

program instructions to identify a first plurality of errors that occurred during an update of the set of similar virtualized computing systems; and

responsive to identifying the first plurality of errors, program instructions to pre-emptively apply configuration changes to the first virtualized computing system.

9. The CPP of claim 8 further comprising:

responsive to the identification of the first plurality of errors that occurred during the update of the set of similar virtualized computing systems, program instructions to determine that the first plurality of errors has not exceeded a first error threshold.

10. The CPP of claim 8 wherein the set of performance characteristics of the first virtualized computing system comprises information indicative of a compute performance of the first virtualized computing system.

11. The CPP of claim 8 wherein the set of performance characteristics of the first virtualized computing system comprises information indicative of a storage read and/or write performance data of the first virtualized computing system.

12. The CPP of claim 8 further comprising:

program instructions to determine a first amount of time taken to pre-emptively apply the configuration changes to the first virtualized computing system.

13. The CPP of claim 12 further comprising:

responsive to determining the first amount of time taken to pre-emptively apply the configuration changes to the first virtualized computing system, using the first amount of time taken to pre-emptively apply the configuration changes as a baseline update data for a future application of the configuration changes to the first virtualized computing system.

14. The CPP of claim 8 , wherein the stack compatibility check comprises ensuring that the stack configuration of the virtualized environment remains compatible after the update.

15. A computer system (CS) for updating a virtualized computing environment, the CS comprising:

one or more processors;

a machine readable storage device coupled to the one or more processors; and

one or more program instructions stored on the machine readable storage device, wherein the one or more program instructions can be executed by the one or more processors causing the processor to perform one or more functions comprising;

identifying a first plurality of updates that a first virtualized computing system requires, wherein the first virtualized computing system is a virtual IO server;

comparing the first virtualized computing system with a set of benchmark virtualized computing systems to determine a set of similar virtualized computing systems that have made updates comparable to the first plurality of updates required by the first virtualized computing system;

determining whether the update passes a stack compatibility check, based on comparing the first virtualized computing system with a set of benchmark virtualized computing systems;

responsive to determining the update passes a stack compatibility check, determining an estimated time to complete the first plurality of updates based, at least in part, upon a set of performance characteristics of the first virtualized computing system;

identifying a first plurality of errors that occurred during an update of the set of similar virtualized computing systems; and

responsive to identifying of the first plurality of errors, pre-emptively applying configuration changes to the first virtualized computing system.

16. The CS of claim 15 further causing the processor to perform one or more functions comprising:

responsive to identifying the first plurality of errors that occurred during the update of the set of similar virtualized computing systems, determining the first plurality of errors has not exceeded a first error threshold.

17. The CS of claim 15 wherein the set of performance characteristics of the first virtualized computing system comprises information indicative of a compute performance of the first virtualized computing system.

18. The CS of claim 15 wherein the set of performance characteristics of the first virtualized computing system comprises information indicative of a storage read and/or write performance data of the first virtualized computing system.

19. The CS of claim 15 further comprising:

determine a first amount of time taken to pre-emptively apply the configuration changes to the first virtualized computing system.

20. The CS of claim 19 further causing the processor to perform one or more functions comprising:

responsive to determining the first amount of time taken to pre-emptively apply the configuration changes to the first virtualized computing system, using the first amount of time taken to pre-emptively apply the configuration changes as a baseline update data for a future application of the configuration changes to the first virtualized computing system.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 22, 2022
From: CHINNAPATLOLLA, ANJIL REDDY; MURALIDHARAN, HARIGANESH; RAO, SATISH K.; GOODSON, JOHN JOHN; KALAVAKOLANU, ANIL; HEYRMAN, PETER J.; RAMAGIRI, VANI D.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 059338/0443 →
Continuity (1)
Related Publication 20230305871A1 · Sep 28, 2023
References Cited (23)
US 8032618B2 · Criddle · 2011 [cited by examiner]
US 8151257B2 · Zachmann · 2012 [cited by applicant]
US 8813076B2 · Anderson · 2014 [cited by examiner]
US 8819657B1 · Bezbaruah · 2014 [cited by examiner]
US 8898676B2 · Hiltgen · 2014 [cited by examiner]
US 9134992B2 · Wong · 2015 [cited by examiner]
US 9146839B2 · Chen · 2015 [cited by applicant]
US 9411621B2 · Jeswani · 2016 [cited by examiner]
US 9459856B2 · Curzi · 2016 [cited by examiner]
US 9507586B2 · Kamble · 2016 [cited by examiner]
US 9886262B2 · Thomas · 2018 [cited by applicant]
US 10318275B2 · Kim · 2019 [cited by examiner]
US 20100333068A1 · Niimura · 2010 [cited by applicant]
US 20120317404A1 · Chou · 2012 [cited by applicant]
US 20140157264A1 · Russinovich · 2014 [cited by applicant]
US 20200327046A1 · Rizvi · 2020 [cited by applicant]
US 20210004000A1 · Kalaskar · 2021 [cited by applicant]
US 20210034350A1 · Chen · 2021 [cited by applicant]
CN 102830988A · 2012 [cited by applicant]
WO 202172742A1 · 2021 [cited by applicant]
Disclosed Anonymously, “Intelligent Maintenance Scheduler Based on Contextual Analysis”, An IP.com Prior Art Database Technical Disclosure, IP.com No. IPCOM000266230D, IP.com Electronic Publication Date: Jun. 24, 2021, … [cited by applicant]
Disclosed Anonymously, “System and Method to Intelligently Install Patches Around Time Constraints”, An IP.com Prior Art Database Technical Disclosure, IP.com No. IPCOM000236754D, IP.com Electronic Publication Date: May… [cited by applicant]
International Searching Authority, “Notification of Transmittal of the International Search Report and the Written Opinion of the International Searching Authority, or the Declaration”, File Reference IEE230018PCT, Inte… [cited by applicant]