DEV Community

Cover image for Introduction to Cloud Computing
Digital Craft Workshop
Digital Craft Workshop

Posted on • Originally published at Medium

Introduction to Cloud Computing

Azure & Cloud

Introduction to Cloud Computing

Cloud computing is the present and future of software utilization, development and hosting. Let me introduce you its basics.

Introduction to Cloud Computing cover image

Early Evolution of Cloud Computing

Datacentres in the Past

Until recently, maybe 10 to 15 years in the past, each company had its own datacentres with servers for a different purpose, maybe running on different hardware, and even with a different operating system.

Each of these servers has its own CPU, hard drive, and RAM memory and every one of them need enough resources for utilization at peak time.

It also means, that on average, most servers were really underutilized, and organizations were spending a ton of money on hardware that most of the time was not even used at 10% of its capability.

Illustration

Virtualization

Then, we started to implement virtualization, which allows us to run multiple virtual machines at a single virtual host (physical server). So, we were able to get more usage out of hardware, cut down space cooling and of course, the costs.

However, even with virtualization, we still had a few disadvantages, such as high upfront cost. So, we needed to buy powerful virtual hosts, which we would then kept for five years for the amortization of cost.

We still had to pay for space in the datacentre, as well as electricity and utility costs for cooling and other server’s needs. Furthermore, hardware maintenance is still required as this can breakdown, network cards can go bad, and so on.

Illustration

Virtualization is more cost-efficient than dedicated hardware, but there still was space for improvement. This is where Cloud Computing came in.

Cloud Computing

Cloud Computing enables companies to consume a compute resource such as a virtual machine, storage, or an application, as a utility — just like electricity — rather than having to build and maintain computing infrastructures in house. Source.

How to Create a Free Azure Account Step by Step

Guide for creating a free Azure account. What services you can use for free? What is Directory or subscription and what…medium.com

In the cloud environment, you have the cloud provider which owns their datacentre and manages all their hardware, networking and, of course, virtualization. Cloud is fully built on the principle of virtualization. No client has direct access to the hardware. Simply, its virtualized environment.

All resources are pulled together and then shared to multiple clients that all consume that shared hardware. Such clients do not need to know what server they are run on or on how many servers their environment is running. They simply consume a service and the cloud provider is the one making sure there are enough shared resources to handle requirements.

Illustration

Users select only the services they want to use. Each service has its own definition of utilization. Once you can be billed per user, once it can be per minute. Cloud infrastructure should be self-serviced by the user and provisioning should be fully automated by the cloud provider and delivered at almost instant fashion.

Side note: I send short, free lessons on building and shipping software in The Claude Code Memory Starter — a tiny email series you can join in one click.

Fundamental Division of Cloud Services

Each cloud provider has its own list of services to offer, but these services can be always divided into two basic ones.

Compute Power

Compute power is how much processing computer can do. For example, when you are buying new home computer, you may choose a computer with 8 GB of RAM and the latest processor to run today’s software. But, as a load of computer grows, you will find that it slows down.

With Cloud Computing you can add or remove compute power as you need. This can save your costs, since you are paying only for the resources you use.

Storage

Storage is a volume of data you can store on your computer. Traditional computer has a limited hard drive for space. With cloud computing you can request more storage as you need.

Illustration

Furthermore, we can divide cloud services more by its user’s needs into three categories.

Infrastructure as Service(IaaS)

IaaS aims to provide control over hardware directly to the customer. This does not mean control over the physical machines. This means full control over hardware threw online interfaces. Customer will gain control over virtual machines, storages, or operating systems.

Common usage:

  • Load migration.
  • Storages.
  • Backups and recovers.

Platform as Service(PaaS)

PaaS is providing an environment for development, testing and deploying of software applications. Target is to create application quickly without infrastructure concerns.

Common usage:

  • Development framework(Software resources such as Azure Fabric Service).
  • Analytics and Bussiness inteligence.

Software as Service(SaaS)

SaaS is supplying companies without software focus business. So we are talking about software like Office365 or Skype.

Table of Responsibility

Illustration

[Source](https://docs.microsoft.com/en-us/learn/modules/principles-cloud-computing/media/5-layer-diagram.png)
  • IaaS — Requires the most of user’s management over all of cloud services.
  • PaaS — Requires less of user’s management. Cloud is providing operation system and user is responsible for applications and data.
  • SaaS — All of responsibility relies on cloud provider.

If this was a useful primer, you might also enjoy The Claude Code Memory Starter — a short, free email series, one bite-sized lesson at a time.

 Related Reading

Top comments (0)