Customizable high availability switchover control of application delivery controllers
First Claim
1. A computer implemented method for determining active/standby status for device resources:
- receiving user input specifying a first set of events and a policy related to said first set of events for computing numerical health scores for a first resource associated with a first device, and for a second resource associated with a second device, wherein said first and said second resources are configured to be functionally equivalent in an intermediary device cluster;
compiling said first set of events and a policy into a template resident in said intermediary device cluster and accessible to said first device and said second device, wherein said policy specifies;
a numerical health score for each event of said first set of events, and a weight value for each event of said first set of events;
monitoring events with respect to said first device and said second device to determine if any of said first set of events defined in said template occurs;
based on said monitoring, said template, and said user input, determining numerical health scores for said first resource and said second resource, wherein said numerical health scores are dynamically derived and updated by at least one of any occurrence of said first set of events or a periodic update, and said numerical health scores are communicated between the first and second device;
accessing a priority rank that is determined based on a second set of events;
monitoring said second set of events;
determining a priority value for said first resource and a priority value for said second resource based on said monitoring said second set of events;
responsive to a determination that said numerical heath score for said first resource is lower than said numerical health score for said second resource, switching from actively using said first resource to actively using said second resource in said intermediary device cluster and instructing said first resource to be standby;
responsive to a determination that said numerical heath score for said first resource is equal to said numerical health score for said second resource, and said priority value for said first resource is lower than said priority value for said second resource, switching from actively using said first resource to actively using said second resource in said intermediary device cluster and instructing said first resource to be standby; and
routing service requests to said second resource of said second device responsive to the switching.
1 Assignment
0 Petitions
Accused Products
Abstract
System and method of determining active/standby statuses of an intermediary device with respect to a logic group based on a user defined switchover policy. A user is allowed to configure a template to determine respective health levels for multiple sets of delivery resources. Each set of resources associated with a function engine residing in a respective intermediary device. The multiple sets of resources, in conjunction with the associated function engines, are equivalently operable to provide the same service function. The template may include user-specified events and respective weight factors. The specified events are monitored and a health score is dynamically derived for each delivery resource based on the template. Based on an updated health score rank with respect to the service function, a switchover may automatically occur from an intermediary device of a lower health score to another device with a higher health score.
23 Citations
16 Claims
-
1. A computer implemented method for determining active/standby status for device resources:
-
receiving user input specifying a first set of events and a policy related to said first set of events for computing numerical health scores for a first resource associated with a first device, and for a second resource associated with a second device, wherein said first and said second resources are configured to be functionally equivalent in an intermediary device cluster; compiling said first set of events and a policy into a template resident in said intermediary device cluster and accessible to said first device and said second device, wherein said policy specifies;
a numerical health score for each event of said first set of events, and a weight value for each event of said first set of events;monitoring events with respect to said first device and said second device to determine if any of said first set of events defined in said template occurs; based on said monitoring, said template, and said user input, determining numerical health scores for said first resource and said second resource, wherein said numerical health scores are dynamically derived and updated by at least one of any occurrence of said first set of events or a periodic update, and said numerical health scores are communicated between the first and second device; accessing a priority rank that is determined based on a second set of events; monitoring said second set of events; determining a priority value for said first resource and a priority value for said second resource based on said monitoring said second set of events; responsive to a determination that said numerical heath score for said first resource is lower than said numerical health score for said second resource, switching from actively using said first resource to actively using said second resource in said intermediary device cluster and instructing said first resource to be standby; responsive to a determination that said numerical heath score for said first resource is equal to said numerical health score for said second resource, and said priority value for said first resource is lower than said priority value for said second resource, switching from actively using said first resource to actively using said second resource in said intermediary device cluster and instructing said first resource to be standby; and routing service requests to said second resource of said second device responsive to the switching. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A non-transitory computer-readable storage medium embodying instructions that, when executed by a processing device, cause the processing device to perform a method of facilitating application delivery, said method comprising:
-
receiving user input that identifies a first set of events and a policy to said first set of events for computing numerical health scores for a first group of resources associated with a first device and for a second group of resources for a second device, wherein said second group have functionally equivalent logic with said first group with respect to an intermediary device cluster; compiling said first set of events and a policy into a template resident in said intermediary device cluster, and accessible to said first device and said second device, wherein said policy specifies;
a numerical health score for each event of said first set of events, and a weight value for each event of said first set of events;monitoring said first set of events with respect to said first device and said second device to determine if any of said first set of events defined in said template occurs; determining numerical health scores for said first group of resources and for said second group of resources based on said monitoring said first set of events, wherein said numerical health scores are dynamically derived and updated by at least one of any occurrence of said first set of events or a periodic update, and said numerical health scores are communicated between the first and second device; accessing a priority rank that is determined based on a second set of events; monitoring said second set of events; determining a priority value for said first group of resources and a priority value for said second resource based on said monitoring said second set of events; and switching from actively using said first group of resources to actively using said second group of resources in said intermediary device duster based on said numerical health score and said priority value, wherein the switching is responsive to a determination that said numerical heath score for said first resource is lower than said numerical health score for said second resource, or responsive to a determination that said numerical heath score for said first resource is equal to said numerical health score for said second resource, and said priority value for said first resource is lower than said priority value for said second resource; and routing service requests responsive to the switching and instructing said first group of resources to be standby in said intermediary device cluster. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. An application delivery intermediary device comprising:
-
communication circuits; a processor; and memory coupled to said processor and comprising instructions that, when executed by said processor, cause the system to perform a method of facilitating application delivery between client devices and server devices with high reliability, said method comprising; receiving user input identifying a first set of events and a policy related to said first set of events for computing numerical health scores for a first resource attached to a first device and a second resource attached to a second device, wherein said first resource and said second resource are configured to be functionally equivalent with respect to an intermediary device cluster; compiling said first set of events and a policy into a template resident, in a device in said intermediary device cluster, and accessible to said first device and said second device, wherein said policy comprises a health value for each event of said first set of events, and a weight value for each event of said first set of events; monitoring events with respect to said first device and said second device to determine if any of said first set of events defined in said template occurs; based on said monitoring, said template, and said user input, determining a numerical health score for said first resource and said second resource, wherein said numerical health scores are dynamically derived and updated by at least one of any occurrence of said first set of events or a periodic update, and said numerical health scores are communicated between the first and second device; accessing a priority rank that is determined based on a second set of events; monitoring said second set of events; determining a priority value for said first resource and a priority value for said second resource based on said monitoring said second set of events; responsive to a determination that said numerical heath score for said first resource is lower than said numerical health score for said second resource, switching from actively using said first resource to actively using said second resource in said intermediary device cluster and instructing said first resource to be standby; responsive to a determination that said numerical heath score for said first resource is equal to said numerical health score for said second resource, and said priority value for said first resource is lower than said priority value for said second resource, switching from actively using said first resource to actively using said second resource in said intermediary device cluster and instructing said first resource to be standby; and routing service requests to said second resource of said second device, responsive to said switching. - View Dependent Claims (16)
-
Specification