IP Library Granted Patent US 12,632,338
Granted Patent B2
US 12,632,338 · App. 18/006,774 · Granted May 19, 2026

Multi-cluster recovery

Inventor: Jagadish Mukku (Sunnyvale, CA)
Assignee: Rakuten Symphony, Inc.
G06F11/1435G06F11/1662G06F11/2056
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,632,338
App. No.
18/006,774
Granted
May 19, 2026
Kind
B2
Abstract

A first cluster creates a cluster exchange object including identifiers of components of the first cluster and segments of data of the first cluster along with configuration data, such as access points and credentials. The first cluster transmits the object to a second cluster that instantiates copies of the components and retrieves the segments from the first cluster to become a replica of the second cluster. The second cluster may then commence execution upon failure of the primary cluster and restore the primary cluster. The primary cluster may send snapshot objects to the second cluster to communicate changes to the primary cluster and the snapshot objects may also be used to restore the primary cluster following failure. The components of a cluster may be represented in a directory structure and data describing a component may be retrieved in response to user interactions with a representation of the directory structure.

Claims (33)

1 . An apparatus comprising:

a computer system including a plurality of processing devices and one or more memory devices operably coupled to a plurality of processing devices, the one or more memory devices storing executable code that, when executed by the plurality of processing devices, causes the plurality of processing devices to:

compile a set of identifiers of a plurality of components and segments of data of a first cluster executing on the computer system, the plurality of components being executable components executing in the first cluster;

transmit an object including the set of identifiers to a second cluster executing on the computer system; and

in response to the object, instantiate by the second cluster, copies of the plurality of components on the second cluster and retrieve the segments of data such that the second cluster becomes a replica of the first cluster.

2 . The apparatus of claim 1 , wherein the plurality of components include one or more containers.

3 . The apparatus of claim 1 , wherein the plurality of components include one or more logical hosts.

4 . The apparatus of claim 1 , wherein the plurality of components include one or more application instances.

5 . The apparatus of claim 1 , wherein the plurality of components include one or more storage volumes.

6 . The apparatus of claim 1 , wherein the object includes an access point of the first cluster.

7 . The apparatus of claim 1 , wherein the object includes one or more credentials of the first cluster.

8 . The apparatus of claim 1 , wherein the object includes configuration data for the plurality of components.

9 . The apparatus of claim 1 , wherein the object is a first object and wherein executable code that, when executed by the plurality of processing devices, further causes the plurality of processing devices to restore the first cluster following failure of the first cluster by:

receive, by the first cluster a second object from the second cluster including the set of identifiers; and

instantiate, by the first cluster, the plurality of components using the object and retrieve the segments of data from the second cluster using the object.

10 . The apparatus of claim 1 , wherein the computer system comprises one or more first hosts and one or more second hosts, the first cluster executing on the one or more first hosts and the second cluster executing on the one or more second hosts.

11 . A method comprising:

compiling, by a first host computer system, a set of identifiers of a plurality of components and segments of data of a first cluster executing on the first host computer system, the plurality of components being executable components executing in the first cluster;

transmitting, by the first host computer system, to a second cluster on a second host computer system, an object including the set of identifiers; and

in response to the object:

instantiating, by the second cluster, copies of the plurality of components on the second host computer system; and

retrieving, by the second cluster, the segments of data such that the second cluster becomes a replica of the first cluster.

12 . The method of claim 11 , wherein the plurality of components include one or more containers.

13 . The method of claim 11 , wherein the plurality of components include one or more logical hosts.

14 . The method of claim 11 , wherein the plurality of components include one or more application instances.

15 . The method of claim 11 , wherein the plurality of components include one or more storage volumes.

16 . The method of claim 11 , wherein the object includes an access point of the first cluster.

17 . The method of claim 11 , wherein the object includes one or more credentials of the first cluster.

18 . The method of claim 11 , wherein the object includes configuration data for the plurality of components.

19 . The method of claim 11 , further comprising restoring the first cluster following failure of the first cluster by:

receiving, by the first cluster a second object from the second cluster, the first cluster including the set of identifiers; and

instantiating, by the first cluster, the plurality of components using the object and retrieving the segments of data from the second cluster using the object.

20 . The method of claim 11 , wherein the first cluster and the second cluster are KUBERNETES clusters.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 30, 2024
From: ROBIN SYSTEMS, INC.
To: RAKUTEN SYMPHONY, INC.
Reel/Frame 068193/0367 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 25, 2023
From: MUKKU, JAGADISH
To: ROBIN SYSTEMS, INC
Reel/Frame 062484/0294 →
Continuity (1)
Related Publication 20250291677A1 · Sep 18, 2025
References Cited (66)
US 6694413B1 · Mimatsu · 2004 [cited by applicant]
US 7010617B2 · Kampe · 2006 [cited by applicant]
US 7191304B1 · Cameron · 2007 [cited by applicant]
US 7483915B2 · Thompson · 2009 [cited by applicant]
US 7627728B1 · Roeck · 2009 [cited by applicant]
US 7774568B2 · Sudhakar · 2010 [cited by applicant]
US 7953894B2 · Hady · 2011 [cited by applicant]
US 7996510B2 · Vicente · 2011 [cited by applicant]
US 8386847B2 · Garimella · 2013 [cited by applicant]
US 8392680B1 · Natanzon · 2013 [cited by applicant]
US 8874841B2 · Patterson · 2014 [cited by applicant]
US 8909602B2 · Soundararajan · 2014 [cited by applicant]
US 8914567B2 · Miroshnichenko · 2014 [cited by applicant]
US 9043567B1 · Modukuri · 2015 [cited by applicant]
US 9176829B2 · Jain · 2015 [cited by applicant]
US 9870291B2 · Bezbaruah · 2018 [cited by applicant]
US 10031917B2 · Kumarasamy · 2018 [cited by applicant]
US 10320702B2 · Gahlot · 2019 [cited by applicant]
US 10700991B2 · Khinvasara · 2020 [cited by applicant]
US 10756995B2 · Schibler · 2020 [cited by applicant]
US 10868742B2 · Chitalia · 2020 [cited by applicant]
US 10909072B2 · Sun · 2021 [cited by applicant]
US 10936444B2 · Rhodes · 2021 [cited by applicant]
US 11030055B2 · Gupta · 2021 [cited by applicant]
US 11086545B1 · Dayal · 2021 [cited by applicant]
US 11321278B2 · Gupta · 2022 [cited by applicant]
US 11469960B1 · Kottapalli · 2022 [cited by applicant]
US 11860895B2 · Acheson · 2024 [cited by applicant]
US 20040054791A1 · Chakraborty et al. · 2004 [cited by applicant]
US 20060053139A1 · Marzinski · 2006 [cited by applicant]
US 20070013703A1 · Tortolini · 2007 [cited by applicant]
US 20070150677A1 · Homma · 2007 [cited by applicant]
US 20080052327A1 · Buah · 2008 [cited by applicant]
US 20140007088A1 · Jamjoom · 2014 [cited by applicant]
US 20140047342A1 · Breternitz et al. · 2014 [cited by applicant]
US 20140195484A1 · Wang · 2014 [cited by applicant]
US 20150066857A1 · Dayal · 2015 [cited by applicant]
US 20160034481A1 · Kumarasamy · 2016 [cited by applicant]
US 20160277249A1 · Singh et al. · 2016 [cited by applicant]
US 20160366233A1 · Le et al. · 2016 [cited by applicant]
US 20180024853A1 · Warfield · 2018 [cited by applicant]
US 20180300203A1 · Kathpal · 2018 [cited by applicant]
US 20190065323A1 · Dhamdhere · 2019 [cited by applicant]
US 20190163559A1 · Takahashi · 2019 [cited by examiner]
US 20190339870A1 · Meiri · 2019 [cited by applicant]
US 20200167238A1 · Killamsetti · 2020 [cited by applicant]
US 20200195735A1 · Greifeneder et al. · 2020 [cited by applicant]
US 20200241754A1 · Bett · 2020 [cited by applicant]
US 20210157681A1 · Lecrone · 2021 [cited by applicant]
US 20220067061A1 · Mankad · 2022 [cited by applicant]
US 20220138047A1 · Aquino · 2022 [cited by applicant]
US 20220179671A1 · Seetala et al. · 2022 [cited by applicant]
US 20230126234A1 · Dharmaprikar · 2023 [cited by applicant]
US 20230342267A1 · Pabón · 2023 [cited by examiner]
US 20240012717A1 · Mitkar · 2024 [cited by examiner]
US 20240061751A1 · Janarthanam · 2024 [cited by applicant]
US 20240103980A1 · Kumar · 2024 [cited by examiner]
US 20240143554A1 · Kaushik · 2024 [cited by applicant]
CN 104536971A · 2015 [cited by applicant]
CN 104899071A · 2015 [cited by applicant]
CN 105224533 · 2016 [cited by applicant]
CN 103365741B · 2016 [cited by applicant]
KR 100832543B1 · 2008 [cited by applicant]
WO WO2001082078A9 · 2001 [cited by applicant]
WO 2024129058 · 2024 [cited by applicant]
WO 2024129060 · 2024 [cited by applicant]