IP Library Patent Application 18319110
Patent Application
App. No. 18/319,110

DISTRIBUTED RESOURCE CONTROLLERS FOR CLOUD INFRASTRUCTURE

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 None
App. No.
18/319,110
Abstract

Methods, systems, and devices for data management are described. Some systems may include a job engine associated with one or more software-as-a-service (SaaS) services. The job engine may identify computing resources distributed across one or more cloud environments. The computing resources may be of two or more different resource types. The job engine may generate multiple resource controllers associated with the computing resources. The resource controllers may be of two or more different controller types and may each be mapped to a respective computing resource based on a resource type of the computing resource and a controller type of the resource controller. A resource controller may be operable to monitor, based on a set of tasks generated by the job engine, one or more parameters associated with a computing resource and modify, based on the set of tasks, the one or more parameters associated with the computing resource.

Claims (54)

1 . A method, comprising:

identifying, by a job engine associated with one or more software-as-a-service (SaaS) services, a plurality of computing resources distributed across one or more cloud environments, wherein the plurality of computing resources comprise computing resources of two or more different resource types; and

generating, by the job engine, a plurality of resource controllers associated with the plurality of computing resources, wherein the plurality of resource controllers comprise resource controllers of two or more different controller types, and wherein a resource controller of the plurality of resource controllers is mapped to a computing resource of the plurality of computing resources based at least in part on a resource type of the computing resource and a controller type of the resource controller, the resource controller operable to:

monitor, based at least in part on a set of tasks generated by the job engine, one or more parameters associated with the computing resource; and

modify, based at least in part on the set of tasks generated by the job engine, the one or more parameters associated with the computing resource.

2 . The method of claim 1 , further comprising:

generating, in accordance with a generation schedule, second instances of the plurality of resource controllers, wherein first instances of the plurality of resource controllers are replaced by the generated second instances.

3 . The method of claim 2 , wherein:

the generation schedule is based at least in part on a life span of the plurality of resource controllers, and

the generation schedule corresponds to a time period over which respective first instances of the plurality of resource controllers operate before subsequent instances of the plurality of resource controllers are generated to replace the respective first instances of the plurality of resource controllers.

4 . The method of claim 2 , further comprising:

operating according to a computing resource management mode, where generating the plurality of resource controllers and the second instances of the plurality of resource controllers is based at least in part on the computing resource management mode; and

refraining from generating additional instances of the plurality of resource controllers based at least in part on a deactivation of the computing resource management mode.

5 . The method of claim 1 , further comprising:

generating, after generating the plurality of resource controllers, a plurality of sets of tasks for the plurality of resource controllers, wherein the set of tasks is one of the plurality of sets of tasks and comprises tasks to be executed by the resource controller.

6 . The method of claim 5 , wherein:

the resource controller is further operable to execute the tasks of the set of tasks in sequential order, and

execution of a sequential task in the set of tasks is independent from a success or a failure of a previous task in the set of tasks.

7 . The method of claim 1 , wherein, to modify the one or more parameters associated with the computing resource, the resource controller is operable to adjust a state of the one or more parameters based at least in part on information obtained via monitoring the one or more parameters.

8 . The method of claim 1 , wherein, to modify the one or more parameters associated with the computing resource, the resource controller is operable to adjust a state of the one or more parameters based at least in part on a mutation task included in the set of tasks for the resource controller and independent from information obtained via monitoring the one or more parameters.

9 . The method of claim 1 , wherein the job engine, the plurality of resource controllers, and the plurality of computing resources operate in a first cloud environment.

10 . The method of claim 1 , wherein:

the job engine and the plurality of resource controllers operate in a first cloud environment; and

the plurality of computing resources operate in a second cloud environment different than the first cloud environment.

11 . The method of claim 1 , wherein, to monitor the one or more parameters associated with the computing resource, the resource controller is operable to:

monitor a performance of one or more units of processing power associated with the computing resource, or a state of a cluster comprising the computing resource, or both.

12 . The method of claim 1 , wherein the plurality of computing resources comprise individual computing resources, or computing resource clusters, or both.

13 . An apparatus, comprising:

a processor;

memory coupled with the processor; and

instructions stored in the memory and executable by the processor to cause the apparatus to:

identify, by a job engine associated with one or more software-as-a-service (SaaS) services, a plurality of computing resources distributed across one or more cloud environments, wherein the plurality of computing resources comprise computing resources of two or more different resource types; and

generate, by the job engine, a plurality of resource controllers associated with the plurality of computing resources, wherein the plurality of resource controllers comprise resource controllers of two or more different controller types, and wherein a resource controller of the plurality of resource controllers is mapped to a computing resource of the plurality of computing resources based at least in part on a resource type of the computing resource and a controller type of the resource controller, the resource controller operable to:

monitor, based at least in part on a set of tasks generated by the job engine, one or more parameters associated with the computing resource; and

modify, based at least in part on the set of tasks generated by the job engine, the one or more parameters associated with the computing resource.

14 . The apparatus of claim 13 , wherein the instructions are further executable by the processor to cause the apparatus to:

generate, in accordance with a generation schedule, second instances of the plurality of resource controllers, wherein first instances of the plurality of resource controllers are replaced by the generated second instances.

15 . The apparatus of claim 14 , wherein:

the generation schedule is based at least in part on a life span of the plurality of resource controllers, and

the generation schedule corresponds to a time period over which respective first instances of the plurality of resource controllers operate before subsequent instances of the plurality of resource controllers are generated to replace the respective first instances of the plurality of resource controllers.

16 . The apparatus of claim 14 , wherein the instructions are further executable by the processor to cause the apparatus to:

operate according to a computing resource management mode, where generating the plurality of resource controllers and the second instances of the plurality of resource controllers is based at least in part on the computing resource management mode; and

refrain from generating additional instances of the plurality of resource controllers based at least in part on a deactivation of the computing resource management mode.

17 . The apparatus of claim 13 , wherein the instructions are further executable by the processor to cause the apparatus to:

generate, after generating the plurality of resource controllers, a plurality of sets of tasks for the plurality of resource controllers, wherein the set of tasks is one of the plurality of sets of tasks and comprises tasks to be executed by the resource controller.

18 . A non-transitory computer-readable medium storing code, the code comprising instructions executable by a processor to:

identify, by a job engine associated with one or more software-as-a-service (SaaS) services, a plurality of computing resources distributed across one or more cloud environments, wherein the plurality of computing resources comprise computing resources of two or more different resource types; and

generate, by the job engine, a plurality of resource controllers associated with the plurality of computing resources, wherein the plurality of resource controllers comprise resource controllers of two or more different controller types, and wherein a resource controller of the plurality of resource controllers is mapped to a computing resource of the plurality of computing resources based at least in part on a resource type of the computing resource and a controller type of the resource controller, the resource controller operable to:

monitor, based at least in part on a set of tasks generated by the job engine, one or more parameters associated with the computing resource; and

modify, based at least in part on the set of tasks generated by the job engine, the one or more parameters associated with the computing resource.

19 . The non-transitory computer-readable medium of claim 18 , wherein the instructions are further executable by the processor to:

generate, in accordance with a generation schedule, second instances of the plurality of resource controllers, wherein first instances of the plurality of resource controllers are replaced by the generated second instances.

20 . The non-transitory computer-readable medium of claim 18 , wherein the instructions are further executable by the processor to:

generate, after generating the plurality of resource controllers, a plurality of sets of tasks for the plurality of resource controllers, wherein the set of tasks is one of the plurality of sets of tasks and comprises tasks to be executed by the resource controller.

Assignments (3)
RELEASE OF SECURITY INTEREST IN PATENT COLLATERAL AT REEL/FRAME NO. 64659/0236 Recorded Jun 13, 2025
From: GOLDMAN SACHS BDC, INC., AS COLLATERAL AGENT
To: RUBRIK, INC.
Reel/Frame 071566/0187 →
GRANT OF SECURITY INTEREST IN PATENT RIGHTS Recorded Aug 21, 2023
From: RUBRIK, INC.
To: GOLDMAN SACHS BDC, INC., AS COLLATERAL AGENT
Reel/Frame 064659/0236 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 19, 2023
From: XU, JUN; TEREI, DAVID ANTHONY; PATIL, VINAY
To: RUBRIK, INC.
Reel/Frame 063708/0944 →