IP Library › Granted Patent US 11,392,464
Granted Patent B2
US 11,392,464 · App. 16/672,299 · Granted Jul 19, 2022

Methods and systems for mirroring and failover of nodes

Inventors: Jean-Pierre Bono (Westboro, MA); Marc A. De Souter (Wayne, NJ); Adrian Michaud (Carlisle, MA)
Assignee: EMC IP Holding Company LLC
G06F11/2069G06F16/178G06F2201/82
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,392,464
App. No.
16/672,299
Filed
Nov 1, 2019
Granted
Jul 19, 2022
Kind
B2
Art Unit
2114
USPC
714/6.3
Abstract

A method for managing nodes includes detecting, by a failover node, a failure of a primary node, based on the detecting, updating a sparse virtual space to indicate that a file system previously local to the primary node is now local to the failover node, wherein the sparse virtual space is managed by a file system container executing on the failover node, and initiate execution of an instance of an application on the failover node, wherein a second instance of the application was previously executing on the primary node, and wherein the instance of the application uses the file system.

Claims (64)

1. A method for managing nodes, comprising:

detecting, by a failover node, a failure of a primary node;

based on the detecting, updating a sparse virtual space to indicate that a file system previously local to the primary node is now local to the failover node, wherein the sparse virtual space is managed by a file system container executing on the failover node;

initiate execution of an instance of an application on the failover node, wherein a second instance of the application was previously executing on the primary node, and wherein the instance of the application uses the file system local to the failover node;

determining, after initiating execution of the instance of the application on the failover node, if the primary node is operational;

in response to determining that the primary node is not operational:

designating a new failover node; and

initiating mirroring of data written by the instance of the application to the file system to the new failover node;

in response to determining that the primary node is operational:

synchronizing data stored in the failover node with the primary node, wherein only the data written by the instance of the application to the file system local to the failover node while the primary node was not operational is written to the file system local to the primary node; and

updating the sparse virtual space to indicate that the file system previously local to the failover node is now remote to the failover node, wherein after the updating the file system is local to the primary node.

2. The method of claim 1 , further comprising:

in response to determining that the primary node is operational, ceasing execution of the instance of the application on the failover node.

3. The method of claim 1 , further comprising:

prior to detecting the failure:

receiving data from the primary node;

storing the data in a memory of the failover node.

4. The method of claim 1 , wherein detecting the failure comprises:

sending by the file system container a heartbeat message to the primary node; and

determining, after a period of time has elapsed, that no response was received from the primary node.

5. The method of claim 1 , wherein updating the sparse virtual space to indicate that the file system previously local to the primary node is now local to the failover node further comprises assuming a virtual address previously assumed by the primary node.

6. A non-transitory computer readable medium comprising instructions which, when executed by a computer processor, enables the computer processor to perform a method for processing requests, the method comprising:

detecting, by a failover node, a failure of a primary node;

based on the detecting, updating a sparse virtual space to indicate that a file system previously local to the primary node is now local to the failover node, wherein the sparse virtual space is managed by a file system container executing on the failover node;

initiate execution of an instance of an application on the failover node, wherein a second instance of the application was previously executing on the primary node, and wherein the instance of the application uses the file system local to the failover node;

determining, after initiating execution of the instance of the application on the failover node, if the primary node is operational;

in response to determining that the primary node is not operational:

designating a new failover node; and

initiating mirroring of data written by the instance of the application to the file system to the new failover node;

in response to determining that the primary node is operational:

synchronizing data stored in the failover node with the primary node, wherein only the data written by the instance of the application to the file system local to the failover node while the primary node was not operational is written to the file system local to the primary node; and

updating the sparse virtual space to indicate that the file system previously local to the failover node is now remote to the failover node, wherein after the updating the file system is local to the primary node.

7. The non-transitory computer readable medium of claim 6 , the method further comprising:

in response to determining that the primary node is operational, ceasing execution of the instance of the application on the failover node.

8. The non-transitory computer readable medium of claim 6 , the method further comprising:

prior to detecting the failure:

receiving data from the primary node; and

storing the data in a memory of the failover node.

9. The non-transitory computer readable medium of claim 6 , wherein detecting the failure comprises:

sending by the file system container a heart beat message to the primary node; and

determining, after a period of time has elapsed, that no response was received from the primary node.

10. The non-transitory computer readable medium of claim 6 , wherein updating the sparse virtual space to indicate that the file system previously local to the primary node is now local to the failover node further comprises assuming a virtual address previously assumed by the primary node.

11. A failover node, comprising:

memory; and

a processor, wherein the processor is configured to:

detect a failure of a primary node;

based on the detecting, updating a sparse virtual space to indicate that a file system previously local to the primary node is now local to the failover node, wherein the sparse virtual space is managed by a file system container executing on the failover node;

initiate execution of an instance of an application on the failover node, wherein a second instance of the application was previously executing on the primary node, and wherein the instance of the application uses the file system local to the failover node;

determining, after initiating execution of the instance of the application on the failover node, if the primary node is operational;

in response to determining that the primary node is not operational:

designating a new failover node; and

initiating mirroring of data written by the instance of the application to the file system to the new failover node;

in response to determining that the primary node is operational:

synchronizing data stored in the failover node with the primary node, wherein only the data written by the instance of the application to the file system local to the failover node while the primary node was not operational is written to the file system local to the primary node; and

updating the sparse virtual space to indicate that the file system previously local to the failover node is now remote to the failover node, wherein after the updating the file system is local to the primary node.

12. The failover node of claim 11 , further programmed to:

in response to determining that the primary node is operational, ceasing execution of the instance of the application on the failover node.

13. The failover node of claim 12 , further programmed to:

prior to detecting the failure:

receive data from the primary node;

store the data in the memory.

14. The failover node of claim 11 , wherein detecting the failure comprises:

sending by the file system container a heart beat message to the primary node;

determining, after a period of time has elapsed, that no response was received from the primary node.

Assignments (9)
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 (051302/0528) 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; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO WYSE TECHNOLOGY L.L.C.); SECUREWORKS CORP.
Reel/Frame 060438/0593 →
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 051449 FRAME 0728 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC; WYSE TECHNOLOGY L.L.C.; SECUREWORKS CORP.; EMC CORPORATION
Reel/Frame 058002/0010 →
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 Dec 31, 2019
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC; WYSE TECHNOLOGY L.L.C.; SECUREWORKS CORP.; EMC CORPORATION
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 051449/0728 →
PATENT SECURITY AGREEMENT (NOTES) Recorded Dec 16, 2019
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC; WYSE TECHNOLOGY L.L.C.; SECUREWORKS CORP.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 051302/0528 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 25, 2019
From: BONO, JEAN-PIERRE; DE SOUTER, MARC A.; MICHAUD, ADRIAN
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 051111/0204 →
Continuity (1)
Related Publication 20210133059A1 · May 6, 2021