IP Library › Granted Patent US 10,871,960
Granted Patent B2
US 10,871,960 · App. 16/391,524 · Granted Dec 22, 2020

Upgrading a storage controller operating system without rebooting a storage system

Inventors: Erez Bashi (Kibbutz Na-An, IL); Alexander Shraifel (Maalot, IL); Alex Kulakovsky (Jerusalem, IL); Sally Golan (Tel Aviv, IL)
Assignee: EMC IP Holding Company LLC
G06F8/654G06F3/0607G06F3/0632G06F3/0673
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 10,871,960
App. No.
16/391,524
Filed
Apr 23, 2019
Granted
Dec 22, 2020
Kind
B2
Art Unit
2191
USPC
717/169
Abstract

An apparatus in one embodiment is configured to extract a set of components utilized in a first version of a storage controller operating system (OS) to a designated partition of a storage system on which the first version of the storage controller OS is to be installed, and to identify changes to be applied for installing the first version of the storage controller OS by comparing content of the extracted set of components utilized in the first version of the storage controller OS with content of components utilized in a second version of the storage controller OS that is currently installed. The apparatus is also configured to apply, utilizing at least one rule corresponding to at least one component utilized in the first version of the storage controller OS, at least one of the identified changes to upgrade to the first version of the storage controller OS.

Claims (49)

1. An apparatus comprising:

at least one processing device comprising a processor coupled to a memory;

said at least one processing device being configured:

to extract a set of components utilized in a first version of a storage controller operating system to a designated partition of one of a plurality of storage devices of a given storage system on which the first version of the storage controller operating system is to be installed;

to identify one or more changes to be applied for installing the first version of the storage controller operating system on the given storage system by comparing content of the extracted set of components utilized in the first version of the storage controller operating system with content of components utilized in a second version of the storage controller operating system currently installed on the given storage system; and

to apply, utilizing at least one rule corresponding to a given one of the components utilized in both the first version of the storage controller operating system and the second version of the storage controller operating system, at least a given one of the identified changes to the given component to upgrade the second version of the storage controller operating system to the first version of the storage controller operating system;

wherein the given component provides front-end connectivity to one or more host devices providing input-output requests directed to the plurality of storage devices of the given storage system; and

wherein applying the given identified change to the given component comprises at least temporarily disabling front-end connectivity of the given storage system to the one or more host devices while maintaining back-end processing for handling the input-output requests directed to the plurality of storage devices of the given storage system.

2. The apparatus of claim 1 wherein said at least one processing device comprises a dedicated central processing unit of the given storage system distinct from one or more additional central processing units responsible for handling input-output processing by the given storage system.

3. The apparatus of claim 2 wherein the given storage system is part of a clustered storage system comprising a plurality of storage nodes, and wherein the dedicated central processing unit of the given storage system is further distinct from one or more additional central processing units responsible for cluster management in the clustered storage system.

4. The apparatus of claim 1 wherein said at least one rule comprises:

an identification of one or more of the subset of the components utilized in the first version of the storage controller operating system affected by a designated change;

a selected one of a set of supported upgrade procedures for applying the designated change; and

one or more upgrade actions to be taken at least one of prior to and subsequent to applying the designated change.

5. The apparatus of claim 4 wherein the set of supported upgrade procedures comprises a front-end upgrade procedure for upgrading components associated with front-end connectivity of the given storage system to the one or more host devices providing the input-output requests directed to the plurality of storage devices of the given storage system, and wherein the front-end upgrade procedure comprises disconnecting the given storage system from the one or more host devices.

6. The apparatus of claim 1 wherein the given storage system is a part of a clustered storage system comprising at least one additional storage system, and wherein maintaining processing for handling the input-output requests directed to the plurality of storage devices of the given storage system comprises receiving and handling input-output requests received from said at least one additional storage system while the given storage system is disconnected from the one or more host devices.

7. The apparatus of claim 4 wherein the set of supported upgrade procedures comprises a non-interfering upgrade procedure for upgrading one or more components associated with one or more non-interfering processes distinct from processes utilized in receiving and handling input-output requests directed to the plurality of storage devices of the given storage system, and wherein the non-interfering upgrade procedure comprises stopping and restarting the one or more non-interfering processes.

8. The apparatus of claim 4 wherein the set of supported upgrade procedures comprises a finalization upgrade procedure for tasks to be applied after successful completion of one or more other upgrade procedures.

9. The apparatus of claim 4 wherein the set of supported upgrade procedures provide processes for upgrading one or more of the components without requiring reboot of the given storage system.

10. The apparatus of claim 1 wherein said at least one processing device is further configured:

to analyze the first version of the storage controller operating system to determine the set of components utilized in the first version of the storage controller operating system; and

to generate one or more rules for handling changes to respective ones of at least a subset of the set of components utilized in the first version of the storage controller operating system.

11. The apparatus of claim 1 wherein the designated partition comprises a first partition on one of the plurality of storage devices of the given storage system, and wherein the second version of the storage controller operating system is installed on a second partition on one of the plurality of storage devices of the given storage system different than the first partition.

12. The apparatus of claim 11 wherein applying the given identified change comprises copying a given file or package from the first partition to the second partition.

13. The apparatus of claim 11 wherein said at least one processing device is further configured to designate the first partition as a root partition for the given storage system responsive to extracting the set of components utilized in the first version of the storage controller operating system to the first partition.

14. The apparatus of claim 11 wherein said at least one processing device is further configured, response to identifying at least one change to be applied for installing the first version of the storage controller operating system on the given storage system not covered by at least one of the generated rules, rebooting the given storage system from the first partition to install the first version of the storage controller operating system.

15. A method comprising:

extracting a set of components utilized in a first version of a storage controller operating system to a designated partition of one of a plurality of storage devices of a given storage system on which the first version of the storage controller operating system is to be installed;

identifying one or more changes to be applied for installing the first version of the storage controller operating system on the given storage system by comparing content of the extracted set of components utilized in the first version of the storage controller operating system with content of components utilized in a second version of the storage controller operating system currently installed on the given storage system; and

applying, utilizing at least one rule corresponding to a given one of the components utilized in both the first version of the storage controller operating system and the second version of the storage controller operating system, at least a given one of the identified changes to the given component to upgrade the second version of the storage controller operating system to the first version of the storage controller operating system;

wherein the given component provides front-end connectivity to one or more host devices providing input-output requests directed to the plurality of storage devices of the given storage system;

wherein applying the given identified change to the given component comprises at least temporarily disabling front-end connectivity of the given storage system to the one or more host devices while maintaining back-end processing for handling the input-output requests directed to the plurality of storage devices of the given storage system; and

wherein the method is implemented by at least one processing device comprising a processor coupled to a memory.

16. The method of claim 15 wherein said at least one rule comprises:

an identification of one or more of the subset of the components utilized in the first version of the storage controller operating system affected by a designated change;

a selected one of a set of supported upgrade procedures for applying the designated change; and

one or more upgrade actions to be taken at least one of prior to and subsequent to applying the designated change.

17. The method of claim 16 wherein the set of supported upgrade procedures comprises a front-end upgrade procedure for upgrading components associated with front-end connectivity of the given storage system to the one or more host devices providing the input-output requests directed to the plurality of storage devices of the given storage system, and wherein the front-end upgrade procedure comprises disconnecting the given storage system from the one or more host devices.

18. A computer program product comprising a non-transitory processor-readable storage medium having stored therein program code of one or more software programs, wherein the program code when executed by at least one processing device causes said at least one processing device:

to extract a set of components utilized in a first version of a storage controller operating system to a designated partition of one of a plurality of storage devices of a given storage system on which the first version of the storage controller operating system is to be installed;

to identify one or more changes to be applied for installing the first version of the storage controller operating system on the given storage system by comparing content of the extracted set of components utilized in the first version of the storage controller operating system with content of components utilized in a second version of the storage controller operating system currently installed on the given storage system; and

to apply, utilizing at least one rule corresponding to a given one of the components utilized in both the first version of the storage controller operating system and the second version of the storage controller operating system, at least a given one of the identified changes to the given component to upgrade the second version of the storage controller operating system to the first version of the storage controller operating system;

wherein the given component provides front-end connectivity to one or more host devices providing input-output requests directed to the plurality of storage devices of the given storage system; and

wherein applying the given identified change to the given component comprises at least temporarily disabling front-end connectivity of the given storage system to the one or more host devices while maintaining back-end processing for handling the input-output requests directed to the plurality of storage devices of the given storage system.

19. The computer program product of claim 18 wherein said at least one rule comprises:

an identification of one or more of the subset of the components utilized in the first version of the storage controller operating system affected by a designated change;

a selected one of a set of supported upgrade procedures for applying the designated change; and

one or more upgrade actions to be taken at least one of prior to and subsequent to applying the designated change.

20. The computer program product of claim 19 wherein the set of supported upgrade procedures comprises a front-end upgrade procedure for upgrading components associated with front-end connectivity of the given storage system to the one or more host devices providing the input-output requests directed to the plurality of storage devices of the given storage system, and wherein the front-end upgrade procedure comprises disconnecting the given storage system from the one or more host devices.

Assignments (9)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (050724/0466) 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; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO WYSE TECHNOLOGY L.L.C.)
Reel/Frame 060753/0486 →
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 (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 AT REEL 050405 FRAME 0534 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; WYSE TECHNOLOGY L.L.C.
Reel/Frame 058001/0001 →
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 →
PATENT SECURITY AGREEMENT (NOTES) Recorded Oct 15, 2019
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; WYSE TECHNOLOGY L.L.C.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 050724/0466 →
SECURITY AGREEMENT Recorded Sep 17, 2019
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; WYSE TECHNOLOGY L.L.C.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 050405/0534 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 23, 2019
From: BASHI, EREZ; SHRAIFEL, ALEXANDER; KULAKOVSKY, ALEX; GOLAN, SALLY
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 048967/0837 →
Continuity (1)
Related Publication 20200341749A1 · Oct 29, 2020
Cited By (1)
US 12,561,154