There’s a lot of confusion surrounding this elegant approach to marshaling remote computer resources. And, we do not wish to profit from the confusion created by the broad marketing of cloud computing to the public. So here we offer a definition of cloud computing that is easy to understand, accurate, and without marketing hype.
1. Cloud Computing Is Hardware As Software
Let’s deal with the first part of our simplified definition of cloud computing – that “cloud computing is hardware as software.” Imagine that hardware resources, like memory and processing power, are replicable and portable like software. This special quality of software allows for its replication almost without effort or expense: the creation of 100 copies of a file is done as easily as two. However, this is not the case with RAM modules or CPUs; they need to be purchased and installed, interrupting the operation of the server. With cloud computing, hardware seemingly assumes the flexibility of software; for example, memory and processing power can be multiplied and moved from server to server at anytime.
The seeming transformation of hardware into a portable and replicable resource is realized by rendering a likeness of actual server hardware – virtual hardware. The guest operating system* is presented with access to hardware surrogates, including virtual memory, virtual processing, and virtual disk. The real hardware remains concealed and isolated from the guest operating system. For example, 64GB of actual RAM might be presented as two individual banks of 20GB, with 24GB withheld and reserved for future use. By controlling the presentation of the actual hardware through the use of virtualization, cloud platforms can dynamically allocate resources to guest operating systems.
A cloud platform, like Open Hosting’s, allows you — and your applications, via our API — to request and modify hardware resources as if they were software. Want more memory? Disk? Such resources can be adjusted without having to wait for a technician to power-down the server, open the server, install new RAM modules, and power-on.
2. Cloud Computing Is Remote Computing
The second part our definition states that “cloud computing is remote computing”. The critical point is cloud computing is more than the virtualization of hardware, but the subsequent packaging of these resources as a remotely accessible service. The service can be private and closed to the public. For instance, many large organizations operate private clouds for just their purposes. Or, more commonly, it is a public retail service, like Open Hosting. The point is virtualization isn’t enough: remote accessibility is key.
Behind the marketing of this phrase, there’s an assumption that the definition is commonly understood. Yet, maybe this isn’t the case. As evidence, we regularly receive inquires from folks wanting to migrate their existing applications to a cloud host, often for no obvious technical advantage. They just want cloud.
This has happened before.** In the late 1990s, Sun Microsystems ran TV advertisements for Java, their new computer programming language. By 2000 everyone wanted Java. Most folks didn’t know what it was, but they believed it to be a connection to a shimmering future.
Ten years on, and it is cloud computing. Not since Sun’s launch of Java has the general public been so excited by a technical innovation that they often don’t understand. Everyone wants cloud.
Unlike Java, which was then the property of Sun Microsystems, cloud computing belongs to no one. It is simply a way of organizing computer resources. Still, the expression “cloud computing” — sometimes just “cloud”— is today’s Java largely by the efforts of firms like Microsoft, Apple, and Amazon. Apple has the iCloud. Microsoft’s ‘To the Cloud’ campaign promotes Windows Live. And, Amazon wants your media for its Cloud Player and Cloud Drive.
Used correctly, cloud computing is a truly awesome way to control the computational resources supporting your application.
Guest Post By Open Hosting
The Open Hosting team is a mix of hosting industry veterans and software developers. Open Hosting is a trusted and reliable provider of cloud hosting solutions based in Vienna, VA. Since 2003