Cloud Computing - Documentation

1. What is Cloud Computing?

Cloud computing is the delivery of computing services over the internet. This includes servers, storage, databases, networking, software, analytics, and intelligence.

Key Concept: Instead of owning physical infrastructure, you rent resources on-demand from cloud providers.


2. Key Characteristics

  1. On-Demand Self-Service: Provision resources automatically without human intervention.
  2. Broad Network Access: Accessible via internet from any device.
  3. Resource Pooling: Multiple customers share computing resources (multi-tenancy).
  4. Rapid Elasticity: Scale resources up or down dynamically.
  5. Measured Service: Pay for what you use (compute hours, storage, bandwidth).

3. Cloud Deployment Models

Model Description Example
Public Cloud Services provided over the internet to multiple users AWS, Azure, GCP
Private Cloud Cloud infrastructure used exclusively by a single organization VMware vSphere, OpenStack
Hybrid Cloud Combination of public and private clouds Azure Stack, AWS Outposts
Multi-Cloud Using multiple public clouds for redundancy or optimization AWS + GCP + Azure

4. Cloud Service Models

Model Description Examples
IaaS (Infrastructure as a Service) Provides virtualized computing resources AWS EC2, Google Compute Engine
PaaS (Platform as a Service) Provides platform for building/deploying apps Heroku, Google App Engine
SaaS (Software as a Service) Software delivered over the internet Gmail, Salesforce, Slack
FaaS / Serverless Execute code without managing servers AWS Lambda, Azure Functions

5. Key Cloud Components

  1. Compute: Virtual machines, containers, serverless functions