Cloud scalability: building the Millennium Falcon
Luis M. Vaquero, Luis Rodero‐Merino, Rajkumar Buyya · Concurrency and Computation Practice and Experience · 2013
PROBLEMWarship construction is a time-consuming, complicated business.The original inception, funding, design, creation of prototypes and training of personnel alone can take years.The actual construction is not typically much faster.The expenses are excessive in both funds and highly specialized labor.As could be expected, the pressure on starship architects is enormous; once a vessel has been built, the Empire is committing itself to that vessel for the next several decades.At some point, any changeseven trivial onesin the vessel's design can cost literally billions of credits and thousands of extra man-hours.This is the point we are at today in cloud computing; the pre-construction and initial phases are completed, much experience has been accumulated, but some inherent cloud features are still causing some trouble.And providers stress their engineers to fulfill their ever-mounting expectations, especially those related with scalability.This can be understood: the illusion of a virtually infinite computing infrastructure/platform capable of providing an automated on-demand self-service is one of the paramount features of the cloud [1, 2] along with security (after all, no one aims for another massive and expensive Death Star vulnerable to a single X-Wing).Scalability is responsible for making any particular service something more than 'just an outsourced service with a prettier marketing face' [3].This particular feature pushes cloud constructors to introduce changes to optimize resource consumption while preserving the performance of the deployed application.Cloud scalability is also an issue that is still poorly understood.Many open questions that call for new research that will eventually incorporate new insight into already running or newly built systems remain.State-of-the-art technologies in cloud scalability typically focus on handling several replicas (service clones) of the image and load balance requests among them ([4] or Amazon's EC2 1 ) or federating clouds (infrastructure clones) to increase the pool of available resources [5,6].In some sense, these approaches can be compared with Corellian corvettes: they prove the concept in a quick and agile manner, but they are relatively vulnerable during huge business level loads (keeping our analogy with Star Wars, you would not face them with a Star Destroyer).Few are the examples of academic approaches that have reported reaching the scale of Amazon's infrastructure in number of virtual machines.Sharing the lessons learned in that endeavor is still pending.This special issue covers some of the most relevant trends on scaling cloud infrastructures and platforms.Readers will gain insight on what are the required steps toward optimizing their own clouds to support more concurrent users or operations while minimizing the usage of resources.These articles are also in the interest of those wondering what elements would be good to have as users trying to obtain the maximum scalability for their applications.Section 2 of this document lists some of the strategies that researchers are working on to improve the scalability of clouds, whereas Section 3 briefly describes the contributions presented in this special issue. WAY BEFORE THE CLONE WARSCurrent state-of-the-art technology in cloud system scaling places us well before 27,000 bBY (before the Battle of Yavin 2 ).The Star Forge, a giant automated shipyard created by the Rakata 1