Before we present you some facts to help you decide whether you should opt for cloud bursting or not, let us start with what is Cloud Bursting?
Cloud Bursting is a model which involves the bursting of an application running in a private cloud into a public cloud when it experiences a spike in the demand of computing capacity of the cloud. Cloud bursting is usually used by most companies in order to construct a hybrid cloud for running their applications.
The main feature of cloud bursting that most appeals to customers is that users only pay for the services they use in the public cloud. This makes cloud bursting hugely popular among IT managers as well as C-level executives who face budget challenges for various projects and applications.
Relation of cloud bursting with auto scaling
DevOps dynamically allocates resources to the application in order to enable it to meet the current demand – this is the concept of autoscaling.
There are three major approaches followed in order to scale up or scale down an application in the cloud. These include the following approaches:
- Vertical Scaling: which involves the reduction or enhancement of the existing size of the server instances by either adding or removing memory or processors.
- Horizontal Scaling: which involves an increase or decrease in application infrastructure as a whole by either adding or removing server instances into the cloud environment.
- Cloud Bursting: which involves a dynamic provision of additional servers from a third party cloud in order to meet temporary surges or spikes in demand.
Cloud bursting is usually a good choice for applications that have the following properties:
- Applications that are not sensitive
- Applications that are not critical
- Applications that are high-performance applications
When you should use Cloud Bursting
Cloud bursting can usually be performed using two primary approaches:
- One approach is to maintain a single database in the application. This single database is generally hosted on either a private cloud or on an on-premise server. The database can be used for all applications – whether they are hosted on a public Virtual Machine or are running on a private cloud.
While this approach makes the application more consistent, the configurations of such an application are spread across a WAN (Wide Area Network). This also causes a latency in the application as an information request has to be sent from a private database repeatedly.
- Another approach that overcomes the issue of latency in the previous approach is that of creating multiple copies of the underlying data in an application. A distinct copy of the data can then be made in each cloud that the application runs from.
It is advisable to run your application of a public cloud than buying resources on-demand, in case your application is frequently overloaded as this is a cheaper option. Public clouds such as Microsoft, Google and Amazon offer unlimited memory, processing and storage, making your decision that much easier.
When to not use Cloud Bursting
Using cloud bursting does not make sense if your application has the following features:
- Complex applications
- Applications that are integrated with others
Since most applications are not designed to run across multiple computing instances, problems can arise during cloud bursting. Data may also be hard to sync or may require you to pay for extra storage as well.
How to use cloud bursting in an efficient manner
Advance planning is one of the best approaches to use Cloud Bursting. Since you are left with no choice but to purchase public cloud instances on-demand in case of spontaneous bursts, it is recommended that you analyse general trends in traffic spikes and obtain the public cloud resources in advances. On-demand purchases are one of the most expensive services sold by vendors, so planning in advance is a very economic approach.
Make use of a performance monitoring software as well as business and reporting metrics in order to help you obtain a complete picture of your hybrid cloud.