Skip to main content

Command Palette

Search for a command to run...

Chapter 0: Introduction to Cloud Computing

Updated
6 min read
M

Mohamad's interest is in Programming (Mobile, Web, Database and Machine Learning). He is studying at the Center For Artificial Intelligence Technology (CAIT), Universiti Kebangsaan Malaysia (UKM).

0.1 What is Cloud Computing?

Cloud computing is a model for delivering information technology services over the internet on a pay-as-you-go basis. Instead of owning and maintaining physical infrastructure—such as servers, storage devices, and networking equipment—organizations can access these resources remotely via cloud providers.

The National Institute of Standards and Technology (NIST) defines cloud computing as "a model for enabling ubiquitous, convenient, on-demand network access to a shared pool of configurable computing resources." These resources include networks, servers, storage, applications, and services that can be rapidly provisioned and released with minimal management effort.

Cloud computing enables businesses to scale resources elastically, improve operational efficiency, reduce capital expenditure (CAPEX), and accelerate innovation.

Characteristics of Cloud Computing

The fundamental characteristics of cloud computing include:

  • On-demand self-service: Users can automatically provision computing capabilities without human interaction with the service provider.

  • Broad network access: Resources are accessible over the network and can be accessed using standard mechanisms by heterogeneous platforms (e.g., mobile phones, tablets, laptops).

  • Resource pooling: Computing resources are pooled to serve multiple consumers using a multi-tenant model.

  • Rapid elasticity: Capabilities can be elastically provisioned and released to scale rapidly outward and inward commensurate with demand.

  • Measured service: Resource usage is monitored, controlled, and reported, providing transparency for both the provider and the consumer.

Analogy: Utility Computing

Cloud computing is often compared to public utilities such as electricity. Rather than investing in generators and infrastructure, consumers pay for the electricity they use. Similarly, cloud computing allows organizations to consume computing power as a service, scaling their usage up or down as needed and paying only for what they consume.

0.2 Cloud Service Models

Cloud computing services are typically categorized into three primary service models:

Infrastructure as a Service (IaaS)

IaaS provides virtualized computing resources over the internet. This includes servers, storage, and networking hardware. Users retain control over operating systems and applications while the provider manages the underlying infrastructure.

Examples:

  • Amazon EC2 (Elastic Compute Cloud)

  • Microsoft Azure Virtual Machines

  • Google Compute Engine

Use case: Ideal for developers who need flexibility and control over the computing environment.

Platform as a Service (PaaS)

PaaS offers a platform that includes operating systems, development tools, database management, and other services that allow users to develop and deploy applications without managing the underlying infrastructure.

Examples:

  • AWS Elastic Beanstalk

  • Microsoft Azure App Services

  • Google App Engine

Use case: Suitable for application developers who want to focus on coding and business logic without managing the infrastructure.

Software as a Service (SaaS)

SaaS delivers software applications over the internet on a subscription basis. The cloud provider manages all aspects of the infrastructure, including data, runtime, middleware, and application updates.

Examples:

  • Gmail

  • Microsoft 365

  • Salesforce

Use case: Best for end-users who need ready-to-use applications without installation or maintenance.

Visual Representation

A layered diagram with three horizontal tiers labeled IaaS, PaaS, and SaaS, showing the level of user and provider responsibility for each layer of the stack (applications, data, runtime, OS, virtualization, servers, storage, networking).

0.3 Cloud Deployment Models

Cloud deployment refers to the environment in which the cloud services are hosted and delivered. The three primary deployment models are:

Public Cloud

In a public cloud model, computing resources are owned and operated by a third-party cloud service provider and delivered over the internet. Resources are shared among multiple tenants (i.e., customers).

Examples: AWS, Microsoft Azure, Google Cloud Platform

Advantages:

  • Cost efficiency due to shared infrastructure

  • High scalability and flexibility

  • No maintenance responsibilities for the customer

Consideration: Data residency and compliance concerns in regulated industries

Private Cloud

A private cloud is used exclusively by a single organization. It may be hosted on-premises or by a third party. Unlike the public cloud, it offers more control and customization over security and governance.

Advantages:

  • Enhanced security and privacy

  • Greater control over infrastructure

  • Better compliance alignment

Consideration: Higher upfront and operational costs

Hybrid Cloud

Hybrid cloud combines public and private clouds, allowing data and applications to move between them for greater flexibility and optimized deployment.

Advantages:

  • Balances cost-efficiency and control

  • Facilitates gradual migration to the cloud

  • Enables use of cloud bursting (expanding workloads into the public cloud during peak demand)

Visual Representation

A Venn diagram or three-pane comparison illustrating the relationships and differences between public, private, and hybrid cloud environments.

0.4 Overview of Major Cloud Providers

The cloud computing landscape is dominated by three major providers:

Amazon Web Services (AWS)

Launched in 2006, AWS is the most comprehensive and widely adopted cloud platform. It offers over 200 fully featured services across global data centers, including compute, storage, database, machine learning, and security services.

Strengths:

  • Broad service portfolio

  • Maturity and market leadership

  • Extensive documentation and certification paths

Microsoft Azure

Azure is deeply integrated with Microsoft's ecosystem, making it a preferred choice for enterprises that rely on Microsoft technologies like Windows Server, Active Directory, and Office 365.

Strengths:

  • Enterprise-grade support

  • Seamless integration with Microsoft software

  • Strong presence in hybrid cloud solutions

Google Cloud Platform (GCP)

GCP is known for its leadership in data analytics, artificial intelligence, and containerization technologies. It powers products such as Google Search and YouTube and offers services like BigQuery and TensorFlow.

Strengths:

  • Advanced data processing and AI capabilities

  • Competitive pricing

  • Developer-friendly tools

Comparative Table (Suggested)

FeatureAWSMicrosoft AzureGoogle Cloud Platform
Market ShareLargestSecond largestThird largest
Year Launched200620102008
Key StrengthsEcosystem breadth, scalabilityMicrosoft integrationAI/ML, big data analytics
Notable ServicesEC2, S3, LambdaAzure Functions, Blob StorageBigQuery, Kubernetes Engine
Global Regions32+ regions, 100+ AZs60+ regions40+ regions

0.5 Comparing the Providers

While AWS, Azure, and GCP all offer similar core functionalities—such as virtual machines, object storage, and managed databases—they each have unique features, pricing structures, and target audiences.

AWS is widely regarded for its breadth and depth of services, making it ideal for businesses seeking the most comprehensive platform. Azure is often chosen by organizations already invested in Microsoft software. GCP appeals to those requiring strong AI and data analytics capabilities.

Factors to Consider When Choosing a Provider:

  • Existing technology stack

  • Compliance and data sovereignty needs

  • Budget constraints

  • Performance and latency requirements

  • Long-term support and ecosystem

0.6 Why Choose AWS?

There are several reasons why AWS remains a preferred choice for individuals and organizations seeking to adopt cloud computing:

  • Global Reach: AWS has the most extensive global infrastructure, enabling low-latency performance and high availability worldwide.

  • Innovation and Service Breadth: With continuous development and deployment of new services, AWS stays at the forefront of cloud technology.

  • Certifications and Learning Resources: AWS offers a structured certification path (including the Cloud Practitioner), extensive learning content, hands-on labs, and community support.

  • Enterprise and Startup Friendly: Whether you are building a startup application or managing enterprise-grade workloads, AWS provides solutions to match varying requirements.

Summary

This chapter has introduced the foundational concepts of cloud computing, described the service and deployment models, and compared the three major cloud service providers. Understanding these core principles is essential before diving into AWS-specific services and preparing for the AWS Certified Cloud Practitioner (CLF-C02) exam.

In the next chapter, we will explore AWS-specific cloud concepts, including the benefits of adopting AWS, cloud design principles, and the foundational knowledge needed to navigate the AWS ecosystem effectively.