understanding the basics of cloud computing

Introduction to Cloud Computing Basics

This post is an introduction to Cloud Computing basics that will provide you with key terminologies used  by cloud practitioners.

After learning cloud computing basics, I will help you to start on Amazon Web Services (AWS).

Let’s start!

What is cloud computing?

The National Institute of Standards and Technology (NIST) gives the following definition of cloud computing:

“Cloud computing is a model for enabling convenient, on-demand network access to a shared pool of configurable computing resources (networks, servers, storage, applications, and services). These resources can be rapidly provisioned and released with minimal management effort or service provider interaction.”

We can define cloud computing as a model that enables the features listed below:

  • Users should be able to provision and release resources on-demand.
  • The resources can be scaled up or down automatically, depending on the load.
  • The provisioned resources should be accessible over a network.
  • Cloud service providers should enable a pay-as-you-go model, where customers pay only for the resources they consume.

When to choose Cloud Computing?

For many reasons, we can choose to use Cloud Computing over over On-Premise datacenter:

  • The infinite processing and storage resources, available on-demand, reduces the need for detailed advanced planning and procurement processes.
  • The model promotes the use of resources as per customer needs, for example, starting small, and then increasing resources when needed.
  • The development and test environments can be provisioned on a smaller scale than production environment, and enabled only during normal business hours in order to reduce costs.
  • The staging environment can be provisioned for a short duration to be a replica of the production environment. This enables testing using the same production configuration.
  • The cloud is the easiest way for scaling, both vertically and horizontally, in order to better manage spikes in demand, special events…

In addition, there are several key operational and maintenance-related implications, including:

  • No hardware maintenance or data center operations required.
  • Zero-downtime migrations and upgrades.
  • Ease of replacement of unhealthy machines.
  • Ease of implementation of high-availability and disaster recovery strategies, and many more.

Public, private, and hybrid clouds

Basically, there are three types of clouds in cloud computing, they are public, private, and hybrid clouds.

  • In a public cloud, third-party service providers make resources and services available to their customers via the internet. The customers’ applications and data are deployed on infrastructure owned and secured by the service provider.
  • A private cloud provides many of the same benefits of a public cloud but the services and data are managed by the organization or a third-party, solely for the customer’s organization. The infrastructure may be located on or off the organization’s premises.
  • A hybrid cloud is a combination of both a private and a public cloud. The decision on what runs on the private vs the public cloud is usually based on several factors, including business criticity of the application, sensitivity of the data, industry certifications and standards required, regulations, and many more.

Cloud service models: IaaS, PaaS, and SaaS

There are three main cloud service models, IaaS, PaaS, and SaaS, the main features of each of these are :

  • Infrastructure as a Service (IaaS):  it provides users the capability to provision processing, storage, and network resources on demand. The customers deploy and run their own applications on these resources. This service model is the closest one to the traditional on-premise models and the virtual server provisioning models (typically offered by data center outsourcers).
  • Platform as a Service (PaaS): the service provider makes certain core components, such as databases, queues, workflow engines, e-mails, and so on, which are available as services to the customer. The customer then leverages these components for building their own applications. The service provider ensures high service levels, and is responsible for scalability and high availability for these components. This allows customers to focus on their application’s functionality.
  • Software as a Service (SaaS): the service provider uses a subscription model and provides end-user applications to their customers. The customers might have some administrative capability at the application level, for example: to create and manage their users, cutomize logo..

The image below shows other cloud based service models with some example of services or service providers.

cloud-service-models

FaaS: stands for Function as a service.
DaaS: Database as a service
STaaS: Storage as a service

Conclusion

We have seen cloud computing basics, now, it’s time to learn cloud by practice, that’s why, I have written for you this second article: “How to Create an AWS account and get 12-month free tier“, in this article, I will guide you till you create your aws account and start your journey to become a cloud hero.

Thanks for your reading and see you in the next lab.

 

Leave a Reply

Your email address will not be published. Required fields are marked *