Auto-Scaling in the Cloud Environment

Auto-Scaling in the Cloud Environment

Ravindra Kumar Singh Rajput (Suresh Gyan Vihar University, India) and Dinesh Goyal (Poornima Institute of Engineering and Technology, India)
Copyright: © 2020 |Pages: 15
DOI: 10.4018/978-1-7998-1294-4.ch005
OnDemand PDF Download:
No Current Special Offers


Every software application has its own minimum set of requirements like CPU, storage, memory, networking, and power. These have to be integrated into a specific configuration to allow the smooth functioning of the software application. When data traffic becomes higher than expected, higher resources are required. There may not be enough time to provision new resources manually; in such cases, an auto-scaling system is required for managing these situations. Cloud computing means using data, programs, and other resources pooled in the data center and accessed through the internet instead of the user's computer. In the chapter, the authors discussed some aspects related to cloud computing like cloud workload, load balancing, load balancing algorithms, scaling techniques, and auto-scaling to fulfill cloud workload balancing requirements.
Chapter Preview


Cloud computing is a sophisticated computing environment based on the polling of computing resources, and resources can be used anytime, anywhere on-demand via the internet with pay-as-you-go pricing (R. S. Rajput, and Anjali Pant, 2018). According to Katyal M., and Mishra A. (2013), there are three principal stakeholders of cloud environment viz. end-users, cloud providers, and cloud developers. The end-users are the clients or consumers of cloud resources, use the various cloud resources (Infrastructure/Software/Platform) provided by the cloud provider. Before using the cloud resources, the end-users of the cloud must agree to the specified Service Level Agreement (SLA). They can use cloud resources anytime, anywhere as on-demand, pay as use services. Cloud providers are responsible for the building of the cloud environment using computing resources pooling and provision techniques. Cloud providers are managing the huge bundle of resources that make up the cloud and providing these resources to the end-users. Cloud developer is a significant entity that lies between the end-user and cloud provider. Cloud developers are responsible for adhering to all the technical particulars for cloud, essential to assemble the requirements of cloud users as well as cloud providers.

Table 1.
Stakeholders of Cloud environment
End-UserSecurity, Privacy, Provenance, High Availability, Reduced Cost, Ease-of-use
Cloud ProviderManaging Resources, Resource Utilization, Outsourcing, Energy Efficiency, Metering, Providing Resources, Cost Efficiency, Utility Computing, Meet end-user requirements,
Cloud DeveloperElasticity/ Scalability, Virtualization, Agility and Adaptability, Data Management, Availability, Reliability, Programmability

The workload of the cloud data center does not remain the same all the time. When data traffic for a particular resource becomes higher than expected, such cases, higher resources are required. There may not be enough time to provision new resources manually; in such cases, an auto-scaling system is necessary for managing these situations.

Load-balancing is a procedure to redistribute the workload across computing resources. The decision to balance load is made locally by computing resources, based on its current utilization. Each computing resource continuously measures its resource utilization of CPU, memory, network consumption, and disk space. The auto-scaling technique provides on-demand resources available based on specific workloads in cloud computing systems. The auto-scaling service allows the arrangement of capacity management policies applied to dynamically decide on acquiring or releasing resource instances for a given application. Auto-scaling also make sure that new instances are seamlessly increased during demand spikes and decreased during demand drops, enabling consistent performance for lower expenses. Auto-scaling defines the scaling policies to acclimatize to the application’s needs instantly, scales the resources, and examines the history of scaling events.

Complete Chapter List

Search this Book: