Patent ID: 7451201
Filing Date: 2008-11-11
Classification: H04L

Abstract:
1. A method comprising: receiving, from a user, a desired end state associated with an autonomic computing system and a set of resource relationships associated with a set of resources for accomplishing the desired end state, wherein the desired end state indicates an operational state associated with a component to be achieved by the autonomic computing system by utilizing one or more resources in the set of resources without violating relationship specifications associated with the set of resources, and wherein the set of resource relationships received from the user only specify relationships associated with a top-most level set of resources in the set of resources, wherein the availability of one or more of the top-most level set of resources is dependent on the availability of one or more resources of a lower level set of resources in a reverse hierarchy of dependencies from top-most level to lowest level set of resources; discovering a set of implicit relationships associated with at least the set of resources, wherein the set of implicit relationships at least indicate one or more of a set of resource dependencies for at least one resource in the set of resources and location requirements for at least one resource in the set of resources, and wherein the set of implicit relationships are discovered automatically without the user explicitly specifying the implicit relationships, wherein the set of implicit relationships are relationships associated from the top-most level set of resources to a lower level set of resources in the set of resources; determining, in response to the receiving, policy definitions associated with the set of resources for achieving the desired end state associated with the autonomic computing system, wherein the policy definitions are determined based on the set of resource relationships received from the user and the implicit relationships that have been discovered, and wherein the policy definitions define at least one of operational policies indicating how to operate the set of resources and selection policies indicating how to select resources in the set of resources to achieve the desired end state; generating a system-wide directed graph, based on at least the set of resource relationships received from the user, the implicit relationships that have been discovered, and the policy definitions that have been determined that specifies a set of interrelations between the set of resources; monitoring each resource in the set of resources for status information associated with each resource, wherein the status information indicates a resource associated with the status information has achieved a desired end state associated with the resource, wherein the desired end state of the resource indicates at least an operational state of the resource to be achieved by the autonomic computing system in order to achieve the desired end state of the autonomic computing system; determining, based on the monitoring, if the autonomic computing system is at the desired end state, wherein the autonomic computing system is at the desired end state if each resource in the set of resources being utilized by the autonomic computing system to achieve the desired end state has achieved their own desired end states; and dynamically modifying resource states, in response to determining the autonomic computing system is not at the desired end state, by sending an instruction for at least one resource to perform an available action based on the policy definitions and the system-wide directed graph, wherein the available action is at least one of and wherein the at least one resource is at least one of a resource in the set of resources and a new resource identified in the system-wide directed graph.