Enterprise Services
Showing results for 
Search instead for 
Do you mean 

Design to Scale in the Cloud- Part 1

Gouri_CM on ‎04-02-2014 05:26 AM ‎09-30-2015 07:49 AM

By: Joost van der Vlies, HP ES Account Chief TechnologistiStock_000019943016small.jpg

One of the characteristics that make cloud unique is elasticity, the capability to scale outward and inward, based on demand. This flexibility, combined with pay for use, makes cloud technology very attractive. But this is easier said than done. Scaling is not only an infrastructure play but for sure a play for the application on top of it.

This is the first part of a  blog series of three. This part revolves around Cloud Scaling, and introduces the types of scaling.

Let us define a case first. We have an application running on a virtual machine running an OS, and a database on a physical machine running an OS.

There are three types of scaling:

  1. Horizontal
  2. Vertical
  3. Bursting, which is a special case of horizontal scaling.

With Horizontal scaling, additional virtual machines within the deployment node (e.g. On Premise) are added with the application deployed on it. The application needs to be configured to access the database. The application also needs to be designed to run in several instances that work seamlessly together, accessing the (one) database. An application is not per default designed for this, so this needs to be assessed. A load balancer is required to manage the workload to these new servers. The database could also be horizontally scaled if needed, such as implementing grid architecture with multiple (physical) nodes. Note that this might impact the application configuration.

With Vertical scaling, the resources of the virtual machine itself are increased. This could take the form of additional memory, additional storage, or additional CPU’s. Depending on the application components, there is a limit in the scaling effect of vertical scaling. The limit is reached when additional resources do not result in additional performance of the application components, or if this is not cost-efficient. This is similar for the database. It is important  to make sure that the application components make optimal use of the available resources.

Bursting is a specific type of Horizontal scaling, where additional machines and software are added in a different deployment node, such as in an additional cloud environment. Bursting needs, at a minimum level, the same preparations as Horizontal scaling, such as virtual machine images, application configuration, and so on.  But additional preparations need to be done: 

- Integration: Data integration between original node and bursting node on the application level

- Load balancing: Making sure sessions originating in original node load balancer are handled correctly

- Security: Data protection

- Asset management: Including burst server details

- Cleaning: removing deployed apps, platforms, and data from unused servers

For all three scaling types, the ability to provision infrastructure through a cloud environment is promising, but is not the only necessary capability. It is important to detect that scaling is necessary, and then to scale and integrate automatically. Solutions can be complex, where components call components in other cloud environments. Scaling concerns overall landscape architecture. The next two parts of this blog topic will describe that in more detail.

Let me know your view on these scaling types, or even additional scaling types that you know. I’d especially like to hear your thoughts on what makes it different in cloud environments.

 

Read the next part of this series to learn When to scale.

 

About the author:

My photo.png

 

Joost works as Account Chief Technologist, at the Enterprise Services CTO Office. In his current role he is responsible for technology strategy and innovation at a global retail account. He was a lead architect for the first release of the HP ES application cloud offerings. He has created several cloud webinars for HP, including one about re-architecting a current environment to a scalable cloud version. He has been an HP contributor to the Open Group, most recent as co-author of the Legacy to SOA best practices guide. Joost has a degree in Software Engineering, and is a Master of Science in a combined study of Information Technology and Psychology.

 

 

 

 

 

0 Kudos
About the Author

Gouri_CM

Events
Aug 29 - Sep 1
Boston, MA
HPE Big Data Conference 2016
Attend HPE’s Big Data Conference on August 29 - September 1, 2016 to learn from peers in every industry and hear from Big Data experts and thought lea...
Read more
Sep 13-16
National Harbor, MD
HPE Protect 2016
Protect 2016 is our annual conference on September 13 - 16, 2016, and is the place to meet the world’s top information security talent, discuss new pr...
Read more
View all