Evaluating high-availability configuration
Various systems and methods for evaluating and controlling high-availability configuration. For example, one method can involve detecting fault tolerance parameters that can be available within a datacenter. The method also involves identifying a set of fault tolerance parameters that applies to an application. Identifying the fault tolerance parameters that apply to the application involves detecting whether the application is associated with one or more high-availability applications. The method also involves generating an index value for the application. The index value is based on the fault tolerance parameters associated with the application and provides an objective measure of the fault tolerance of the application.
1. A method comprising:
detecting a plurality of fault tolerance parameters potentially available within a datacenter;
identifying a set of at least one fault tolerance parameter from the plurality of fault tolerance parameters, wherein
each fault tolerance parameter of the set applies to an application,
the identifying comprises detecting that at least one high-availability application of a plurality of high-availability applications currently executing in the datacenter is associated with the application, and
the at least one high-availability application provides the at least one fault tolerance parameter for the application when associated with the application;
generating an index value for the application, wherein
the index value is based on the set,
the index value comprises an objective measure of fault tolerance associated with the application, and
the detecting, the identifying, and the generating are performed by a datacenter management module executing on a computing device.
2. The method of claim 1 , further comprising:
detecting a required minimum index value for the application, wherein
the minimum index value is based on a criticality indicator for the application.
3. The method of claim 2 , further comprising:
comparing the index value and the minimum index value; and
reconfiguring the fault tolerance provided to the application in response to detecting that the index value is less than the minimum index value.
4. The method of claim 3 , wherein
the reconfiguring comprises associating the application with an additional high-availability application of the plurality of high-availability applications.
5. The method of claim 1 , further comprising:
creating a mapping, wherein the mapping identifies
at least one fault tolerance parameter,
an indication of whether the fault tolerance parameter is enabled for the application, and
information identifying one or more of the plurality of high-availability applications that provides the fault tolerance parameter for the application.
6. The method of claim 1 , wherein
a number of levels of high-availability protection is proportional to the index value.
7. The method of claim 1 , further comprising:
mapping each of the fault tolerance parameters to at least one capable high-availability application, wherein
the at least one capable high-availability application is configured to provide the respective fault tolerance parameter to the application.
8. The method of claim 1 , wherein
the set identifies fault tolerance parameters provided by high-availability applications that operate at different organizational levels.
9. A non-transitory computer readable storage medium storing program instructions executable to:
detect a plurality of fault tolerance parameters potentially available within a datacenter;
identify a set of at least one fault tolerance parameter from the plurality of fault tolerance parameters, wherein
each fault tolerance parameter of the set applies to an application,
identifying the set comprises detecting that at least one high-availability application of a plurality of high-availability applications currently executing in the datacenter is associated with the application, and
the at least one high-availability application provides the at least one fault tolerance parameter for the application when associated with the application;
generate an index value for the application, wherein
the index value is based on the set, and
the index value comprises an objective measure of fault tolerance associated with the application.
10. The non-transitory computer readable storage medium of claim 9 , wherein the instructions are further executable to:
detect a required minimum index value for the application, wherein
the minimum index value is based on a criticality indicator for the application.
11. The non-transitory computer readable storage medium of claim 10 , wherein the instructions are further executable to:
compare the index value and the minimum index value; and
reconfigure the fault tolerance provided to the application in response to detecting that the index value is less than the minimum index value.
12. The non-transitory computer readable storage medium of claim 11 , wherein
reconfiguring the fault tolerance provided to the application comprises associating the application with an additional high-availability application of the plurality of high-availability applications.
13. The non-transitory computer readable storage medium of claim 9 , wherein the instructions are further executable to:
create a mapping, wherein the mapping identifies
at least one fault tolerance parameter,
an indication of whether the fault tolerance parameter is enabled for the application, and
information identifying one or more of the plurality of high-availability applications that provides the fault tolerance parameter for the application.
14. The non-transitory computer readable storage medium of claim 9 , wherein a number of levels of high-availability protection is proportional to the index value.
15. The non-transitory computer readable storage medium of claim 9 , wherein the instructions are further executable to:
map each of the fault tolerance parameters to at least one capable high-availability application, wherein
the at least one capable high-availability application is configured to provide the respective fault tolerance parameter to the application.
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:
detect a plurality of fault tolerance parameters potentially available within a datacenter;
identify a set of at least one fault tolerance parameter from the plurality of fault tolerance parameters, wherein
each fault tolerance parameter of the set applies to an application,
identifying the set comprises detecting that at least one high-availability application of a plurality of high-availability applications currently executing in the datacenter is associated with the application, and
the at least one high-availability application provides the at least one fault tolerance parameter for the application when associated with the application;
generate an index value for the application, wherein
the index value is based on the set, and
the index value comprises an objective measure of fault tolerance associated with the application.
17. The system of claim 16 , wherein the instructions are further executable to:
detect a required minimum index value for the application, wherein
the minimum index value is based on a criticality indicator for the application.
18. The system of claim 17 , wherein the instructions are further executable to:
compare the index value and the minimum index value; and
reconfigure the fault tolerance provided to the application in response to detecting that the index value is less than the minimum index value.
19. The system of claim 18 , wherein
reconfiguring the fault tolerance provided to the application comprises associating the application with an additional high-availability application of the plurality of high-availability applications.
20. The system of claim 16 , wherein the instructions are further executable to:
create a mapping, wherein the mapping identifies
at least one fault tolerance parameter,
an indication of whether the fault tolerance parameter is enabled for the application, and
information identifying one or more of the plurality of high-availability applications that provides the fault tolerance parameter for the application.