What is in The Cloud?

My answer to this question would be: “The Cloud is full of IT resources offered for rental”. It’s the exact description and it would qualify for the shortest content about Cloud Computing. But I want to elaborate on the topic and insert my other definition of Clouds which will all be provided at the end of the post. 

Before this, let us focus on the definition given above and define what IT resources can be offered for rental and why the  concept of on-demand computing has become so popular for the last few years.


Image for post


Fig. 1. Cloud computing is made of concepts for delivering on-demand services

IT Versus Non-IT

To better illustrate their differences, let’s divide all businesses into two categories: 

  • IT – companies whose revenue is primarily generated from producing and selling IT resources and services (such as hardware and software vendors, service integrators, etc.)
  • Non-IT – companies whose core business is not related to IT (all other industries)

In today’s digital era, it can be difficult to find a company that doesn’t use any type of software. Surely, they’re using at least a simple Excel spreadsheet or a communication app like Zoom. Many are now using complex ERP systems to make their processes more efficient. All these software are hosted on underlying hardware.

All software or applications can be grouped into three types: desktop, mobile and web depending on the client device used.

  • Desktop – software is launched on a desktop/laptop that uses a conventional operating system (e.g. Windows, Linux, macOS)
  • Mobile – a particular type of software adapted to be run on mobile operating systems (Android, IOS, )
  • Web – software that is available from a browser (on any platform)

The company may own the hardware that hosts software applications, and the existing infrastructure can be located either within their office or in a select Data Centre (it is called “co-location“) managed by the company’s IT team. In this perspective, the company owns and manages all its IT resources, including the physical server (Computers optimised for business workload), middleware, Databases, applications, network configurations, Operating System (OS), security, patching, maintenance, etc. 

This is how it used to be in “Pre-Cloud” days.


Everything as a Service Age Has Come!

One day, someone clever in some IT company decided, why use our IT resources alone? Why not offer them as a service? And many businesses around the world agreed. Why should we “buy and own” IT infrastructure when we can “pay and use” cloud services?  

With fast and reliable Internet access which is available almost everywhere in the world today, this consumption pattern has changed not only the way enterprises work, but also how people buy products: such as music, books, movies, how they store and access their files, how they communicate with each other using social media – Everything “As A Service” age is born.

This has now introduced a new term “XaaS”, where X can be a variety of options that we will discuss right now.


How everything as a service works

Fig. 2. How everything as a service works

IT companies provide a variety of options in their cloud computing services depending on what level of management you want them to handle and what you want to have full control over. Based on this separation of areas of control and responsibility, there are several on-demand computing options to select. Most common Xs in XaaS are:

  • IaaS – Infrastructure as a Service: in this model, you are responsible for everything that starts from Operating System level and above. Cloud providers provide you with their hardware, connectivity (access to the Internet) and assure the physical security of the servers located in their Data Centre. You can build whatever information system you want on top of the provided OS.
  • PaaS – Platform as a Service: you are provided with a specific software environment which your applications need. For example, a Database management system such as Amazon’s AWS RDS or an Application server such as Microsoft’s Azure App service. Your Cloud provider fully manages everything below this level. This concept is similar to traditional web hosting, but can cover much more complex cases than just using managed hosting services such as WordPress or Joomla.
  • SaaS/FaaS – Software/Function as a Service: a higher level of abstraction, when you use some specific software or pre-built function, you do not have to worry about anything related to IT infrastructure. Software as a service lets you pay and use the system out-of-the-box (Office 365, Dropbox, Zoom, Salesforce etc.).
  • CaaS – Container as a Service, slightly less frequently used model only because it requires specific application architecture – cloud-native. That is why both Virtualisation and Container blocks are represented as optional.
A diagram defining the difference between Legacy and XaaS inclusions

Fig. 3. A diagram defining the difference between Legacy and XaaS inclusions

There’s also DevOps as a service wherein traditional development and operations are moved to the cloud. This allows several processes to be automated by utilising virtual development tools. There are also other models like XaaS, NaaS (Network as a Service), and MBaaS (Mobile Backend as a Service), but we will not talk about them today. I can bet that in the future, this list of on-demand computing models will grow.

These various options were introduced to give flexibility in Cloud offerings, but let us take a look at what they all have in common. Data – it is something that is the most valuable in the 21st century, and it is even popularly considered as the new oil and gas. Data – information in some structured representation we all work with every day. There is no chance we would like someone else to use our data without our explicit consent. 

We perform operations with our data: we produce it, we send it to each other, share publicly, format, resize, delete, basically do a lot that is called ‘data processing’. Pieces of software we call “Applications” do this. Applications are made of functions – atomic elements of functionality that work with data. 

We own the data, but everything below it can be outsourced, and can be rented by us in a different way. 

In general, nowadays businesses prefer the SaaS business computing model for everything. If a SaaS offering covers all business needs, it makes sense to use it as it is. Unfortunately, not all business cases can be pre-built and supplied in this model. When a business requires more control, some level of customisation will be necessary such as enabling some particular security compliance rules – then inevitably it comes with the price of managing more and more levels of the IT resources. 

Take DAREY.IO as an example. As an IT Mentorship organisation, we use a lot of SaaS products to operate the entire business.; However, we also engage in IaaS, PaaS, and CaaS to address other parts of the business model like implementing end-to-end DevOps solutions based on real-world use cases for our interns to learn.

Was Cloud a Groundbreaking Idea?

Surprisingly, it isn’t an utterly brand-new concept – to serve IT resources as a service and outsource computing power. Long ago, when there was no such thing as a PC (personal computer), but scientists and engineers needed to solve complex computational tasks, there were so-called Mainframes – grandparents of modern servers. They were giant pieces of machinery that could occupy the entire rooms or even floors in a building and were extremely expensive. Mainframes did not support any multi-user or parallel access, so the time a person could use it was very limited, and users had to make an appointment and wait for permission to access the mainframe’s computational power. Time was limited and whether you are done with your computations or not – you had to release the resources for the next person.

Sounds familiar? The same concept is used now in utility computing, although in a more sophisticated style.

Cloud providers charge their clients for different units based on the option of the cloud usage. Usually, those units are time (in seconds), the number of concurrent users, traffic (inbound and outbound), storage capacity (in GB), and some other synthetic metrics (e.g. the number of database transactions, or CPU cycle times).

But Why Go Cloud? What if I Want to Be in Control?

This is a common question that businesses ask. The main benefit of the Cloud is that it eliminates planning mistakes. 

At the beginning of my career, when I used to work for a relatively small Internet Service Provider, our CTO decided to buy a number of network equipment. But when the equipment arrived at the warehouse, it appeared that it did not support some specific protocol, and the whole project was put at risk. It was a “million-dollar mistake”, and it led to significant network architecture changes. 

Could it have been avoided that time? Probably not. 

But now, when everything is “as-a-service”, even network connectivity can be provided from the Cloud. You can change your requirements much more frequently and have a cloud backup in case something goes wrong. Software Defined Networks (SDN) now allows you to build the network on regular commodity servers. New features and support of new protocols can also be added programmatically. Nowadays, it is much harder to make the same kind of mistake.

Another reason for using Cloud is the massive advantage of minimising Capital Expenses and the ability to adjust to any workload. If you have a growing business, you might need to grow your IT resources accordingly. If the load is unpredictable – today it is low, tomorrow it spikes up to the sky and the day after it is somewhere in the middle – in the classic IT world, you would need a server to cater for maximum load, and the rest of the time it will be underutilised. Plus, you must invest in maintaining sufficient resources for managing the infrastructure. In this case, you are burying your money into this particular server. 

Pay-as-you-go consumption paradigm allows you to normalise your spending on IT resources. By taking advantage of cloud computing resources, you can cut off a large chunk of your expenses. In an on-demand environment, you’ll only need minimal computing resources to maintain in-house.

Do you want to be in full control? Then yes, you should probably have your own IT infrastructure and manage it within your organisation. Or even better, adopt Cloud technologies within your IT department. This approach is known as “Private Cloud”.

A rule of thumb is if the core of your business is IT and you have strong reasons to have all the resources within your area of control – host it internally. Otherwise, consider going for a Public Cloud option as it might bring many business benefits.

There is also a combination of two approaches when part of the resources are managed by a Cloud provider and another part by the business – Hybrid Cloud.

“To Cloud” or “Not to Cloud”?

Of course, “To Cloud”, it is a merely inevitable trend in the modern IT World regardless of what your role is – whether it is a software developer or a system administrator. Businesses adopt more and more cloud technologies, so you better be prepared and armed with all necessary knowledge to survive in this new “Cloudy” world. 

If we look at the classic Software and Hardware giants like Microsoft, Oracle, IBM – they have also realised that the good old days when they could lock a client with their proprietary products are gone. They have regrouped their RnD to compete with relatively young and bold leaders of the market like AWS and Google. 


The top cloud service providers

Fig. 4. The top cloud service providers

As per the latest Gartner report, the situation on the Cloud market looks like this:

The magic quadrant of cloud service providers

Fig. 5. The magic quadrant of cloud service providers

According to LinkedIn, there are 417,130 openings with the word “Cloud” in it at this very time. Glassdoor shows us that the average salary of a Cloud Engineer in the US is $125K annually.

And this is actually good news! There is intense competition on the market  as new products and services are introduced every so often. It is still a fast-growing industry which means there’s more room for growth, so there’s no better  time to join the Cloud expert community than now! 

Every Cloud Service Provider has its certification path that you can choose to follow. There are multiple books and courses out there on the Internet that can prepare you for these certifications. But the best method to learn about on-demand computing is through Darey.io’s Cloud and DevOps online training.

Remember that the most important thing is to be able to effectively use these tools with your hands. And not only use, but build meaningful end-to-end products that can benefit real-life use cases. This means that you must not just concentrate on one Cloud Vendor but learn overall concepts and approaches that are quite similar in all Service Providers.

So, What is in The Clouds?

At the beginning of this post, I promised to give another definition – Opportunities are in the Cloud. This definition is as true as the first one – there are lots of opportunities for those who are just starting their own IT journey or willing to broaden their expertise beyond classic IT products and solutions. 

If you are as passionate about Clouds and DevOps as we are – follow our blog, explore our mentorship program to start learning-by-doing with real-world projects. Contact us if you have any questions and stay tuned for more blog updates!

written by
Dare Olufunmilayo

Tell us about yourself...

Liked this article?

Stay updated with our latest articles, subscribe to our newsletter

You may also like

Darey Blogs

Uncategorized

Demystifying Devops 2

Dare Olufunmilayo
  • 5 min watch
Darey Blogs

Uncategorized

DevOps - Where to start?

Dare Olufunmilayo
  • 5 min watch