Use of external services with clusters
First Claim
1. A method for managing resources in a cluster, comprising:
- creating a proxy resource, wherein the proxy resource is associated with an external resource, wherein the proxy resource is configured to communicate with the external resource, wherein the external resource is located in an external cluster, wherein the external cluster executes on a hardware platform;
making a determination that a resource in the cluster is dependent on the external resource, wherein the cluster executes a cluster framework and wherein the proxy resource is located in the cluster;
based on the determination, creating a first dependency between the resource and the proxy resource and creating a second dependency between the proxy resource and the external resource;
starting, by the cluster framework, the proxy resource;
configuring in response to the starting of the proxy resource, by the cluster framework, a state of the proxy resource to indicate that the proxy resource is in an online-standby state and a state of the external resource to indicate that the external resource is not enabled;
determining an ordering to enable a set of resources including the resource and the external resource, wherein the ordering is based on dependencies of the set of resources and interleaves resources controlled by the cluster framework and the external resource;
enabling the set of resources by enforcing at least the first dependency;
receiving, by the proxy resource, information indicating that the external resource is enabled;
reconfiguring, in response to receiving information that the external resource is enabled, the state of the proxy resource to indicate that the proxy resource is online;
invoking, in response to receiving the information, a cluster command to reconfigure the state for the external resource to indicate that the external resource is enabled;
reconfiguring, in response to the cluster command, the state of the external resource to indicate that the external resource is enabled; and
starting, by the cluster framework, the resource in response to the determination that the state of the proxy resource indicates that the proxy resource is online and based on the first dependency and the second dependency, wherein the resource is configured to execute an instruction after the resource is started.
3 Assignments
0 Petitions
Accused Products
Abstract
A method, apparatus, and system are directed toward managing a system that includes a cluster and an external resource. The external resource may be part of a second cluster that is collocated on the same hardware platforms as the cluster. A proxy resource is used to enforce a dependency relationship between a native resource of the cluster and an external resource, such that a dependency with the proxy resource serves to enforce a dependency with the external resource. The cluster framework may maintain states of the proxy resource, including an offline state, an online-standby state, and an online state. The online-standby indicates that the proxy has been started, but it has not determined that the associated external resource is enabled. The proxy may determine whether the external resource is enabled or disabled and, in response, notify the cluster framework.
-
Citations
7 Claims
-
1. A method for managing resources in a cluster, comprising:
creating a proxy resource, wherein the proxy resource is associated with an external resource, wherein the proxy resource is configured to communicate with the external resource, wherein the external resource is located in an external cluster, wherein the external cluster executes on a hardware platform; making a determination that a resource in the cluster is dependent on the external resource, wherein the cluster executes a cluster framework and wherein the proxy resource is located in the cluster; based on the determination, creating a first dependency between the resource and the proxy resource and creating a second dependency between the proxy resource and the external resource; starting, by the cluster framework, the proxy resource; configuring in response to the starting of the proxy resource, by the cluster framework, a state of the proxy resource to indicate that the proxy resource is in an online-standby state and a state of the external resource to indicate that the external resource is not enabled; determining an ordering to enable a set of resources including the resource and the external resource, wherein the ordering is based on dependencies of the set of resources and interleaves resources controlled by the cluster framework and the external resource; enabling the set of resources by enforcing at least the first dependency; receiving, by the proxy resource, information indicating that the external resource is enabled; reconfiguring, in response to receiving information that the external resource is enabled, the state of the proxy resource to indicate that the proxy resource is online; invoking, in response to receiving the information, a cluster command to reconfigure the state for the external resource to indicate that the external resource is enabled; reconfiguring, in response to the cluster command, the state of the external resource to indicate that the external resource is enabled; and starting, by the cluster framework, the resource in response to the determination that the state of the proxy resource indicates that the proxy resource is online and based on the first dependency and the second dependency, wherein the resource is configured to execute an instruction after the resource is started. - View Dependent Claims (2, 3, 4, 5, 6)
-
7. A system, comprising:
-
a hardware platform; a native cluster comprising a resource; wherein the external cluster executes on the hardware platform; an external cluster comprising an external resource; a native cluster framework configured to execute on the native cluster and control the resource of the native cluster; a proxy resource located in the native cluster, wherein the proxy resource is associated with the external resource controlled by the external cluster; wherein the native cluster framework is configured to; make a determination that the resource in a cluster is dependent on the external resource; based on the determination, creating a first dependency between the resource and the proxy resource and creating a second dependency between the proxy resource and the external resource; start, by the cluster framework, the proxy resource; configure in response to the starting of the proxy resource, by the cluster framework, a state of the proxy resource to indicate that the proxy resource is in an online-standby state and a state of the external resource to indicate that the external resource is not enabled; determine an ordering to enable a set of resources including the resource and the external resource, wherein the ordering is based on dependencies of the set of resources and interleaves resources controlled by the native cluster framework and the external resource; enable the set of resources by enforcing at least the first dependency; receive, by the proxy resource, information indicating that the external resource is enabled; reconfigure, in response to receiving the information that the external resource is enabled, the state of the proxy resource to indicate that the proxy resource is online; starting, by the cluster framework, the resource in response to a determination that the state of the proxy resource indicates that the proxy resource is online and based on the first dependency and the second dependency, wherein the resource is configured to execute an instruction after the resource is started.
-
Specification