Policy driven autonomic computing-programmatic policy definitions
First Claim
1. A method comprising:
- receiving at least one policy definition defined by a user, wherein the at least one policy definition includes at least one conditional relationship specification, and wherein the at least one policy definition programmatically specifies relationships between at least two resources in a set of resources in an autonomic computing system and defines at least one desired end state therefore, and wherein the at least one conditional relationship specification indicates a relationship between at least two resources based on a state associated with each of the at least two resources, and wherein the at least on conditional relationship specification comprises at least one conditional statement, and wherein the at least one policy definition programmatically specifies relationships by using states associated with the at least two resources, wherein the state of one of the at least two resources depends on the state of the other resource, and indicating a decision sequence that is to be followed to reach the at least one desired end state based on the at least one conditional relationship specification;
harvesting implicit relationships among the set of resources via self-discovery, 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 self-discovery includes automatically discovering the set of implicit relationships without the user explicitly specifying the implicit relationships;
determining, by the autonomic computing system, that a state of at least one resource in the set of resources substantially satisfies a predetermined requirement of the at least one conditional relationship specification and dependencies and requirements of the set of implicit relationships that have been harvested, wherein the set of resources includes any resources identified based on the set of implicit relationships that have been harvested;
determining, by the autonomic computing system in response to the state of the at least one resource substantially satisfying the predetermined requirement, that the desired end state can be reached by applying the at least one policy definition conditioned by the at least one conditional relationship specification; and
placing the autonomic computing system in the desired end state by applying the at least one policy definition.
1 Assignment
0 Petitions
Accused Products
Abstract
An autonomic computing system and method determine that a desired end state cannot be reached, determine that an acceptable sub-state can be reached using at least one of priority ratings, conditional relationship specifications, and alternative relationship specifications, and place the computing system in an acceptable sub-state. The priority ratings can contain an attribute assigned to a policy definition that determines a sequence for applying the policy definition. The attribute can be “mandatory”, a numerical value, or “not required”. The conditional relationship specifications have policy definitions that are applied when the state of a specified resource meets a predetermined requirement. An alternative relationship specification has policy definitions and/or conditional relationship specifications that are applied when the state of a specified resource does not meet a predetermined requirement.
-
Citations
21 Claims
-
1. A method comprising:
-
receiving at least one policy definition defined by a user, wherein the at least one policy definition includes at least one conditional relationship specification, and wherein the at least one policy definition programmatically specifies relationships between at least two resources in a set of resources in an autonomic computing system and defines at least one desired end state therefore, and wherein the at least one conditional relationship specification indicates a relationship between at least two resources based on a state associated with each of the at least two resources, and wherein the at least on conditional relationship specification comprises at least one conditional statement, and wherein the at least one policy definition programmatically specifies relationships by using states associated with the at least two resources, wherein the state of one of the at least two resources depends on the state of the other resource, and indicating a decision sequence that is to be followed to reach the at least one desired end state based on the at least one conditional relationship specification; harvesting implicit relationships among the set of resources via self-discovery, 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 self-discovery includes automatically discovering the set of implicit relationships without the user explicitly specifying the implicit relationships; determining, by the autonomic computing system, that a state of at least one resource in the set of resources substantially satisfies a predetermined requirement of the at least one conditional relationship specification and dependencies and requirements of the set of implicit relationships that have been harvested, wherein the set of resources includes any resources identified based on the set of implicit relationships that have been harvested; determining, by the autonomic computing system in response to the state of the at least one resource substantially satisfying the predetermined requirement, that the desired end state can be reached by applying the at least one policy definition conditioned by the at least one conditional relationship specification; and placing the autonomic computing system in the desired end state by applying the at least one policy definition. - View Dependent Claims (14)
-
-
2. A method comprising:
-
receiving at least one policy definition defined by a user, wherein the at least one policy definition includes at least one conditional relationship specification, and wherein the at least one policy definition programmatically specifies relationships between resources in an autonomic computing system and defines at least one acceptable sub-state and at least one desired end state for the autonomic computing system, and wherein the policy definition indicating a decision sequence that is to be followed to reach the at least one desired end state based at least on the at least one conditional relationship specification; determining that the desired end state for the autonomic computing system cannot be reached; determining that the acceptable sub-state of the desired end state can be reached using at least one of priority ratings, conditional relationship specifications, and alternative relationship specifications; and placing the autonomic computing system in the acceptable sub-state as a substitution for the desired end-state, wherein the acceptable sub-state becomes a new end-state in response to the substitution. - View Dependent Claims (3, 4, 5, 6)
-
-
7. A non-transitory computer readable storage medium comprising computer instructions for performing the following:
-
receiving at least one policy definition defined by a user, wherein the at least one policy definition includes at least one conditional relationship specification, and wherein the at least one policy definition programmatically specifies relationships between at least two resources in a set of resources in an autonomic computing system and defines at least one desired end state therefor, and wherein the at least one conditional relationship specification indicates a relationship between at least two resources based on a state associated with each of the at least two resources, wherein the at least one conditional relationship specification comprises at least one conditional statement, and wherein the at least one policy definition programmatically specifies relationships by using states associated with the at least two resources, wherein the state of one of the at least two resources depends on the state of the other resource, and indicating a decision sequence that is to be followed to reach the at least one desired end state based on the at least one conditional relationship specification; wherein the policy definition further comprises a set of resource relationships received that 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; harvesting implicit relationships among the set of resources via self-discovery, 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 self-discovery includes automatically discovering the set of implicit relationships 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, by the autonomic computing system, that a state of at least one resource in the set of resources substantially satisfies a predetermined requirement of the at least one conditional relationship specification and dependencies and requirements of the set of implicit relationships that have been harvested; determining, by the autonomic computing system in response to the state of the at least one resource substantially satisfying the predetermined requirement, that the desired end state can be reached by applying the at least one policy definition conditioned by the at least one conditional relationship specification; and placing the autonomic computing system in the desired end state by applying the at least one policy definition.
-
-
8. A non-transitory computer readable storage medium comprising computer instructions for performing the following:
-
receiving at least one policy definition defined by a user, wherein the at least one policy definition includes at least one conditional relationship specification, and wherein the at least one policy definition programmatically specifies relationships between resources in an autonomic computing system and defines at least one acceptable sub-state and at least one desired end state for the autonomic computing system, and wherein the policy definition indicating a decision sequence that is to be followed to reach the at least one desired end state based at least on the at least one conditional relationship specification; determining that the desired end state for the autonomic computing system cannot be reached; determining that the acceptable sub-state of the desired end state can be reached using at least one of priority ratings, conditional relationship specifications, and alternative relationship specifications; and placing the autonomic computing system in the acceptable sub-state as a substitution for the desired end-state, wherein the acceptable sub-state becomes a new end-state in response to the substitution. - View Dependent Claims (9, 10, 11, 12)
-
-
13. An autonomic resource manager for an autonomic computing system, the autonomic resource manager comprising:
-
memory for storing at least one policy definition defined by a user, wherein the at least one policy definition includes at least one conditional relationship specification, and wherein the at least one policy definition programmatically specifies relationships between at least two resources in a set of resources in an autonomic computing system and defines at least one desired end state therefore, and wherein the at least one conditional relationship specification indicates a relationship between at least two resources based on a state associated with each of the at least two resources, and wherein the at least on conditional relationship specification comprises at least one conditional statement, wherein the at least one policy definition programmatically specifies relationships by using states associated with the at least two resources, wherein the state of one of the at least two resources depends on the state of the other resource, and indicating a decision sequence that is to be followed to reach the at least one desired end state based on the at least one conditional relationship specification; a relationship harvester for harvesting implicit relationships among the set of resources via self-discovery, 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 self-discovery includes automatically discovering the set of implicit relationships without the user explicitly specifying the implicit relationships; a resource monitor, communicatively coupled with each resource in the autonomic computing system, for monitoring, and communicating data with, each resource in the autonomic computing system; an equivalency definer, communicatively coupled with each resource in the autonomic computing system, and with the memory, for defining at least one equivalency representing at least one set of equivalent resources in the autonomic computing system, and storing the at least one equivalency in the memory, wherein the equivalency defines the at least one set of equivalent resources that can be substituted for one another in accordance with the at least one policy definition that includes at least one conditional relationship specification to arrive at the desired end state; a policy generator, communicatively coupled with the resource monitor and the memory, for providing in the memory a representation of a system-wide graph of available actions and at least one of conditional relationship specifications and alternative relationship specifications, corresponding with resources in the autonomic computing system including any resources identified based on the dependencies and requirements of the set of implicit relationships that have been harvested; and an automation engine, communicatively coupled with the resource monitor, with at least one resource in the autonomic computing system, and with the memory, for providing available actions as defined by the at least one policy definition to the at least one resource in the autonomic computing system in order for the autonomic computing system to establish and maintain a desired end state. - View Dependent Claims (15, 16, 17)
-
-
18. An autonomic computing system, comprising:
-
distributed resources; and an autonomic resource manager, communicatively coupled with the distributed resources, for receiving at least one policy definition defined by a user, wherein the at least one policy definition includes at least one conditional relationship specification, and wherein the at least one policy definition programmatically specifies relationships between resources in an autonomic computing system and defines at least one acceptable sub-state and at least one desired end state for the autonomic computing system, and wherein the policy definition indicating a decision sequence that is to be followed to reach the at least one desired end state based at least on the at least one conditional relationship specification, determining that the desired end state for the autonomic computing system cannot be reached, determining that acceptable sub-state of the desired end state can be reached using at least one of priority ratings, conditional relationship specifications, and alternative relationship specifications, and placing the autonomic computing system in acceptable sub-state as a substitution for the desired end-state, wherein the acceptable sub-state becomes a new end-state in response to the substitution. - View Dependent Claims (19, 20, 21)
-
Specification