IP Library Granted Patent US 10,712,968
Granted Patent B2
US 10,712,968 · App. 15/785,519 · Granted Jul 14, 2020

Management of state information backup for an auxiliary storage service in a microservice architecture

Inventors: Mikhail Viktorovich Danilov (Saint Petersburg, RU); Konstantin Sergeevich Buinov (Leningradskaya area, RU); Aleksander Georgievich Rakulenko (Seattle, WA); Andrey Vsevolodovich Kurilov (Vsevolozhsk, RU); Kirill Viktorovich Gusakov (Sestroretsk, RU)
Assignee: EMC IP Holding Company LLC
G06F3/065G06F3/067G06F3/0619
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,712,968
App. No.
15/785,519
Granted
Jul 14, 2020
Kind
B2
Abstract

Methods and apparatus are provided for protection of state information for an auxiliary storage service in a microservice architecture. An exemplary method comprises generating a snapshot of state information of an auxiliary storage service on a given storage node in a storage cluster comprised of a plurality of storage nodes; and providing the snapshot to M protector storage nodes within the plurality of storage nodes in the storage cluster, wherein the M protector storage nodes comprises a snapshot manager node and M−1 additional protector storage nodes, and wherein the M protector storage nodes are selected based on a hierarchical ranking of available storage nodes within the storage cluster arranged in a predefined configuration relative to the given storage node. The predefined configuration of the plurality of storage nodes can be, for example, a protection ring comprising a first M−1 online storage nodes that follow the snapshot manager node in the protection ring in a predefined direction.

Claims (38)

1. A method, comprising:

generating a snapshot of state information of an auxiliary storage service on a given storage node in a storage cluster comprised of a plurality of storage nodes, wherein the given storage node implements a set of storage services in a microservice architecture, the set of storage services comprising at least said auxiliary storage service and one or more core storage services monitored by said auxiliary storage service;

selecting a plurality, M, of protector storage nodes within said plurality of storage nodes in the storage cluster, wherein said M protector storage nodes comprises a snapshot manager node corresponding to said given storage node and M−1 additional protector storage nodes, and wherein said M protector storage nodes are selected based on a hierarchical ranking of available storage nodes within said storage cluster arranged in a predefined configuration relative to said given storage node;

providing said snapshot to each of said M−1 additional protector storage nodes; and

in response to said given storage node becoming unavailable, selecting a new snapshot manager node from among said M−1 protector nodes to manage said snapshot, wherein said method does not employ resources of said one or more core storage services monitored by said auxiliary storage service such that the auxiliary storage service remains functional in case the one or more core storage services are unavailable.

2. The method of claim 1 , wherein said predefined configuration of said plurality of storage nodes comprises a protection ring.

3. The method of claim 2 , wherein said protection ring comprises a first M−1 online storage nodes that follow the snapshot manager node in the protection ring in a predefined direction.

4. The method of claim 2 , wherein said protection ring is updated in response to one or more of said M protector storage nodes becoming unavailable.

5. The method of claim 1 , wherein said state information comprises statistics values.

6. The method of claim 1 , wherein functions in the storage cluster are distributed substantially evenly between said plurality of storage nodes in the storage cluster.

7. An apparatus, comprising:

a memory; and

at least one processing device, coupled to the memory, operative to implement the following steps:

generating a snapshot of state information of an auxiliary storage service on a given storage node in a storage cluster comprised of a plurality of storage nodes, wherein the given storage node implements a set of storage services in a microservice architecture, the set of storage services comprising at least said auxiliary storage service and one or more core storage services monitored by said auxiliary storage service;

selecting a plurality, M, of protector storage nodes within said plurality of storage nodes in the storage cluster, wherein said M protector storage nodes comprises a snapshot manager node corresponding to said given storage node and M−1 additional protector storage nodes, and wherein said M protector storage nodes are selected based on a hierarchical ranking of available storage nodes within said storage cluster arranged in a predefined configuration relative to said given storage node;

providing said snapshot to each of said M−1 additional protector storage nodes; and

in response to said given storage node becoming unavailable, selecting a new snapshot manager node from among said M−1 protector nodes to manage said snapshot, wherein said steps do not employ resources of said one or more core storage services monitored by said auxiliary storage service such that the auxiliary storage service remains functional in case the one or more core storage services are unavailable.

8. The apparatus of claim 7 , wherein said predefined configuration of said plurality of storage nodes comprises a protection ring.

9. The apparatus of claim 8 , wherein said protection ring comprises a first M−1 online storage nodes that follow the snapshot manager node in the protection ring in a predefined direction.

10. The apparatus of claim 8 , wherein said protection ring is updated responsive to one or more of:

(i) one or more of said M protector storage nodes becomes unavailable, and

(ii) a storage node that is not in said protection ring becomes available and is closer to the snapshot manager node than one or more current protector storage nodes.

11. The apparatus of claim 7 , wherein said state information comprises statistics values.

12. The apparatus of claim 9 , wherein functions in the storage cluster are distributed substantially evenly between said plurality of storage nodes in the storage cluster.

13. 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 platform causes said at least one processing platform to implement the following steps:

generating a snapshot of state information of an auxiliary storage service on a given storage node in a storage cluster comprised of a plurality of storage nodes, wherein the given storage node implements a set of storage services in a microservice architecture, the set of storage services comprising at least said auxiliary storage service and one or more core storage services monitored by said auxiliary storage service;

selecting a plurality, M, of protector storage nodes within said plurality of storage nodes in the storage cluster, wherein said M protector storage nodes comprises a snapshot manager node corresponding to said given storage node and M−1 additional protector storage nodes, and wherein said M protector storage nodes are selected based on a hierarchical ranking of available storage nodes within said storage cluster arranged in a predefined configuration relative to said given storage node;

providing said snapshot to each of said M−1 additional protector storage nodes; and

in response to said given storage node becoming unavailable, selecting a new snapshot manager node from among said M−1 protector nodes to manage said snapshot, wherein said steps do not employ resources of said one or more core storage services monitored by said auxiliary storage service such that the storage service remains functional in case the one or more core storage services are unavailable.

14. The computer program product of claim 13 , wherein said predefined configuration of said plurality of storage nodes comprises a protection ring comprising a first M−1 online storage nodes that follow the snapshot manager node in the protection ring in a predefined direction.

15. The computer program product of claim 14 , wherein said protection ring is updated responsive to one or more of:

(i) one or more of said M protector storage nodes becomes unavailable, and

(ii) a storage node that is not in said protection ring becomes available and is closer to the snapshot manager node than one or more current protector storage nodes.

16. The computer program product of claim 13 , wherein said state information comprises statistics values.

17. The computer program product of claim 13 , wherein said snapshot manager node is said given storage node.

18. The method of claim 2 , wherein said protection ring is updated in response to a storage node that is not in said protection ring becoming available and is closer to the snapshot manager node than one or more current protector storage nodes.

19. The method of claim 2 , wherein said new snapshot manager node is selected based is the storage node in said protection ring that is closest to said given storage node that is available.

20. The apparatus of claim 7 , wherein said new snapshot manager node is selected based is the storage node in said protection ring that is closest to said given storage node that is available.

Assignments (8)
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 (044535/0109) Recorded May 20, 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/0414 →
RELEASE OF SECURITY INTEREST AT REEL 044535 FRAME 0001 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 058298/0475 →
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 21, 2019
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 049452/0223 →
PATENT SECURITY AGREEMENT (CREDIT) Recorded Nov 29, 2017
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; WYSE TECHNOLOGY L.L.C.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 044535/0001 →
PATENT SECURITY AGREEMENT (NOTES) Recorded Nov 29, 2017
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 044535/0109 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 17, 2017
From: DANILOV, MIKHAIL VIKTOROVICH; BUINOV, KONSTANTIN SERGEEVICH; RAKULENKO, ALEKSANDER GEORGIEVICH; KURILOV, ANDREY VSEVOLODOVICH; GUSAKOV, KIRILL VIKTOROVICH
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 043879/0619 →
Priority Claims (1)
RU 2017112297 · Apr 11, 2017 · national
Continuity (1)
Related Publication 20180292993A1 · Oct 11, 2018
Cited By (1)
US 12,229,023