Introduction to cloud computing
Models
Service models
IaaS (Infrastructure as a Service):
Raw computing resources (servers, storage, networking)
Maximum flexibility and control
Examples: AWS EC2, Google Compute Engine, Azure VMs
PaaS (Platform as a Service):
Development and deployment platform
Managed runtime environment
Examples: Heroku, Google App Engine, Azure App Service
SaaS (Software as a Service):
Ready-to-use applications
Minimal management needed
Examples: Gmail, Salesforce, Microsoft 365
FaaS (Function as a Service):
Serverless computing
Pay only for actual function execution
Examples: AWS Lambda, Azure Functions
Deployment models
Public Cloud:
Resources owned/operated by cloud providers
Shared infrastructure with other customers
Examples: AWS, Azure, Google Cloud
Benefits: Cost-effective, scalable, low maintenance
Challenges: Less control, potential security concerns
Private Cloud:
Dedicated to a single organization
Can be on-premises or provider-hosted
Examples: VMware, OpenStack, Azure Stack
Benefits: More control, better security, compliance
Challenges: Higher costs, requires expertise
Hybrid Cloud:
Combination of public and private clouds
Data/apps shared between environments
Examples: Azure Arc, AWS Outposts, Google Anthos
Benefits: Flexibility, best of both worlds
Challenges: Complex management, integration needs
Multi-Cloud:
Using multiple public cloud providers
Example: Using both AWS and Azure
Benefits: Avoid vendor lock-in, optimize costs
Challenges: Complex management, different tools
Community Cloud:
Shared by organizations with common interests
Example: Government clouds
Benefits: Shared costs, common compliance
Challenges: Limited availability, specific use cases
Components
Infrastructure
A hypervisor is a software layer between the hardware and the VMs that allows multiple VMs to run on the same physical machine.
Bare metal servers are physical servers dedicated to a single tenant, without virtualization or hypervisor layers.
Types of hypervisor:
Type 1 (Bare-metal)
Runs directly on the hardware
More efficient and secure
Used in enterprise/data centres
Type 2 (Hosted)
Runs on top of OS
Easier to set up
Used for desktop virtualization
Containers vs. virtual machines:
Containers share OS kernel
Less resource overhead
Less isolation
Storage and content delivery networks
Direct Attached Storage (DAS):
Physically connected to one server
Fast, simple, and low cost, but limited scalability
Block Storage:
Raw storage volumes presented as blocks
High performance and bootable
File Storage:
Hierarchical storage with folders
Easy sharing and familiar structure
Object Storage:
Flat structure using unique identifiers
Highly scalable and cost-effective, but slow
A content delivery network is a globally-distributed network of servers that delivers web content to users from the nearest geographic location, reducing latency and improving performance. It acts as a cache between users and the origin server.
Emergent trends and practices
Message brokers are middleware that enable services to communicate asynchronously by handling message queuing, routing, and delivery.
Last updated