Cloud native, Docker

What is Cloud Computing?


This article was written jointly by Container Solutions engineer Anne Currie and Michelle Gienow

When we talk about cloud computing, what do we actually mean?

Quite often we might be referencing the public cloud. As in, how someone (probably Amazon) built a giant warehouse full of servers with reliable and redundant power along with fast external and internal networking - in other words, a data centre - in order to rent out computer resources to other companies.

This is a very simplified description of a complex system, so let's call that the reductionist cloud. Cloud 0.

A huge benefit of Cloud 0 is that you rent, rather than buy, resources and without needing to be locked into long term contracts on that rental. This reduces the risk of making the wrong hardware buying decision, a dangerously easy mistake to make.

The other main benefit of Cloud 0 is you don't have to manage the machines yourself, sort out the networks, provide reliable power, monitor the cooling... That is a major headache simply lifted off of your organisation.

This may seem reason enough right there to make the switch to cloud computing, right? But: if you limit your understanding of cloud to just these basic benefits, you will be missing out on the truly good stuff.

So, then, what else is the cloud beyond a giant, global network of specialised data centres that someone else maintains for you? What are these other, more complex best bits waiting for us out there in the cloud?

The first cool thing is virtualisation

It turns out that servers are a rubbish unit of isolation for software in terms of efficient use of resources. Any application you run will either be too big for the server - that is, require resources in excess of those available on the machine - in which case it will run badly; or it will be too small, in which case you'll be paying for a whole server while only using a small fraction of it.

The cloud providers, though, don't sell individual servers this way. Instead, they buy big, cheap, commodity servers in bulk; divide each one up into many virtual servers and sell those: Hence, virtualisation.

These highly tailored virtual servers can be closely customized in both size and shape to suit an application’s exact needs, so the physical resources of the data centre are used better. By the numbers, Amazon Web Services (AWS) reckon 65% utilisation for companies cloud computing, versus 15% in a private (on premise) data centre.

This is good for the customer, good for the environment (data centres consume a tremendous amount of power) and, yes, also good for cloud providers.

Smart virtualisation is where the cloud providers actually make their money, by being vastly more efficient than homegrown data centres. It’s also the main reason why cloud computing is not even more expensive than it already is.

It's a veritable candy store for hardware!

The cloud holds still more advantages, though. From the very beginning, the public cloud didn't just sell virtual servers. It also provided specialised hardware like fancy storage. In this way, the cloud provides a premium service that once again makes your computing life easier (while giving them a chance to charge you more).

These days, the cloud offers a dazzling array of storage options with different properties: performance, availability, security, scalability, cost.

Beyond storage, you can binge on CPU types, networking options, server physical locations.... It's a veritable candy store for hardware!

But the benefits still do not stop

The public cloud also sells you operational services. Tools for providing, for example, management interfaces, security for your servers, automated monitoring and backups. All complex stuff that your internal teams would otherwise need to set up and manage for themselves -- now simple to provision and seamless to integrate thanks to the cloud.

Surely that would be enough? No, not yet!

Today’s cloud also offers incredibly cool software infrastructure services like Databases-as-a-Service, where all the scalability and redundancy is managed by the cloud provider. A painful and highly specialised job taken off your plate, just like that. And not just databases! Queues! Notifications! Streaming! Fill your boots! (For a price).

Finally, if running virtual servers is simply too much effort, you don’t even need do that anymore. The public cloud now offers complete managed hosting platforms, like managed container orchestration or the truly cutting edge Functions-as-a-Service. (A category of cloud computing services that provides a platform for you to develop, run, and manage application functionalities, minus the trouble of building or the complexity of maintaining the infrastructure that comes with developing and launching an app).

So cloud computing is way more than just shifting operations to big warehouses full of giant servers in deserts somewhere off in a far away land. And the immediate and obvious payoff of operational vs capital expenditure is mere table stakes when it comes to making a move to the cloud.

The real win when it comes to cloud computing?

All those highly specialised tasks that you can now effectively outsource to your cloud provider.

Moving to the cloud is not one hundred percent guaranteed sunshine and rainbows, however. There are two problems inherent in cloud computing that it’s important to be aware of lest they block some of the benefits we’ve just enumerated.

In our next installment, we will take a thorough look at these potential problems -- and how to avoid them.

Want to learn more about Cloud Native? Download our free eBook below.

New Call-to-action

Leave your Comment