Blog

What is Cloud Technology?

Posted by Charles Loomis on 17-Jun-2015 10:00:00

Find me on:

What is cloud technology? Because of the hype surrounding cloud technologies, the term “cloud” has been used to label and to sell a vast array of products that have little or nothing to do with the “cloud”. This serves only to confuse people about what features a cloud should have and how they could benefit from a cloud. To clarify things a bit, let’s see how cloud technologies have emerged from previous ideas.

cloud_computing_concept_greenboard

Cloud: An Emergent Technology

Cloud technologies bring together ideas and techniques that have existed for quite some time, notably remote (networked) computing, virtualization, and ease of access.

Mature Virtualization Technologies

Virtualization of computing resources has existed for decades, initially taking the form of software emulators with poor computational performance and improving over the years. In the past decade, virtualization techniques have been directly integrated into mainstream operating systems and more importantly, the support for these techniques has been added directly to all modern CPUs. The end result is that current virtualization techniques allow segmentation of machine resources and customization of the running operating system with a negligible impact on performance. These mature machine virtualization technologies are widely available from “hypervisors” provided by open source collaborations and major IT software vendors alike. They include KVM (RedHat), Xen (Citrix), HyperV (Microsoft) and ESXi (VMware). However, virtualization is only one, albeit critical component of a cloud.

Simple, Universal APIs

Since machines were first networked together, there have been ways to federate those machines (and their running services) into a larger computing platform, with access to the federated or distributed resources governed by an Application Programming Interface (API). Examples of generic APIs include CORBA and Web Services (via WSDL and co.). These APIs and the associated computing platforms have been adopted by industry, but are not popular with developers because of their complexity and limited interoperability between different implementations.
Recently there has been a backlash against such complex and heavyweight APIs. The current trend is towards Resource Oriented Architectures and "REST" APIs that reuse the ubiquitous HTTP protocol. The result has been APIs with simple, uniform SCRUD (Search, Create, Read, Update, Delete) actions for resources defined by URLs. Basing this on the HTTP protocol means that these simple APIs are universally accessible from all programming languages. The use of simple REST APIs for cloud services is the another key component for the popularity of the cloud.

Ubiquitous, Reliable Networking

Use of remote computing infrastructures for critical services is only attractive when the clients of the services can reliably connect to them. Consequently, having a ubiquitous and reliable network infrastructure is a prerequisite for the wide adoption of any remote computing platform, the cloud included.
The current reality of phones, tablets, and computers connected by cellular networks, wifi, and high-bandwidth, wired connections provides universal, reliable, 24/7 access for the cloud.

Bringing Them Together

Cloud technologies are the result of the marriage between mature virtualization, reliable networking, and simple APIs. The combination enables cloud platforms to provide efficient, powerful computing resources that consumers can access easily and reliably. Cloud platforms provide resources that are more dynamic and more flexible than has ever been possible before. These are the core benefits of a cloud platform.
Many cloud platforms also have additional benefits: Elasticity: the infrastructure is large enough that it contains essentially “infinite” resources compared to the need of any individual user. Pay-as-you-go: The dynamic nature of a cloud platform permits rapid provisioning, allowing billing to follow actual use of resources. This shifts capital expenditures (CapEx) into operational expeditures (OpEx), especially attractive for small companies and individuals. Multi-tenant: Cloud infrastructures can also reduce costs by allowing the resources to be shared between different users. These cost reductions may be passed onto the customer, making the cloud platform more attractive. In the end, cloud technologies combine some existing techniques and ideas to create a platform that greatly benefits users in terms of rapid provisioning and flexibility.  

Cloud Benefits

Despite the marketing hype, cloud technologies offer real benefits to users. With cloud infrastructures, people can:
  • rapidly deploy large applications without associated large, up-front capital costs
  • optimize these applications easily, running them in environments tuned to the application’s requirements
  • deploy services near clients to minimize latencies
  • scale resources to match customer demand
If you would like to know more about how to benefit from cloud computing, get in touch with the SixSq team.
Contact us »
 
 

Topics: Cloud Basics