IP Library Granted Patent US 10,389,802
Granted Patent B1
US 10,389,802 · App. 15/395,109 · Granted Aug 20, 2019

Flexible associativity in multitenant clustered environments

Inventors: Sunil Yadav (Pune, IN); Pranav Sarwate (Dewas, IN)
Assignee: Veritas Technologies LLC
H04L67/1034H04L41/082H04L67/10H04L67/34
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,389,802
App. No.
15/395,109
Granted
Aug 20, 2019
Kind
B1
Abstract

Disclosed herein are methods, systems, and processes to provide flexible associativity for multitenant applications operating in clustered computing environments. A configuration file is updated by generating new relationship information based on association(s) between a parent object, that represents a dependent application, and child object(s), that represent dependee application(s). Updating the configuration file produces an updated configuration file. The new relationship information is stored in a metadata object, and the parent object is started based on the updated configuration file.

Claims (124)

1. A method comprising:

updating, by a first computing device, a configuration file, wherein

the updating produces an updated configuration file, and

the updating comprises

generating new relationship information based on one or more associations between a parent object and one or more child objects of a plurality of child objects, and

storing the new relationship information in a metadata object; and

starting the parent object, by the first computing device, based on the updated configuration file, wherein

the parent object represents a dependent application,

each of the one or more child objects represents a dependee application of one or more dependee applications,

the dependent application and the one or more dependee applications execute in a cluster,

the cluster comprises two or more computing devices,

the parent object and the one or more child objects execute on at least one computing device of the two or more computing devices, and

the parent object is associated with a pluggable portion of the dependent application.

2. The method of claim 1 , further comprising:

accessing, by the first computing device, current relationship information based on an association between the parent object and a selected child object other than the one or more child objects of the plurality of child objects; and

storing, by the first computing device, the current relationship information in the metadata object.

3. The method of claim 2 , further comprising:

accessing, by the first computing device, the configuration file, wherein

the configuration file is associated with the dependent application and the one or more dependee applications of a plurality of dependee applications,

the configuration file comprises at least the selected child object, the parent object, and the metadata object,

the metadata object indicates the association between the parent object and the selected child object, and

the metadata object comprises dependency information.

4. The method of claim 3 , wherein

the parent object is a parent node object.

5. The method of claim 4 , wherein

the one or more child objects execute on at least one of the two or more computing devices,

the one or more child objects are one or more child node objects, and

the selected child object represents a container portion of a dependee application of the plurality of dependee applications.

6. The method of claim 5 , wherein

updating the configuration file is performed at runtime by at least two of the two or more computing devices in the cluster prior to starting the parent object based on the updated configuration file.

7. The method of claim 6 , wherein

the dependent application and the one or more dependee applications execute on the at least two computing devices of the two or more computing devices in the cluster,

the dependent application comprises at least the pluggable portion, and

the one or more dependee applications comprise at least one or more additional container portions other than the container portion.

8. The method of claim 7 , further comprising:

as part of the starting,

migrating, by the first computing device, another child object of the one or more child objects other than the selected child object to another computing device of the two or more computing devices based on the new relationship information and the current relationship information.

9. The method of claim 8 , wherein

the dependency information comprises at least

a locality information indicating a local locality or a global locality, and

a rigidity information indicating a hard rigidity, a firm rigidity, or a soft rigidity.

10. The method of claim 9 , further comprising:

as part of the migrating,

determining, by the first computing device, whether the locality information indicates the local locality or the global locality, and

determining, by the first computing device, whether the rigidity information indicates the hard rigidity, the firm rigidity, or the soft rigidity.

11. A non-transitory computer readable storage medium comprising program instructions executable to:

update, by a first computing device, a configuration file, wherein

updating the configuration file produces an updated configuration file, and

the updating comprises

generating new relationship information based on one or more associations between a parent object and one or more child objects of a plurality of child objects, and

storing the new relationship information in a metadata object; and

start, by the first computing device, the parent object, based on the updated configuration file, wherein

the parent object represents a dependent application,

each of the one or more child objects represents a dependee application of one or more dependee applications,

the dependent application and the one or more dependee applications execute in a cluster,

the cluster comprises two or more computing devices,

the parent object and the one or more child objects execute on at least one computing device of the two or more computing devices, and

the parent object is associated with a pluggable portion of the dependent application.

12. The non-transitory computer readable storage medium of claim 11 , further comprising:

access, by the first computing device, the configuration file, wherein

the configuration file is associated with the dependent application and the one or more dependee applications of a plurality of dependee applications,

the configuration file comprises at least a selected child object other than the one or more child objects of the plurality of child objects, the parent object, and the metadata object,

the metadata object indicates an association between the parent object and the selected child object, and

the metadata object comprises dependency information;

access, by the first computing device, current relationship information based on an association between the parent object and the selected child object; and

store, by the first computing device, the current relationship information in the metadata object.

13. The non-transitory computer readable storage medium of claim 12 , wherein the dependency information comprises at least

a locality information indicating a local locality or a global locality, and

a rigidity information indicating a hard rigidity, a firm rigidity, or a soft rigidity.

14. The non-transitory computer readable storage medium of claim 13 , wherein

the parent object is a parent node object,

the one or more child objects execute on at least one of the two or more computing devices,

the one or more child objects are one or more child node objects,

the selected child object represents a container portion of a dependee application of the plurality of dependee applications,

the dependent application and the plurality of dependee applications execute on the at least two computing devices of the two or more computing devices in the cluster,

the dependent application comprises at least the pluggable portion, and

the plurality of dependee applications comprise at least one or more additional container portions other than the container portion.

15. The non-transitory computer readable storage medium of claim 14 , further comprising:

as part of starting the parent object,

migrate, by the first computing device, another child object of the one or more child objects other than the selected child object to another computing device of the two or more computing devices based on the new relationship information and the current relationship information; and

as part of migrating the another child object,

determine, by the first computing device, whether the locality information indicates the local locality or the global locality, and

determine, by the first computing device, whether the rigidity information indicates the hard rigidity, the firm rigidity, or the soft rigidity.

16. A system comprising:

one or more processors; and

a memory coupled to the one or more processors, wherein the memory stores program instructions executable by the one or more processors to:

update, by a first computing device, a configuration file, wherein

updating the configuration file produces an updated configuration file, and

the updating comprises

generating new relationship information based on one or more associations between a parent object and one or more child objects of a plurality of child objects, and

storing the new relationship information in a metadata object; and

start, by the first computing device, the parent object, based on the updated configuration file, wherein

the parent object represents a dependent application,

each of the one or more child objects represents a dependee application of one or more dependee applications,

the dependent application and the one or more dependee applications execute in a cluster,

the cluster comprises two or more computing devices,

the parent object and the one or more child objects execute on at least one computing device of the two or more computing devices, and

the parent object is associated with a pluggable portion of the dependent application.

17. The system of claim 16 , further comprising:

access, by the first computing device, the configuration file, wherein

the configuration file is associated with the dependent application and the one or more dependee applications of a plurality of dependee applications,

the configuration file comprises at least a selected child object other than the one or more child objects of the plurality of child objects, the parent object, and the metadata object,

the metadata object indicates an association between the parent object and the selected child object, and

the metadata object comprises dependency information;

access, by the first computing device, current relationship information based on an association between the parent object and the selected child object; and

store, by the first computing device, the current relationship information in the metadata object.

18. The system of claim 17 , wherein

the dependency information comprises at least

a locality information indicating a local locality or a global locality, and

a rigidity information indicating a hard rigidity, a firm rigidity, or a soft rigidity.

19. The system of claim 18 , wherein

the parent object is a parent node object,

the one or more child objects execute on at least one of the two or more computing devices,

the one or more child objects are one or more child node objects,

the selected child object represents a container portion of a dependee application of the plurality of dependee applications,

the dependent application and the plurality of dependee applications execute on the at least two computing devices of the two or more computing devices in the cluster,

the dependent application comprises at least the pluggable portion, and

the plurality of dependee applications comprise at least one or more additional container portions other than the container portion.

20. The system of claim 19 , further comprising:

as part of starting the parent object,

migrate, by the first computing device, another child object of the one or more child objects other than the selected child object to another computing device of the two or more computing devices based on the new relationship information and the current relationship information; and

as part of migrating the another child object,

determine, by the first computing device, whether the locality information indicates the local locality or the global locality, and

determine, by the first computing device, whether the rigidity information indicates the hard rigidity, the firm rigidity, or the soft rigidity.

Assignments (13)
SECURITY INTEREST Recorded Dec 12, 2025
From: ARCTERA US LLC
To: CITIBANK, N.A., AS COLLATERAL AGENT
Reel/Frame 073951/0470 →
TERMINATION AND RELEASE OF PATENT SECURITY AGREEMENT AT R/F 069585/0150 Recorded Dec 1, 2025
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: ARCTERA US LLC
Reel/Frame 073833/0848 →
TERMINATION AND RELEASE OF PATENT SECURITY AGREEMENT AT R/F 070530/0497 Recorded Dec 1, 2025
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: ARCTERA US LLC
Reel/Frame 073833/0730 →
RELEASE OF SECURITY INTEREST Recorded Dec 13, 2024
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
To: VERITAS TECHNOLOGIES LLC
Reel/Frame 069634/0584 →
RELEASE OF SECURITY INTEREST Recorded Dec 13, 2024
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: VERITAS TECHNOLOGIES LLC
Reel/Frame 069574/0895 →
PATENT SECURITY AGREEMENT Recorded Dec 10, 2024
From: ARCTERA US LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 069585/0150 →
SECURITY INTEREST Recorded Dec 10, 2024
From: ARCTERA US LLC
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 069563/0243 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 9, 2024
From: VERITAS TECHNOLOGIES LLC
To: ARCTERA US LLC
Reel/Frame 069548/0468 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS AT R/F 052426/0001 Recorded Nov 30, 2020
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: VERITAS TECHNOLOGIES LLC
Reel/Frame 054535/0565 →
SECURITY INTEREST Recorded Aug 20, 2020
From: VERITAS TECHNOLOGIES LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 054370/0134 →
PATENT SECURITY AGREEMENT SUPPLEMENT Recorded Apr 16, 2020
From: VERITAS TECHNOLOGIES, LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 052426/0001 →
PATENT SECURITY AGREEMENT SUPPLEMENT Recorded Mar 17, 2017
From: VERITAS TECHNOLOGIES LLC
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 042037/0817 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 19, 2017
From: YADAV, SUNIL; SARWATE, PRANAV
To: VERITAS TECHNOLOGIES LLC
Reel/Frame 041428/0450 →