0% found this document useful (0 votes)
36 views69 pages

Elasticity in Cloud Computing Explained

Uploaded by

abhinavsrivas05
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
36 views69 pages

Elasticity in Cloud Computing Explained

Uploaded by

abhinavsrivas05
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

CLOUD COMPUTING

BCAM-051

BY
DR. CHITRANGADA CHAUBEY
ASSISTANT PROFESSOR
CSE & ALLIED SPECIALIZED BRANCHES
UNIT- I

Introduction To Cloud Computing: Definition of Cloud – Evolution of


Cloud Computing – Underlying Principles of Parallel and Distributed
Computing – Cloud Characteristics – Elasticity in Cloud – On‐demand
Provisioning
INTRODUCTION
➢Cloud computing is an internet-based computing that delivers services like
servers, storage, networking, analytics, databases, and software. It offers shared
computer processing resources and data to devices on demand. The cloud
computing solutions enable individuals as well as business enterprises to store and
process their data in third-party data centers instead of the involvement of local
servers.

➢Cloud computing is the on-demand availability of computer system resources ,


especially data storage(cloud storage) and computing power, without direct active
management by the user.

➢The term is generally used to describe data centers available to many users over
the Internet.
WHAT IS CLOUD

▪ The term Cloud refers to a Network or Internet. In other words, we can say
that Cloud is something, which is present at remote location.

▪ Cloud can provide services over network, i.e., on public networks or on


private networks, i.e., WAN, LAN or VPN.

▪ Applications such as e-mail, web conferencing, customer relationship


management (CRM), all run in cloud.
CLOUD COMPUTING
• Cloud Computing refers to manipulating, configuring, and accessing the applications
online. It offers online data storage, infrastructure and application. Cloud Computing is
both a combination of software and hardware based computing resources delivered as a
network service.
• With Cloud Computing users can access database resources via the internet from
anywhere for as long as they need without worrying about any maintenance or
management of actual resources.
• In cloud computing, the local computers are not the one bearing much amount of the
load. There is a network of the computer which distributes the load. This shows a
decrement in the need of the hardware and the software. On the user side, the only
requirement is the working of the cloud computing system’s user interface.
• Cloud computing also allows the user to log in and access to various applications. They
also provide a security feature by maintaining privacy and keeping it free from the
viruses. The companies are highly beneficial and provide a large amount of uptime. So, if
you are using cloud computing service then operations will stop only when you don’t
have an internet connection.
CLOUD COMPUTING : FEATURES
FEATURES OF CLOUD COMPUTING
▪ Resources Pooling : It means that the cloud provider pulled the computing
resources to provide services to multiple customers with the help of a multi-tenant
model. There are different physical and virtual resources assigned and reassigned
which depends on the demand of the customer. The customer generally has no
control or information over the location of the provided resources but is able to
specify location at a higher level of abstraction
▪ On-Demand Self-Service: It is one of the important and valuable features of Cloud
Computing as the user can continuously monitor the server uptime, capabilities,
and allotted network storage. With this feature, the user can also monitor the
computing capabilities.
▪ Easy Maintenance : The servers are easily maintained and the downtime is very
low and even in some cases, there is no downtime. Cloud Computing comes up
with an update every time by gradually making it better. The updates are more
compatible with the devices and perform faster than older ones along with the
bugs which are fixed.
▪ Large Network Access: The user can access the data of the cloud or upload the
data to the cloud from anywhere just with the help of a device and an internet
connection. These capabilities are available all over the network and accessed
with the help of internet.
▪ Availability: The capabilities of the Cloud can be modified as per the use and can
be extended a lot. It analyzes the storage usage and allows the user to buy extra
cloud storage if needed for a very small amount.

▪ Automatic System: Cloud computing automatically analyzes the data needed and
supports a metering capability at some level of services. We can monitor, control,
and report the usage. It will provide transparency for the host as well as the
customer.
▪ Economical: It is the one-time investment as the company (host) has to buy the
storage and a small part of it can be provided to the many companies which save
the host from monthly or yearly costs. Only the amount which is spent is on the
basic maintenance and a few more expenses which are very less.
▪ Security: Cloud Security , is one of the best features of cloud computing. It creates a
snapshot of the data stored so that the data may not get lost even if one of the
servers gets damaged. The data is stored within the storage devices, which cannot be
hacked and utilized by any other person. The storage service is quick and reliable.

▪ Pay as you go: In cloud computing, the user has to pay only for the service or the
space they have utilized. There is no hidden or extra charge which is to be paid. The
service is economical and most of the time some space is allotted for free.

▪ Measured Service: Cloud Computing resources used to monitor and the company
uses it for recording. This resource utilization is analyzed by supporting charge-per-
use capabilities. This means that the resource usages which can be either virtual
server instances that are running in the cloud are getting monitored measured and
reported by the service provider. The model pay as you go is variable based on actual
consumption of the manufacturing organization.
PROS: CLOUD
CLOUD COMPUTING : ADVANTAGES
• Cost efficiency: The biggest reason behind companies shifting to Cloud Computing
is that it takes considerably lesser cost than any on-premise technology. Now,
companies need not store data in disks anymore as the cloud offers enormous
storage space, saving money and resources.

• High speed: Cloud Computing lets us deploy the service quickly in fewer clicks. This
quick deployment lets us get the resources required for our system within minutes.
• Excellent accessibility: Storing information in the cloud allows us to access it
anywhere and anytime regardless of the machine making it a highly accessible and
flexible technology of the present times.

• Back-up and restore data: Once data is stored in the cloud, it is easier to get its
back-up and recovery, which is quite a time-consuming process in on-premise
technology.
• Manageability: Cloud Computing eliminates the need for IT infrastructure updates
and maintenance since the service provider ensures timely, guaranteed, and seamless
delivery of our services and also takes care of all the maintenance and management of
our IT services according to the service-level agreement (SLA).

• Sporadic batch processing: Cloud Computing lets us add or subtract resources and
services according to our needs. So, if the workload is not 24/7, we need not worry
about the resources and services getting wasted and we won’t end up stuck with
unused services.
• Strategic edge: Cloud Computing provides a company with a competitive edge over its
competitors when it comes to accessing the latest and mission-critical applications
that it needs without having to invest its time and money on their installations. It lets
the company focus on keeping up with the business competition by offering access to
the most trending and in-demand applications and doing all the manual work of
installing and maintaining the applications for the company.
CLOUD COMPUTING: DISADVANTAGES
• Vulnerability to attacks: Storing data in the cloud may pose serious challenges of
information theft since in the cloud every data of a company is online. Security breach
is something that even the best organizations have suffered from and it’s a potential
risk in the cloud as well. Although advanced security measures are deployed on the
cloud, still storing confidential data in the cloud can be a risky affair.

• Network connectivity dependency: Cloud Computing is entirely dependent on the


Internet. This direct tie-up with the Internet means that a company needs to have
reliable and consistent Internet service as well as a fast connection and bandwidth to
reap the benefits of Cloud Computing.

• Limited control: Cloud customers may face limited control over their deployments.
Cloud services run on remote servers that are completely owned and managed by
service providers, which makes it hard for the companies to have the level of control
that they would want over their back-end infrastructure.
• Vendor lock-in: When in need to migrate from one cloud platform to another, a
company might face some serious challenges because of the differences between
vendor platforms. Hosting and running the applications of the current cloud platform
on some other platform may cause support issues, configuration complexities, and
additional expenses. The company data might also be left vulnerable to security
attacks due to compromises that might have been made during migrations.

• Downtime: Downtime is considered as one of the biggest potential downsides of using


Cloud Computing. The cloud providers may sometimes face technical outages that can
happen due to various reasons, such as loss of power, low Internet connectivity, data
centers going out of service for maintenance, etc. This can lead to a temporary
downtime in the cloud service.
CLOUD COMPUTING: APPLICATIONS
▪ Storing File Online: Cloud Computing provides a benefit to store and access the
software with the help of internet connection to the Cloud. The interface provided is
very easy to operate and is economical too.
▪ Video Making and Editing Software: There are many software available which can
access with the help of the cloud. This software helps to create and modify the videos.
The videos create or modify are stored in the cloud itself and we can access anytime.
▪ File Converters: There are many applications which utilize to change to format of the
file such that from HTML to pdf and so on. This software is available at cloud and
access from anywhere with the help of internet connection.
▪ Anti-Virus Applications: There is software which is stored in the cloud and from
there they fix the system. All the viruses and the malware are detected and analyzed by
the software and the system is fixed. They also come up with a feature of downloading
the software.
CLOUD COMPUTING: USAGES
▪ E-commerce Application: With the help of e-commerce application in the cloud, user
and e-business allow responding quickly to the opportunities which are emerging. It
also allows the user to respond quickly to the market opportunities and the challenges.
Business tycoons focus on the usage of cloud computing without keeping time in the
mind. Cloud-based e-commerce applications allow the companies, business leaders to
evaluate new opportunities and making things done with the minimum amount
possible.
▪ Business Process: Business management applications are based on the cloud service
provider. The business utilizes the cloud computing to store the necessary data and all
the relevant information. This information can be anything such as the personal data of
the customer, analyzed records, and many more.
▪ Backup and Recovery: The cloud computing can be used as a backup option in which
we can store the files, information, and the data. This data is stored will be protected
and provided much security. When the data is lost the user can recover the data which
he/she has stored in the cloud.
CLOUD COMPUTING : ARCHITECTURE
CLOUD COMPUTING : ARCHITECTURE

The architecture is mainly divides the cloud architecture into two parts:

1) FRONT END
2) BACK END
3) INTERNET CONNECTIVITY

Each end is connected to others through a network, generally to the internet.


1. FRONT END
• The front end is the side of computer user or client.
• It involves the interfaces and the applications that are necessary to access the cloud
computing system.

2. BACK END
• The back end is the CLOUD section of the system.
• It involves all the resources which are necessary to give cloud computing services.
• It includes huge data storage, virtual machines, security mechanism, services,
deployment models, servers etc.
• To give built-in security mechanism, traffic control and protocols is the
responsibility of the back end.

3. NETWORK CONNECTIVITY (INTERNET)


TYPE OF CLOUD SERVICES

Cloud computing services fall into 3 categories:

➢ Software As A Service (SaaS)


➢ Platform As A Service (PaaS)
➢ Infrastructure As A Service (IaaS)
SOFTWARE AS A SERVICE (SaaS)

• Software as a service (SaaS) is a software distribution model in which a third-party


provider hosts applications and makes them available to customers over the
Internet.

• SaaS is one of three main categories of cloud computing, alongside infrastructure


as a service and platform as a service (IaaS and PaaS).
SOFTWARE AS A SERVICE (SaaS)

ADVANTAGE DISADVANTAGE

• Lower up-front cost • Lack of control


• Quick set up and deployment • Security and data concerns
• Easy upgrades • Limited range of applications
• Accessibility • Connectivity requirement
• Scalability • Performance
SAAS EXAMPLES
PLATFORM AS A SERVICE (PaaS)

• Platform as a Service (PaaS) is a comprehensive cloud-based runtime environment


with resources that allow customers to create both simple and advanced apps. It
works like this: providers deliver pay-as-you-go resources and support secure
network connections, while clients manage programs and services they create on the
platform.

• The PaaS service is meant for the support of a full lifecycle of a web application:

➢ Development
➢ Testing
➢ Deployment
➢ Management
➢ Updating
PaaS consists of :

1. Physical infrastructure — Data centers, servers, storage, network equipment


(in fact, these are the components of IaaS).

2. Intermediate-layer software — Operating systems, libraries, languages,


frameworks, tools for building apps.

3. User interface — A graphical user interface (GUI), a command line interface


(CLI) or both; the interface displays the architecture and logic of the
deployment machinery, providing usability and learnability of a given PaaS.
PLATFORM AS A SERVICE (PaaS)

ADVANTAGE DISADVANTAGE

• Reduced Costs
• Dependency on Vendor
• Improved Time to Market
• Compatibility of Existing Infrastructure
• Continuous Updates
• Security Risks
• Scalability
• Freedom of Action
INFRASTRUCTURE AS A SERVICE (IaaS)

ADVANTAGE DISADVANTAGE

• Cost Saving • Security


• On-demand scalability • Lack of flexibility
• Have the Flexibility You Need • Technical problems
• Focus on business growth • Over Dependency
• It can also run when the server • Upgrade & Maintenance
goes down • Virtualization Services & User-Privacy
IAAS EXAMPLES
BENEFITS & CHALLENGES OF CLOUD
COMPUTING
BENEFITS CHALLANGES
• Cost Savings • Security issues
• Flexibility • Cost management and containment
• Mobility • Lack of resources/expertise
• Quality Control • Governance/Control
• Disaster Recovery • Compliance
• Loss Prevention • Managing multiple clouds
• Automatic Software Updates • Performance
• Competitive Edge • Building a private cloud
• Sustainability • Segmented usage and adoption
• Migration
EVOLUTION OF CLOUD COMPUTING
• Cloud computing is all about renting computing services. This idea first came in the 1950s. In
making cloud computing what it is today, five technologies played a vital role. These are
distributed systems and its Cloud computing is all about renting computing services. This idea first
came in the 1950s. In making cloud computing what it is today, five technologies played a vital role.
These are distributed systems and its peripherals, virtualization, web 2.0, service orientation, and
utility computing, virtualization, web 2.0, service orientation, and utility computing.
Distributed Systems :

• The purpose of distributed systems is to share resources and also use them
effectively and efficiently.
• Distributed systems possess characteristics such as :

➢ Scalability
➢ Concurrency
➢ Continuous availability
➢ Heterogeneity
➢ Independence in failures

• But the main problem with this system was that all the systems were required to be
present at the same geographical location. Thus to solve this problem, distributed
computing led to three more types of computing and they were-mainframe computing,
cluster computing, and grid computing.
Mainframe computing:

• Mainframes which first came into existence in 1951 are highly powerful and reliable
computing machines.
• These are responsible for handling large data such as massive input-output
operations.
• Even today these are used for bulk processing tasks such as online transactions etc.
• These systems have almost no downtime with high fault tolerance.
• After distributed computing, these increased the processing capabilities of the
system.
• But these were very expensive. To reduce this cost, cluster computing came as an
alternative to mainframe technology.
Cluster computing:

In 1980s, cluster computing came as an alternative to mainframe computing. Each


machine in the cluster was connected to each other by a network with high
bandwidth. These were way cheaper than those mainframe systems. These were
equally capable of high computations. Also, new nodes could easily be added to the
cluster if it was required. Thus, the problem of the cost was solved to some extent
but the problem related to geographical restrictions still pertained. To solve this, the
concept of grid computing was introduced.
Grid computing:

In 1990s, the concept of grid computing was introduced. It means that different
systems were placed at entirely different geographical locations and these all were
connected via the internet. These systems belonged to different organizations and
thus the grid consisted of heterogeneous nodes. Although it solved some problems
but new problems emerged as the distance between the nodes increased. The main
problem which was encountered was the low availability of high bandwidth
connectivity and with it other network associated issues. Thus. Cloud computing is
often referred to as “successor of grid computing”.
Virtualization:

It was introduced nearly 40 years back. It refers to the process of creating a virtual layer
over the hardware which allows the user to run multiple instances simultaneously on
the hardware. It is a key technology used in cloud computing. It is the base on which
major cloud computing services such as Amazon EC2, VMware vcloud, etc work on.
Hardware virtualization is still one of the most common types of virtualization.

Web 2.0:

It is the interface through which the cloud computing services interact with the clients.
It is because of web 2.0 that we have interactive and dynamic web pages. It also
increases flexibility among web pages. Popular examples of web 2.0 include Google
maps, facebook, twitter, etc. Needless to say, social media is possible because of this
technology only. In gained major popularity in 2004.
Service orientation:

It acts as a reference model for cloud computing. It supports low-cost, flexible, and
evolvable applications. Two important concepts were introduced in this computing
model. These were quality of service (QoS) which also includes the SLA (service level
agreement) and software as a service (SaaS).

Utility computing:

It is a computing model that defines service provisioning techniques for services


such as compute services along with other major services such as storage,
infrastructure, etc which are provisioned on a pay-per-use basis.

“Thus, the above technologies contributed to the making of cloud


computing.”
USAGE SCENARIOS & APPLICATION

Here are a few situations where cloud computing is used to enhance the ability to
achieve business goals.

• Infrastructure as a service (IaaS) and platform as a service (PaaS)


• Private cloud and hybrid cloud
• Test and development
• Big Data Analytics
• File storage
• Disaster recovery
• Backup
MAJOR PLAYER IN CLOUD COMPUTING
Cloud Computing Companies
Cloud computing companies continue to grow rapidly as organizations execute their
digital transformation strategies and grapple with more and more data. In fact, Gartner
expects public cloud revenue to grow 17.3 percent in 2019 to $206.2 billion, up from
175.8 billion in 2018.

➢ Amazon Web Services


➢ Microsoft Azure
➢ Google Cloud Platform
➢ IBM Cloud
➢ Oracle Cloud
➢ Alibaba Cloud
PARALLEL COMPUTING

• It is also known as parallel processing. It utilizes several processors. Each of


the processors completes the tasks that have been allocated to them. In other
words, parallel computing involves performing numerous tasks
simultaneously. A shared memory or distributed memory system can be used
to assist in parallel computing. All CPUs in shared memory systems share the
memory. Memory is shared between the processors in distributed memory
systems.

• Parallel computing provides numerous advantages. Parallel computing helps


to increase the CPU utilization and improve the performance because several
processors work simultaneously. Moreover, the failure of one CPU has no
impact on the other CPUs' functionality. Furthermore, if one processor needs
instructions from another, the CPU might cause latency.
PARALLEL COMPUTING
Advantages
• It saves time and money because many resources working together cut down
on time and costs.
• It may be difficult to resolve larger problems on Serial Computing.
• You can do many things at once using many computing resources.
• Parallel computing is much better than serial computing for modeling,
simulating, and comprehending complicated real-world events.

Disadvantages
• The multi-core architectures consume a lot of power.
• Parallel solutions are more difficult to implement, debug, and prove right due
to the complexity of communication and coordination, and they frequently
perform worse than their serial equivalents.
DISTRIBUTED COMPUTING

• It is also known as parallel processing. It utilizes several processors. Each of


the processors completes the tasks that have been allocated to them. In other
words, parallel computing involves performing numerous tasks
simultaneously. A shared memory or distributed memory system can be used
to assist in parallel computing. All CPUs in shared memory systems share the
memory. Memory is shared between the processors in distributed memory
systems.

• Parallel computing provides numerous advantages. Parallel computing helps


to increase the CPU utilization and improve the performance because several
processors work simultaneously. Moreover, the failure of one CPU has no
impact on the other CPUs' functionality. Furthermore, if one processor needs
instructions from another, the CPU might cause latency.
DISTRIBUTED COMPUTING
Advantages
• It saves time and money because many resources working together cut down
on time and costs.
• It may be difficult to resolve larger problems on Serial Computing.
• You can do many things at once using many computing resources.
• Parallel computing is much better than serial computing for modeling,
simulating, and comprehending complicated real-world events.

Disadvantages
• The multi-core architectures consume a lot of power.
• Parallel solutions are more difficult to implement, debug, and prove right due
to the complexity of communication and coordination, and they frequently
perform worse than their serial equivalents.
DIFFERENCE BETWEEN PARALLEL & DISTRIBUTED COMPUTING
[Link] Parallel Computing Distributed Computing

Many operations are performed System components are located at different


1.
simultaneously locations

2. Single computer is required Uses multiple computers

Multiple processors perform multiple Multiple computers perform multiple


3.
operations operations

4. It may have shared or distributed memory It have only distributed (own) memory

Processors communicate with each other Computer communicate with each other
5.
through bus through message passing.

Improves system scalability, fault tolerance


6. Improves the system performance
and resource sharing capabilities
DIFFERENCE BETWEEN PARALLEL COMPUTING AND
DISTRIBUTED COMPUTING
[Link] Parallel Computing Distributed Computing

In this, processors share memory and In this, processors have their own private
communicate directly using the shared memory and communicate via message
7.
memory via bus. passing.

It helps to improve the system performance It allows for scalability, resource sharing, &
8.
the efficient completion of computation tasks.

Hardware architecture in parallel Processing: Hardware architectures for distributed


Processing :
a) Single-instruction, Single-data (SISD)
9.
b) Single-instruction, Multiple-data (SIMD) a) Client / Server architecture
c) Multiple-instruction, Single-data (MISD) b) Peer to Peer architecture
d) Multiple-instruction,Multiple-data (MIMD)
DIFFERENCE BETWEEN PARALLEL COMPUTING AND
DISTRIBUTED COMPUTING
Scalability and Elasticity in Cloud Computing
What is Scalability?

In cloud computing, the term cloud scalability refers to the capacity to improve
or reduce IT resources, depending on the requirement changing demand. In
other words, we can say that scalability is employed to satisfy the static growth
in the workload.

What is Elasticity?

Elasticity refers to the capability of a cloud to automatically boost or shorten the


infrastructural resources, depending on the requirement so that the workload
can be handled efficiently. This elasticity also helps in reducing the
infrastructural expenditure.
What are the Benefits of Cloud Scaling
• Fast and Easy - Cloud Scaling architecture enables instructing
additional VMs to manage the increasing workloads with just a few
clicks. It eliminates the delay caused due to rising workloads.
• Cost efficiency - Scaling horizontally or vertically is highly cost-efficient
compared to an infrastructure where resources are idle most of the time.
• Optimized Performance - A scalable Cloud architecture efficiently
manages a drastic rise and fall in traffic, thus optimizing the
performance. It ensures the effective utilization of resources, thus
eliminating idle resources or insufficient resource circumstances.
• Capacity - The scalable architecture of the Cloud expands its capacity to
manage the growing business requirements.
Cloud Scaling : Vertical Scaling
Vertical Scaling is termed the Scale-up approach. In technical words,
vertical Scaling is defined as increasing a single machine’s capacity with
the rising resources in the same logical server or unit. Vertical Scaling
involves adding resources like processing power, storage, and memory to
the existing hardware or software, enhancing the system’s capacity.

Let’s consider a business website; with the rising business graph, there are
more hits on the website. The server performance starts degrading with an
increase in hits. The load is managed by Scaling the resources like CPUs
(Processors), RAM, disk capacity etc.

Vertical Scaling ensures boosting the power of an individual server.


Computing enables adding and subtracting of resources like memory and
storage, etc.
Benefits of Vertical Scaling
1. Flexible Scaling of resources
2. Consumes less power
3. Lower cooling cost
4. Software cost-effective
5. Reduced administrative efforts to manage a single system
Cloud Scaling: Horizontal Scaling
Horizontal Scaling is an approach to enhance the performance of the
server node by adding new instances of the server to the existing servers
to distribute the workload equally.

The strategy involves decreasing the server’s load rather than expanding
the capacity of the individual server. The Horizontal Scaling strategy is
also termed Scaling out. Load balancing, clustering, and distributed file
system are crucial strategies for Horizontal Scaling. Horizontal Scaling
caters to portioning of the data where each node contains a single part of
the data.
Businesses choose horizontal Scaling to enhance the I/O concurrency,
reduce the load on existing nodes and expand disk capacity. The servers’
ability to interchangeably manage a single session or millions of single
sessions is the epitome of Horizontal Scaling.
Benefits of Horizontal Scaling
1. Flexible Scaling tools
2. Easy fault-tolerance
3. Enhanced resilience due to discrete, multiple systems
4. Easy to upgrade
5. Limitless Scaling with endless additions of server instances
6. Cost-effective implementation
Difference between Horizontal and Vertical Scaling
Horizontal Scaling Vertical Scaling
Horizontal Scaling is defined as the Vertical Scaling is defined as the ability
ability to extend capacity by interfacing to increase an existing system’s
different hardware or software entities capacity by adding resources
It is based on partitioning where each The data is present on a single node
node contains a single part of data and is scaled through multicore
It is referred to as Scale-out It is referred to as Scale-up
The licensing fee is costly The licensing is cost-effective
It requires a load balancer to distribute
Scaling the server capacity enhances
load among the servers within a
the load capacity of the server
system
It implies boosting the power of
It implies boosting the power of the
individual server with the existing
individual server
server
Elasticity in Cloud Computing
• Cloud Elasticity is the property of a cloud to grow or shrink capacity for CPU, memory, and storage resources to adapt
to the changing demands of an organization. Cloud Elasticity can be automatic, without need to perform capacity
planning in advance of the occasion, or it can be a manual process where the organization is notified they are running
low on resources and can then decide to add or reduce capacity when needed. Monitoring tools offered by the cloud
provider dynamically adjust the resources allocated to an organization without impacting existing cloud-based
operations.
• A cloud provider is said to have more or less elasticity depending on the degree to which it is able to adapt to
workload changes by provisioning or deprovisioning resources autonomously to match demand as closely as possible.
This eliminates the need for IT administration staff to monitor resources to determine if additional CPU, memory, or
storage resources are needed, or whether excess capacity can be decommissioned.
• Cloud Elasticity is often associated with horizontal scaling (scale-out) architecture, and it generally associated with
public cloud provider resources that are billed on a pay-as-you-go basis. This approach brings real-time cloud
expenditures more closely in alignment with the actual consumption of cloud services, for example when virtual
machines (VMs) are spun up or down as demand for a particular application or service varies over time.
• Cloud Elasticity provides businesses and IT organizations the ability to meet any unexpected jump in demand, without
the need to maintain standby equipment to handle that demand. An organization that normally runs certain
processes on-premises can ‘cloudburst’ to take advantage of Cloud Elasticity and meet that demand, returning to on-
premises operations only when the demand has passed. Thus, the result of cloud elasticity is savings in infrastructure
costs, in human capital, and in overall IT costs.
Why is Cloud Elasticity important
• Without Cloud Elasticity, organizations would have to pay for capacity that remained
unused for most of the time, as well as manage and maintain that capacity with OS
upgrades, patches, and component failures. It is Cloud Elasticity that in many ways defines
cloud computing and differentiates it from other computing models such as client-server,
grid computing, or legacy infrastructure.
• Cloud Elasticity helps businesses avoid either over-provisioning (deploying and allocating
more IT resources than needed to serve current demands) or under-provisioning (not
allocating enough IT resources to meet existing or imminent demands).
• Organizations that over-provision spend more than is necessary to meet their needs,
wasting valuable capital which could be applied elsewhere. Even if an organization is
already utilizing the public cloud, without elasticity, thousands of dollars could be wasted
on unused VMs every year.
• Under-provisioning can lead to the inability to serve existing demand, which could lead to
unacceptable latency, user dissatisfaction, and ultimately loss of business as customers
abandon long and unresponsive online services and take their business to more responsive
organizations. In this way, the lack of Cloud Elasticity can lead to lost business and severe
bottom-line impacts.
Typical use cases for Cloud Elasticity include:
• Retail or e-tail holiday seasonal demand, in which demand increases dramatically from Black Friday
shopping specials until the end of the holiday season in early January
• School district registration which spikes in demand during the spring and wanes after the school
term begins
• Businesses that see a sudden spike in demand due to a popular product introduction or social media
boost, such as a streaming service like Netflix adding VMs and storage to meet the demand for a new
release or positive review.
• Disaster Recovery and Business Continuity (DR/BC). Organizations can leverage public cloud
capabilities to provide off-site snapshots or backups of critical data and applications and spin up
VMs in the cloud if on-premises infrastructure suffers an outage or loss.
• Scale virtual desktop infrastructure in the cloud for temporary workers or contractors or for
applications such as remote learning
• Scale infrastructure into the cloud for test and development activities and tear it down once test/dev
work is complete.
• Unplanned projects with short timelines
• Temporary projects like data analytics, batch processing, media rendering, etc.
Benefits of Cloud Elasticity
• Agility: By eliminating the need to purchase, configure, and install new infrastructure when demand changes,
Cloud Elasticity prevents the need to plan for such unexpected demand spikes, and enables organizations to
meet any unexpected demand, whether due to seasonal spike, mention on Reddit, or selection by Oprah’s book
club.
• Pay-as-needed pricing: Rather than paying for infrastructure whether or not is is being used, Cloud Elasticity
enables organizations to pay only for the resources that are in use at any given point tin time, closely tracking IT
expenditures to the actual demand in real-time. In this way, although spending may fluctuate, organizations can
‘right-size’ their infrastructure as elasticity automatically allocates or deallocates resources on the basis of real-
time demand. Amazon has stated that organizations that adopt its instance scheduler with their EC2 cloud
service can achieve savings of over 60 percent versus organizations that do not.
• High Availability: Cloud elasticity facilitates both high availability and fault tolerance, since VMs or containers
can be replicated if they appear to be failing, helping to ensure that business services are uninterrupted and
that users do not experience downtime. This helps ensure that users perceive a consistent and predictable
experience, even as resources are provisioned or deprovisioned automatically and without impact on
operations.
• Efficiency: As with most automations, the ability to autonomously adjust cloud resources as needed enables IT
staff to shift their focus away from provisioning and onto projects that are more beneficial to the organization.
• Speed/Time-to-market: organizations have access to capacity in minutes instead of the weeks or months it may
take through a traditional procurement process.
Challenges of Cloud Elasticity
• Cloud Elasticity is only useful to organizations that experience rapid or periodic increases or decreases in
demand for IT services. Organizations with predictable, steady demand most likely would not find an advantage
in the benefits of Cloud Elasticity. Here are some potential challenges with Cloud Elasticity
• Time to provision: Although cloud VMs can be spun up on-demand, there can still be a lag time of up to several
minutes before it is available for use. This may or not be enough time base on a specific application or service
demands, and can impact performance when a sudden surge occurs, such as when a sign-on storm occurs at
the beginning of the business day.
• Cloud Provider Lock-in: Although all major public cloud providers offer Cloud Elasticity solution, each are
implemented differently, which cloud mean that organizations are locked into a single vendor for their cloud
needs.
• Security Impact: Cloud services that spin up and down in an elastic fashion can impact existing security
workflows and require them to be reimagined. Since elastic systems are ephemeral, incident response may be
impacted, for example when a server experiencing a security issue spins down as demand wanes.
• Resource Availability: Cloud Elasticity does require modifications to existing cloud or on-premises
deployments. Organizations that do not outsource their IT management will need to acquire technical expertise
including architects, developers, and admins to help ensure that a Cloud Elasticity plan is properly configured to
meet the organization’s specific needs. This can also introduce a learning curve delay as the newly acquired
talent come up to speed on new environments, languages, and automation tools and processes that need to be
implemented.
Difference between Scalability and Elasticity in Cloud
Computing
[Link] Elasticity Scalability
1 It is used just to fulfil the sudden requirement It is used to fulfil the static boost in
in the workload for a short period. the workload.

2 It is preferred to satisfy the dynamic It is preferred to handle growth in


modifications, where the required resources the workload in an organization.
can improve or reduce.
3 Cloud elasticity is generally used by small Cloud scalability is utilized by big
enterprises whose workload expands only for enterprises.
a specific period.
4 It is a short-term event that is used to deal It is a long-term event that is used
with an unplanned or sudden growth in to deal with an expected growth in
demand. demand.
Dynamic Provisioning OR On-demand provisioning
• On-demand provisioning, also known as dynamic provisioning, is a cloud
computing model that allows users to access computing resources as needed.
It's a flexible and scalable model that's ideal for environments with varying
workloads.
• Some key features of on-demand provisioning include:
• Automatic resource allocation: Resources like storage, processing power, and
network bandwidth are allocated based on current needs.
• Cloud automation: Automation tools streamline the provisioning process and
ensure resources are available when needed.
• Pay-per-use pricing: Clients are billed based on the resources they consume.
• On-demand provisioning helps businesses cut costs by using minimal
resources and only paying for what they consume. It also allows businesses to
scale up and down to meet workload needs.
Features of Dynamic/On-demand provisioning
• Automatic Resource Allocation: Resources such as processing power,
storage, and network bandwidth are allocated dynamically based on current
needs, reducing manual intervention.
• Cloud Automation: Automation tools streamline the provisioning process,
ensuring resources are available instantly when needed. This includes
autoscaling, which adjusts resource allocation in real time based on usage
patterns.
• Pay-Per-Use Pricing: Clients are billed based on the resources they consume,
making it cost-effective for businesses with variable workloads.
• Startups, seasonal businesses, and organizations with fluctuating resource
needs benefit from dynamic provisioning. It supports rapid scaling up or
down, ensuring cost efficiency and flexibility.
• V2 Cloud offers dynamic provisioning, providing high flexibility and
enterprise-grade security to meet diverse client needs.

You might also like