Agility Vs Elasticity In Organizations

February 23, 2022 0 Comments

Organizations gain the flexibility and computing power of the public cloud for basic and non-sensitive computing tasks, while keeping business-critical applications and data on-premises, safely behind a company firewall. Cloud environments (AWS, Azure, Google Cloud, etc.) offer elasticity and some of their core services are also scalable out of the box. Furthermore, if you build a scalable software, you can deploy it to these cloud environments and benefit from the elastic infrastructure they provide you to automatically increase/decrease the compute resources available to you on-demand.

This is because vertical scaling typically requires a redeployment of an instance or powering down of the instance to make the change, depending on the underlying operating system. Either way, the benefit of doing this in Azure is that we don’t have to purchase the hardware up front, rack it, configure it etc. Rather via clicking in the Azure portal or using code, we can adjust for it. Microsoft already has pre-provisioned resources we can allocate; we begin paying for those resources as we use them. For example, there is a small database application supported on a server for a small business.

Describe the benefits and considerations of using cloud services High Availability is a characteristic of a system, which aims to ensure an agreed level of operational performance, usually uptime, for a higher than normal period. This agreed level of operational performance or uptime on Azure is governed by SLAs. As an example, the SLA for a Single Instance Virtual Machines with Premium Storage is 99.9%. Technical IT experience is not required however some general IT knowledge or experience would be beneficial.

scalability and elasticity agility

The benefits here are that we don’t need to make changes to the virtual hardware on each machine, but rather add and remove capacity from the load balancer itself. Scaling up, or vertical scaling, is the concept of adding more resources to an instance that already has resources allocated. This could simply mean adding additional CPU or memory resources to a VM. More specifically, perhaps in response to a bunch of users hitting a website, we can simply add more CPU for that day, and then scale down the CPUs the following day. How dynamically this can happen depends on how easy it is for us to add and remove those additional CPUs while the machine is running, or the application team’s ability to take an outage.

Cloud Computing Concepts

In short, the amount of resources allocated are there to handle the heaviest predicted load without a degradation in performance. CIOs, cloud engineers, and IT managers should consider when deciding to add cloud services to their infrastructure. Cost, security, performance, availability, and reliability are some common key areas to consider. Another criterion that has been added to the list recently is cloud scalability and cloud elasticity. In this model, the customer is responsible for maintaining the servers provisioned by the cloud provider, including software updates and ensuring that patches are applied accordingly. Scalability handles the increase and decrease of resources according to the system’s workload demands.Elasticity is to manage available resources according to the current workload requirements dynamically.

Elastic workloads are a major pattern which benefits from cloud computing. If our workload does benefit from seasonality and variable demand, then let’s build it out in a way that it can benefit from cloud computing. As the workload resource demands increase, we can go a step further and add rules that automatically add instances. As workload resource demands decrease; again, we could have rules that start to scale in those instances when it is safe to do so without giving the user a performance impact. The purpose of Elasticity is to match the resources allocated with actual amount of resources needed at any given point in time. Scalability handles the changing needs of an application within the confines of the infrastructure via statically adding or removing resources to meet applications demands if needed.

  • CIOs, cloud engineers, and IT managers should consider when deciding to add cloud services to their infrastructure.
  • Usually, when someone says a platform or architectural scales, they mean that hardware costs increase linearly with demand.
  • With elastic scaling, we are trying to fine-tune our system to allow for the resources to be added on demand, while ensuring we have some buffer room.
  • More specifically, perhaps in response to a bunch of users hitting a website, we can simply add more CPU for that day, and then scale down the CPUs the following day.
  • Fault Tolerance is the ability of a system to remain up and running during component and service failure.
  • Scalability is meeting predictable traffic demand while elasticity is meeting sudden traffic demand.
  • As one could imagine, the dramatic shortening of the provisioning timeframe enables work to commence much more quickly.

Consider an online shopping site whose transaction workload increases during festive season like Christmas. So for this specific period of time, the resources need a spike up. In order to handle this kind of situation, we can go for Cloud-Elasticity service rather than Cloud Scalability.

ELASTICITY – ability of the hardware layer below to increase or shrink the amount of the physical resources offered by that hardware layer to the software layer above. The increase / decrease is triggered by business rules defined in advance (usually related to application’s demands). The increase / decrease happens on the fly without physical service interruption. Once again, Cloud computing, with its perceived infinite scale to the consumer, allows us to take advantage of these patterns and keep costs down. If we can properly account for vertical and horizontal scaling techniques, we can create a system that automatically responds to user demand, allocating and deallocating resources as appropriate. New employees need more resources to handle an increasing number of customer requests gradually, and new features are introduced to the system (like sentiment analysis, embedded analytics, etc.).

Elasticity Vs Scalability In Cloud Computing: The Final Word

Scalability is pretty simple to define, which is why some of the aspects of elasticity are often attributed to it. Fault Tolerance is the ability of a system to remain up and running during component and service failure. In the cloud, it takes a minute or two to create a Virtual Machine that is up and running. On the other hand, it takes days or weeks when we submit a request to purchase a physical server and by when it gets delivered. The other topics covered in the exam will be in Part 2 of my blog.

As soon as the season goes out, the deployed resources can then be requested for withdrawal. Now, lets say that the same system uses, instead of it’s own computers, a cloud service that is suited for it’s needs. Ideally, when the workload is up one work unit the cloud will provide the system with another “computing unit”, when workload goes back down the cloud will gracefully stop providing that computing unit.

scalability and elasticity agility

The following is a list of useful links which cover the concepts required for the exam objectives. Making statements based on opinion; back them up with references or personal experience. Trending sort is based off of the default sorting method — by highest score — but it boosts votes that have happened recently, helping to surface more up-to-date answers. Agility for many organizations means reacting swiftly to a changing environment.


Scalability is required for elasticity, but not the other way around. Elasticity is the ability for your resources to scale in response to stated criteria, often CloudWatch rules. Many of the services in AWS are scalable by default, which is one of the reasons that AWS is so successful. Disaster Recovery is the ability of a system to recover from a disaster such as floods, thunder-storm, earth-quake, or any other natural or human-induced disaster that has destroyed the primary data center. Scalability and Elasticity both refer to meeting traffic demand but in two different situations.

If they had asked to choose how to automatically scale a resource, that would be elasticity. Cloud elasticity is a cost-effective solution for organizations with dynamic and unpredictable resource demands. Scalability enables stable growth of the system, while elasticity tackles immediate resource demands. In this type of scalability, we increase the power of existing resources in the working environment in an upward direction.

scalability and elasticity agility

Elasticity is the ability to automatically or dynamically increase or decrease the resources as needed. Elastic resources match the current needs and resources are added difference between scalability and elasticity or removed automatically to meet future demands when it is needed. Scalability handles the increase and decrease of resources according to the system’s workload demands.

What Is The Difference Between Scalability And Elasticity?

Diagonal scale is a more flexible solution that combines adding and removing resources according to the current workload requirements. Vertical scale, e.g., Scale-Up – can handle an increasing workload by adding resources to the existing infrastructure. Turbonomic allows you to effectively manage and optimize both cloud scalability and elasticity.

In short, on Azure you pay for what resources you use, and stop paying for them when the resources are removed. Traditionally, IT departments could replace their existing servers with newer servers that had more CPUs, RAM, and storage and port the system to the new hardware to employ the extra compute capacity available to it. Usually, when someone says a platform or architectural scales, they mean that hardware costs increase linearly with demand.

This can also be a big cost savings to retail companies looking to optimize their IT spend if packaged well by the service provider. Private Cloud is defined as computing services offered either over the Internet or a private internal network and only to select users instead of the general public. Elasticity follows on from scalability and defines the characteristics of the workload.

A use case that could easily have the need for cloud elasticity would be in retail with increased seasonal activity. For example, during the holiday season for black Friday spikes and special sales during this season there can be a sudden increased demand on the system. Instead of spending budget on additional permanent infrastructure capacity to handle a couple months of high load out of the year, this is a good opportunity to use an elastic solution. The additional infrastructure to handle the increased volume is only used in a pay-as-you-grow model and then “shrinks” back to a lower capacity for the rest of the year. This also allows for additional sudden and unanticipated sales activities throughout the year if needed without impacting performance or availability. This can give IT managers the security of unlimited headroom when needed.

For example, if one server can handle 50 users, 2 servers can handle 100 users and 10 servers can handle 500 users. If every 1,000 users you get, you need 2x the amount of servers, then it can be said your design does not scale, as you would quickly run out of money as your user count grew. The demand for infrastructure resources – compute, storage, and network – are often not static in nature. Users sometimes access websites more often at certain times of the day. When high-traffic events, such as the Superbowl or a World Cup, happen, the demand placed on services offering up content increases, and so does the consumption of the underlying CPU, memory, disk, and network in relation to this. Scalability handles the scaling of resources according to the system’s workload demands.

Scalability is the ability of a system to scale to support the desired workload. Delivery of services like compute, storage and networking over the internet is known as Cloud Computing, and the provider of such services is known as Cloud Provider. Say we have a system of 5 computers that does 5 work units, if we need one more work unit to be done we we’ll have to use one more computer. Also, if a new computer is purchased and the extra work unit is not needed any more, the system get stuck with a redundant resource. Similarly, you can configure your system to remove servers from the backend cluster if the load on the system decreases and the average per-minute CPU utilization goes below a threshold defined by you (e.g. 30%).

Scalability Vs Elasticity

These resources required to support this are usually pre-planned capacity with a certain amount of headroom built in to handle peak demand. Scalability also encompasses the ability to expand with additional infrastructure resources, in some cases without a hard limit. Scalability can either be vertical (scale-up with in a system) or horizontal (scale-out multiple systems in most cases but not always linearly). Therefore, applications have the room to scale up or scale out to prevent a lack of resources from hindering performance. There are cases where the IT manager knows he/she will no longer need resources and will scale down the infrastructure statically to support a new smaller environment. Either increasing or decreasing services and resources this is a planned event and static for the worse case workload scenario.

Agility Vs Elasticity

With elastic scaling, we are trying to fine-tune our system to allow for the resources to be added on demand, while ensuring we have some buffer room. Cloud scalability is an effective solution for businesses whose needs and workload requirements are increasing slowly and predictably. In the past, a system’s scalability relied on the company’s hardware, and thus, was severely limited in resources.

Cloud Concepts

Disaster Recovery involves a set of policies, tools and procedures to enable the recovery or continuation of vital technology infrastructure and systems following a natural or human-induced disaster. Disaster recovery can therefore be considered as a subset of business continuity. Not all AWS services support elasticity, and even those that do often need to be configured in a certain way. This is what happens when a load balancer adds instances whenever a web application gets a lot of traffic. Elastic is stretching out but at the same time holding on to the past, e.g. legacy systems. Just like stretching out an elastic band, the given context limits how far you can stretch out.

With the adoption of cloud computing, scalability has become much more available and more effective. It comes in handy when the system is expected to experience sudden spikes of user activity and, as a result, a drastic increase in workload demand. Many have used these terms interchangeably but there are distinct differences between scalability and elasticity.

Agility enables users to be able to allocate and deallocate resources very quickly, and that is a huge benefit of the cloud. CapEx vs OpEx – CapEx is the spending of money on physical infrastructure up front, and then deducting that expense from your tax bill over time. CapEx is an upfront cost, which has a value that reduces over time.

Leave a Reply

Your email address will not be published.