ENDPOINT MANAGEMENT BASED ON ENDPOINT TYPE
Techniques are disclosed to facilitate endpoint management based on endpoint type. Counts of endpoints currently managed by an application are provided for each endpoint type. Weights are provided that each represent a measure of resource consumption by the application in managing an endpoint of a respective endpoint type. A count of additional endpoints of a first endpoint type is determined based on a capacity of a set of available resources. The count is used to facilitate usage of the predefined capacity of the set of available resources.
1 . A computer-implemented method to facilitate endpoint management based on endpoint type, the method comprising:
providing, by an application, a plurality of endpoint counts comprising, for each of a plurality of endpoint types, a count of endpoints of the respective endpoint type, currently managed by the application, the application having access to a set of resources of a given capacity;
providing a plurality of weights comprising a respective weight for each of the plurality of endpoint types, each weight representing a measure of resource consumption by the application in managing an endpoint of the respective endpoint type, the plurality of weights including at least two distinct weights;
determining, by operation of one or more computer processors and for at least a first endpoint type of the plurality of endpoint types, a count of additional endpoints of the first endpoint type, potentially managed by the application, based on the given capacity of the set of resources; and
outputting the count of additional endpoints of the first endpoint type, wherein the count of additional endpoints of the first endpoint type is used in order to facilitate usage of the given capacity of the set of resources to which the application has access.
2 . The computer-implemented method of claim 1 , the given capacity of the set of resources is predefined, wherein the plurality of weights are determined based on a set of performance metrics generated from executing one or more predefined benchmarks simulating operation of the application using the set of resources, wherein the set of performance metrics is used to determine a plurality of resource capacity thresholds for the predefined capacity of the set of resources, the plurality of resource capacity thresholds including a maximum resource capacity threshold and one or more low or medium resource capacity thresholds.
3 . The computer-implemented method of claim 2 , wherein the count of additional endpoints of the first endpoint type is determined based on a predefined function of: (i) the plurality of endpoint counts; (ii) the plurality of weights; and (iii) the maximum resource capacity threshold;
wherein the set of resources consists of a set of resources available to a management appliance on which the application is configured to execute, wherein each weight comprises a numeric value, wherein the resource capacity threshold comprises a numeric value, wherein the predefined function comprises a weighted sum, wherein the count of additional endpoints comprises a projected maximum count.
4 . The computer-implemented method of claim 3 , wherein the one or more predefined benchmarks are configured to, in respective instances, measure each performance metric selected from response time, path length, and resource utilization, wherein path length comprises a count of processor instructions issued to process a given message;
wherein the count of additional endpoints of the first endpoint type is conveyed to a user, wherein the application additionally manages each additional endpoint of the count of additional endpoints of the first endpoint type upon receiving confirmation from the user.
5 . The computer-implemented method of claim 4 , wherein usage of the predefined capacity of the set of resources is facilitated to a further extent than when the count of additional endpoints is neither determined nor output, wherein the application is configured to, in respective instances, manage each endpoint type selected from hardware endpoints, operating system endpoints, and virtual endpoints.
6 . The computer-implemented method of claim 5 , wherein the application is configured to, in respective instances, manage each hardware endpoint selected from a chassis, a switch, and a blade, wherein the application is configured to, in respective instances, manage each operating system endpoint selected from: (i) a guest operating system executing on a virtual server and (ii) a host operating system executing on a physical server; wherein the application is configured to, in respective instances, manage each virtual endpoint selected from a virtual server and a virtual switch;
wherein the application is configured to convey, for each endpoint type: (i) the count of endpoints currently managed by the application and (ii) the count of additional endpoints potentially managed by the application given the predefined capacity of the set of resources.
7 . The computer-implemented method of claim 6 , wherein the count of additional endpoints of the first endpoint type, potentially managed by the application is determined based further on a desired endpoint management pattern selected from a plurality of distinct, predefined endpoint management patterns;
wherein the plurality of endpoint types are predefined, wherein the application is configured to convey, in respective instances, each count of additional endpoints selected from a count of hardware endpoints, a count of operating system endpoints, and a count of virtual endpoints;
wherein the application is further configured to, in respective instances, convey each resource utilization type of the management appliance, selected from processor utilization, memory utilization, storage utilization, and network utilization;
wherein the weight for the guest operating system is higher than the weight for the host operating system, wherein the weight for the host operating system is higher than each weight selected from the weight for the chassis, the weight for the blade, the weight for the switch, and the weight for the virtual server;
wherein the application is further configured to:
only upon determining that the maximum resource capacity is exceeded, conveying to the user that the maximum resource capacity is exceeded; and
only upon determining a first one of the one or more medium resource capacity thresholds is exceeded, conveying to the user that the first medium resource capacity threshold is exceeded.