Sign In to Follow Application
View All Documents & Correspondence

Method And System For Template Based Dynamic Management Of Sudden Change In Workload

Abstract: A method for template based dynamic management of sudden change in workload in a cloud computing environment, comprising the steps of: a. providing a template for developing one or more applications; b. encapsulating one or more performance counters within the template; c. creating one or more applications using the template; d. measuring the workload by monitoring the performance counters against preset threshold values while the applications are running; and e. scaling down one or more resources if the measured values are less than the threshold values or scaling out one or more resources if the measured values are more than the threshold values

Get Free WhatsApp Updates!
Notices, Deadlines & Correspondence

Patent Information

Application #
Filing Date
15 July 2011
Publication Number
31/2011
Publication Type
INA
Invention Field
COMPUTER SCIENCE
Status
Email
Parent Application

Applicants

HCL Technologies Ltd.
50-53 Greams Road  Chennai - 600006 Tamil Nadu  India.

Inventors

1. Sanjay Kumar
HCL Technologies Ltd.  Sector 125 Noida  U.P. India.
2. Yogesh Gupta
HCL Technologies Ltd.  Sector 125 Noida  U.P. India.

Specification

METHOD AND SYSTEM FOR TEMPLATE BASED DYNAMIC MANAGEMENT OF SUDDEN
CHANGE IN WORKLOAD
FIELD
The present disclosure generally relates to techniques and methodologies for managing changes in workload. More particularly, it concerns a method and system for template based dynamic management of sudden changes in workload
BACKGROUND
Over the past few years, computing has evolved significantly to provide cost effective solutions and services. There is a great amount of enthusiasm around cloud computing due to features like cost saving and flexibility that it provides. Most enterprises are involved in preparing their cloud adoption strategy aiming at most cost effective solutions.
After adopting the cloud one of the major concerns is to optimize the cloud resource utilization to get the maximum benefit out of it. Another concern is to get 100% availability even if there is a sudden workload spike. One way is to assign a dedicated team to monitor the workload spike or resource utilization in the cloud and take decisions accordingly. However such an approach will not be efficient
WO2011041101 titled 'Dynamic Load Balancing and Scaling of Allocated Cloud Resources in an Enterprise Network' describes various exemplary embodiments relating to a workload distribution system for an enterprise network (101) extended in to a cloud network (102) and a

related method. The enterprise network (101) may include a series of servers in a private enterprise network and a scalable series of servers in a cloud network (102). The enterprise network (101) may employ one or more load balancers (103) in both a private enterprise network (101) and cloud network (102) that are connected to each series of servers to distribute work amongst the servers in both networks based on criteria such as overall system performance and costs. The enterprise network (101) may also employ one or more controllers (107) to scale the number of cloud servers (114a, ..., 114e) allocated to the enterprise network (101) based on the system workload and other user- defined criteria, such as revenue generated per work request
WO2011025670 titled "Method and System for Provisioning Computing Resources' describes a method, computer-readable medium, and system for provisioning computing resources across multiple cloud providers and/or data centers. A graphical user interface is used to select a plurality of computing resources and at least one cloud provider and/or at least one data center for providing the plurality of computing resources. Scripts associated with the at least one cloud provider and/or at least one data center are accessed, where each script is capable of automatically setting up a computing resource on an associated cloud provider or associated data center. The scripts are then used to automatically allocate and/or configure the computing resources on the at least one cloud provider and/or at least one data center. As such, computing resources can be automatically provisioned using a generic graphical user interface and without a user having skills or credentials specific to each cloud provider and/or data center
Therefore there is a need for a rule based spike management system allowing auto scale-out and scale-down based on configured parameters. There is a requirement for managing spikes in workload at the application layer instead of at the resource or infrastructure level.

SUMMARY
The present disclosure provides a technology that is different from the above as it focuses on the application layer. Additionally, the template is at application layer to gather holistic performance requirement of the application and address them on demand automatically
As a result, the present disclosure provides a technical advantage over these by using custom algorithms to gather the performance counter's values for each virtual machine without using the existing cloud computing environment data. It is not focused on infrastructure or resource provisioning or management like processor or storage at the virtual machine level. It instead works on the aspects of the application layer and application development. The application itself can address its need of spike and also manage the same. Using the template in the present disclosure, developers can build intelligent code and then separate spike management tools are not needed
In order to obviate the above drawbacks the present disclosure provides a method and system for template based dynamic management of sudden changes in workload
It is an aim of the present disclosure to provide a template to be used while developing applications for a cloud computing environment
It is also an aim of the present disclosure to encapsulate essential performance counters which are to be checked to handle the workload spike at runtime within the templates
To achieve the aforesaid and other objectives related to efficient networking, the present disclosure provides a method for template based dynamic management of sudden change in workload in a cioud computing environment, comprising the steps of providing a template for developing one or more applications, encapsulating one or more performance counters within the template, creating one or more applications using the template, measuring the workload by

monitoring the performance counters against preset threshold values whiie the applications are running and scaling down one or more resources if the measured values are less than the threshold values or scaling out one or more resources if the measured values are more than the threshold values
It is another aim of present disclosure to monitor the configured counters and scale out resources to handle unpredicted workload
It is yet another aim of present disclosure to monitor the configured counters and scale down resources to reduce the unused machine instances
The present disclosure also provides a system for template based dynamic management of sudden change in workload in a cloud computing environment, comprising of template manager configured to provide a template for developing one or more applications, encapsulating unit coupled to the template manager and configured to encapsulate one or more performance counters within the template, application creator coupled to the encapsulating unit and configured to create one or more applications using the template, workload manager coupled to the application creator and configured to measuring the workload by monitoring the performance counters against preset threshold values while the applications are running, and resource manager coupled to the workload manager and configured to scale down one or more resources if the measured values are less than the threshold values or scaling out one or more resources if the measured values are more than the threshold values
BRIEF DESCRIPTION OF THE DRAWINGS
The following is a brief description of the preferred embodiments with reference to the accompanying drawings. It is to be understood that the features illustrated in and described with

reference to the drawings are not to be construed as limiting of the scope of the invention. In the accompanying drawings:
• FIGURE 1 is a flowchart depicting the primary embodiment of the method of the present disclosure
• FIGURE 2 is a flowchart depicting another embodiment of the method of the present disclosure
• FIGURE 3 is a flowchart depicting yet another embodiment of the method of the present disclosure
• FIGURE 4 is a system architecture diagram depicting the primary embodiment of the system of the present disclosure
• FIGURE 5 is system architecture diagram depicting another embodiment of the system of the present disclosure
• FIGURE 6 is a system architecture diagram depicting yet another embodiment of the system of the present disclosure
DETAILED DESCRIPTION OF THE DRAWINGS
A method and system for template based dynamic management of sudden change in workload in a cloud computing environment is described. The system is not intended to be restricted to any particular form or arrangement, or any specific embodiment, or any specific use, disclosed herein, since the same may be modified in various particulars or relations without departing from the spirit or scope of the claimed invention herein above shown and described of which the device or method shown is intended only for illustration and disclosure of an operative embodiment and not to show all of the various forms or modifications in which this invention might be embodied or operated.

The techniques described herein may be used in many different operating environments and systems. An exemplary environment that is suitable for practicing various implementations is discussed in the following section with respect to the accompanying figures.
Figure 1 depicts the primary embodiment of the method in which operation begins at step 101 by providing a template for the development of at least one application. In a preferred embodiment, as depicted in Figure 2, the user is allowed to select the template via a user interface or other means at step 101A. Once the templates are selected, one or more performance counters are encapsulated within the template at step 102. The applicability of these counters is based on preset and defined configuration settings.
Next, In step 103, one or multiple applications are created using the template. These applications in a preferred embodiment run on a single machine instance or in other embodiments run on multiple machine instances. In case of multiple machine instances, communication is enabled between the multiple machine instances. In a preferred embodiment, as depicted in Figure 3, the configuration of the applications is updated so that the performance counters are monitored at step 103A. In another embodiment, out of the multiple machine instances, one machine is selected as a master instance based on its uniqueness
As the applications are running, the workload is measured using the values of the performance counters by comparing them against preset threshold values at step 104. In case there are more than one machine instances, then the values of the performance counters of their respective applications are gathered at regular time intervals. In one embodiment, the total or average workload across all applications running one or multiple machine instances is calculated using the performance counters. These calculated values across multiple machine instances is preferably sent to a master instance
Lastly, in step 105, if the measured values are less than the threshold values then the resources or application variables are scaled down. Alternatively, if the measured values are more than the threshold values, then the resources or application variables are scaled out

Figure 4 depicts the primary embodiment of the system in which input is received at the template manager 201 which is configured to provide a template for the development of at least one application. In another embodiment/ as depicted in Figure 5, the template manager 201 is coupled to a selector 201A which is configured to allow a user to select a template via a user interface or other means. In a preferred embodiment, the template manager 201 is coupled to an encapsulating unit 202 which is configured to encapsulate one or more performance counters within the template. The applicability of these counters is based on preset and defined configuration settings.
Next, application creator 203 is coupled to the encapsulating unit 202 and is configured to create one or multiple applications using the template. These applications in a preferred embodiment run on a single machine instance or in other embodiments run on multiple machine instances. In case of multiple machine instances, a communicator is configured to enable communication between the multiple machine instances. In a preferred embodiment, as depicted in Figure 6, an updating unit 203A is coupled to the application creator 203 and is configured to update the configuration of the applications so that the performance counters are monitored. In another embodiment, a selector is configured to select one machine as a master instance based on its uniqueness out of the multiple machine instances
As the applications are running, a workload manager 204 is coupled to the application creator 203 and is configured to measure the workload using the values of the performance counters by comparing them against preset threshold values. In case there are more than one machine instances, then a counter is configured to gather the values of the performance counters of their respective applications at regular time intervals. In one embodiment, the counter is configured to calculate the total or average workload across all applications running one or multiple machine instances using the performance counters. In an embodiment a sender is configured to send these calculated values across multiple machine instances is to a master instance

Lastly, a resource manager 205 is configured to scale down the resources or application variables if the measured values are less than the threshold values or alternatively scaled out the resources or application variables if the measured values are more than the threshold values.
The embodiments described above and illustrated in the figures are presented by way of example only and are not intended as a limitation upon the concepts and principles of the present invention. As such, it will be appreciated by one having ordinary skill in the art that various changes in the elements and their configuration and arrangement are possible without departing from the spirit and scope of the present invention as set forth in the appended claims.
It will readily be appreciated by those skilled in the art that the present invention is not limited to the specific embodiments shown herein. Thus variations may be made within the scope and spirit of the accompanying claims without sacrificing the principal advantages of the invention.

We claim:
1. A method for template based dynamic management of sudden change in workload in a
cloud computing environment, comprising the steps of:
a. providing a template for developing one or more applications;
b. encapsulating one or more performance counters within the template;
c. creating one or more applications using the template;
d. measuring the workload by monitoring the performance counters against preset
threshold values while the applications are running; and
e. scaling down one or more resources if the measured values are less than the
threshold values or scaling out one or more resources if the measured values are
more than the threshold values
2. A method as claimed in claim 1, wherein the applicability of the performance counters is based on one or more configuration settings
3. A method as claimed in claim 1, comprising the step of:
a. selecting a template to create one or more applications;
4. A method as claimed in claim 1 or 3, comprising the step of:
a. updating the configuration of the applications so that the performance counters are monitored;
5. A method as claimed in claim 1, wherein the applications are running on one or more machine instances
6. A method as claimed in claim 5, comprising the step of:
a. enabling communication between one or more machine instances
7. A method as claimed in claim 1 or 5, comprising the step of:

a. gathering values of performance counters of one or more applications across one or more machine instances at predefined time intervals;
8. A method as claimed in claim 1 or 5, comprising the step of:
a. calculating the average workload across all applications running on one or more machine instances using the performance counters;
9. A method as claimed in claim 5, comprising the step of:
a. selecting a machine instance as a master instance based on its uniqueness;
10. A method as claimed in any of claims 7 to 9, comprising the step of:
a. sending the aggregated total or average value of performance counters across one or more machine instances to the master nstance;
11. A method as claimed in claim 1, wherein the cloud computing environment is a Windows Azure environment
12. A system for template based dynamic management of sudden change in workload in a cloud computing environment, comprising of:
a. template manager configured to provide a template for developing one or more
applications;
b. encapsulating unit coupled to the template manager and configured to
encapsulate one or more performance counters within the template;
c. application creator coupled to the encapsulating unit and configured to create
one or more applications using the template;
d. workload manager coupled to the application creator and configured to
measuring the workload by monitoring the performance counters against preset
threshold values while the applications are running; and
e. resource manager coupled to the workload manager and configured to scale
down one or more resources if the measured values are less than the threshold

values or scaling out one or more resources if the measured values are more than the threshold values
13. A system as claimed in claim 12, wherein the applicability of the performance counters is based on one or more configuration settings
14. A system as claimed in claim 12, comprising of:
a. selector coupled to the template manager and configured to select a template to create one or more applications;
15. A system as claimed in claim 12 or 14, comprising of:
a. updating unit coupled to the application creator and configured to update the configuration of the applications so that the performance counters are monitored;
16. A system as claimed in claim 12, wherein the applications are running on one or more machine instances
17. A system as claimed in claim 16, comprising of:
a. communicator configured to enabling communication between one or more machine instances
18. A system as claimed in claim 12 or 16, comprising of:
a. counter configured to gathering values of performance counters of one or more applications across one or more machine instances at predefined time intervals;
19. A system as claimed in claim 12 or 16, wherein the counter is configured to calculate the average workload across all applications running on one or more machine instances using the performance counters
20. A system as claimed in claim 16, comprising of:

a. selector configured to select a machine instance as a master instance based on its uniqueness;
21. A system as claimed in any of claims 18 to 20, comprising of:
a. sender configured to send the aggregated total or average value of performance counters across one or more machine instances to the master instance;
22. A system as claimed in claim 12, wherein the cloud computing environment is a
Windows Azure environment

Documents

Application Documents

# Name Date
1 2431-CHE-2011 FORM-9 27-07-2011.pdf 2011-07-27
1 2431-CHE-2011-AbandonedLetter.pdf 2018-10-29
2 2431-CHE-2011 FORM-18 27-07-2011.pdf 2011-07-27
2 2431-CHE-2011-FER.pdf 2018-03-21
3 2431-CHE-2011 POWER OF ATTORNEY 15-12-2011.pdf 2011-12-15
3 Form-3.pdf 2011-09-04
4 2431-CHE-2011 CORRESPONDENCE OTHERS 15-12-2011.pdf 2011-12-15
4 Form-1.pdf 2011-09-04
5 2431-CHE-2011 CORRESPONDENCE OTHERS 15-12-2011.pdf 2011-12-15
5 Form-1.pdf 2011-09-04
6 2431-CHE-2011 POWER OF ATTORNEY 15-12-2011.pdf 2011-12-15
6 Form-3.pdf 2011-09-04
7 2431-CHE-2011 FORM-18 27-07-2011.pdf 2011-07-27
7 2431-CHE-2011-FER.pdf 2018-03-21
8 2431-CHE-2011 FORM-9 27-07-2011.pdf 2011-07-27
8 2431-CHE-2011-AbandonedLetter.pdf 2018-10-29

Search Strategy

1 2431che2011_04-08-2017.pdf