Building a Cloud Environment / Cloud Infrastructure

Choose the cloud infrastructure based on your business use case Types of cloud infrastructure -

Private

completely dedicated to one end user or group, maintained on a private network two types:

1. Dedicated Cloud Infrastructure

IT infrastructure is devoted to a single client with totally segregated access

2. Managed Private Cloud

third-party provider deploys, configures, and manages a private cloud on behalf of its customers

Public

third party cloud providers who provide services over the Internet; eg Microsoft Azure, AWS

Hybrid

combination of private and public combines on-premises infrastructure—or a private cloud—with a public cloud edge computing

Multi-cloud

A multi-cloud architecture consists of multiple cloud services from various public or private cloud vendors. All hybrid cloud environments are multi-clouds. However, not all multi-cloud environments are hybrid clouds.

Cloud Delivery Models

(aka cloud service delivery model)

At a Glance

specific, pre-packaged combination of IT resources offered by a cloud provider

in terms of customizability and level of control/access granted, IaaS > PaaS > SaaS mnemonic - I P S

in terms of ready-to-use, SaaS > PaaS > IaaS

Cloud Service Delivery Models

IaaS - Infrastructure as a Service

Resources, self-contained IT environment hardware, network, connectivity are all provided by cloud provider bare infrastructure “bare metal”

generally offered as virtual instances

access = full access to virtualized infrastructure related IT resources

cloud consumer - sets up and configures bare infrastructure, manages, monitors software

cloud provider - provides and manages IT resources like storage, processing, hosting, networking. monitors usage

offers as much configurability and customizability as on-premise tech virtual servers

eg. ec2

PaaS - Platform as a Service

ready made environment support the entire device lifecycle provides a framework

allows customers to build, test, deploy run, update and scale applications more quickly and cost-effectively than they could if they had to build out and manage their own on-premises platform

access - moderate level of administrative control limited administrative

cloud consumer - develops, tests, deploys, and manages

cloud provider - pre-configures infrastructure, middleware. monitors usage

eg Heroku

SaaS - Software as a Service

software that is a shared cloud service used to make a reusable cloud service widely available mostly for end users

access = front-end user-interface

cloud consumer - uses and configures cloud service

cloud provider - implements and manages cloud service

eg. Gmail, Microsoft 365,

Pizza Analogy

  • on-premise → your own kitchen, your own ingredients, any type of pizza
  • IaaS → (kitchen as a service) → cloud provider manages kitchen, your own ingredients, any type of pizza
  • PaaS → (take and bake) → cloud provider manages kitchen and some ingredients, your own pizza but with limited ingredients
  • SaaS → (pizza delivery) → cloud provider manages kitchen, ingredients, and pizza making. You can choose from available options

Ease of use vs Customizability

Link to original