Cloud Computing Models, Services (IaaS, PaaS, SaaS), and Architecture

Cloud Computing Fundamentals and Deployment Models

Defining Cloud Computing

Cloud computing is a model of delivering IT resources such as servers, storage, applications, and networking over the internet on demand. It eliminates the need for owning physical infrastructure and follows a “pay-as-you-go” approach, providing scalability, flexibility, and cost efficiency.

Deployment Models

  1. Public Cloud

    • Operated by third-party providers and delivered over the internet.

    • Resources are shared by multiple users (multi-tenant).

    • Example: AWS, Microsoft Azure, Google Cloud.

  2. Private Cloud

    • Dedicated to a single organization.

    • Provides greater control, security, and customization.

    • Suitable for businesses handling sensitive data.

  3. Hybrid Cloud

    • Combines public and private cloud environments.

    • Allows data and applications to move between both.

    • Provides flexibility and optimized cost–performance balance.

  4. Community Cloud

    • Shared by a specific group of organizations with similar goals, security, or compliance needs.

    • Example: Government departments, healthcare, banking sector.

Cloud Service Models (IaaS, PaaS, SaaS)

The Three Main Service Models

Cloud services are delivered in three main models:

  1. IaaS (Infrastructure as a Service):

    • Provides virtualized computing resources like servers, storage, and networking.

    • Users manage operating systems and applications, while the provider manages hardware.

    • Example: Amazon EC2, Google Compute Engine.

  2. PaaS (Platform as a Service):

    • Provides a platform with tools and environment to develop, test, and deploy applications.

    • Developers focus on coding without worrying about infrastructure management.

    • Example: Google App Engine, Microsoft Azure App Service.

  3. SaaS (Software as a Service):

    • Ready-to-use software delivered over the internet.

    • Users access applications via a browser without installing or managing them.

    • Example: Gmail, Microsoft Office 365, Dropbox.

Pros and Cons of Cloud Service Models

1. Infrastructure as a Service (IaaS)

✅ Advantages:

  • High scalability and flexibility.

  • Pay only for the resources used.

  • Full control over operating systems and applications.

  • Eliminates the need for physical hardware.

❌ Disadvantages:

  • Requires skilled IT staff for management.

  • Security risks if the provider is not reliable.

  • Performance depends on internet connection.


2. Platform as a Service (PaaS)

✅ Advantages:

  • Faster development and deployment of applications.

  • Developers focus on coding, not infrastructure.

  • Automatic scaling and updates handled by the provider.

  • Cost-effective for software development teams.

❌ Disadvantages:

  • Limited control over underlying infrastructure.

  • Dependency on the provider’s platform (vendor lock-in).

  • Less flexibility for highly customized applications.


3. Software as a Service (SaaS)

✅ Advantages:

  • No installation or maintenance required.

  • Accessible from anywhere with internet access.

  • Cost-effective for end-users.

  • Automatic updates handled by the provider.

❌ Disadvantages:

  • Limited customization of software.

  • Data security and privacy concerns.

  • Requires constant internet connection.

  • Users depend fully on the provider’s availability.

Web 2.0 Revolution and Applications

The Shift to a Participatory Web

The key revolution of Web 2.0 was the move from a static, read-only web (Web 1.0) to a dynamic, read–write, and participatory web. Unlike Web 1.0, where users were passive consumers of information, Web 2.0 allowed users to interact, collaborate, and generate their own content. It emphasized social networking, collaboration, sharing, and community building.

Examples of Web 2.0 Applications:

  1. Social Networking: Facebook, Instagram, Twitter (X)

  2. Video Sharing: YouTube

  3. Collaborative Platforms: Wikipedia, Google Docs

  4. Blogging & Microblogging: WordPress, Blogger, Medium

  5. Cloud-based Sharing: Dropbox, Google Drive

Cloud Computing Architecture Explained

Basic Architecture Diagram

                +-------------------------+
                |     Cloud Consumers     |
                | (Users / Client Devices)|
                +-------------------------+
                          |
                          v
                +-------------------------+
                |     Front-End Layer     |
                | (User Interface, Apps)  |
                +-------------------------+
                          |
                          v
                +-------------------------+
                |     Back-End Layer      |
                | (Servers, Storage, DB,  |
                |   Virtualization, Mgmt) |
                +-------------------------+
                          |
                          v
                +-------------------------+
                |   Cloud Infrastructure  |
                | (Data Centers, Network) |
                +-------------------------+

Explanation of Components:

  1. Front-End (Client Side):

    • The interface used by users to access cloud services.

    • Includes web browsers, mobile apps, and software clients.

  2. Back-End (Service Side):

    • The core part of cloud computing.

    • Manages applications, servers, databases, and storage.

    • Handles request processing and resource allocation.

  3. Cloud Infrastructure:

    • Physical data centers, servers, and networking that support cloud services.

  4. Cloud Delivery Models:

    • Provides services as IaaS, PaaS, or SaaS depending on user needs.

  5. Management Layer:

    • Ensures resource allocation, load balancing, security, and monitoring.

Specialized Cloud Architectures

Types of Specialized Architectures

Specialized cloud architectures are designed to optimize cloud services for specific purposes, workloads, or applications, beyond general cloud infrastructure. They improve performance, scalability, and efficiency based on the type of workload.

  1. Data-Centric Cloud:

    • Designed for storing, managing, and analyzing large volumes of data.

    • Integrates with big data tools and analytics platforms.

    • Example: Amazon Redshift, Google BigQuery.

  2. Compute-Centric Cloud:

    • Focuses on high-performance computation with powerful CPUs/GPUs.

    • Supports parallel processing and scientific or machine learning applications.

    • Example: AWS EC2 GPU instances, Azure High-Performance Computing (HPC).

  3. Storage-Centric Cloud:

    • Optimized for large-scale storage, backups, and archival.

    • Ensures high availability and redundancy.

    • Example: Amazon S3, Google Cloud Storage.

  4. Network-Centric Cloud:

    • Prioritizes fast and reliable networking with low latency.

    • Supports distributed applications, streaming, and online gaming.

    • Example: Content Delivery Networks (CDNs) like Cloudflare, Akamai.

  5. Application-Centric Cloud:

    • Provides optimized environments for specific applications.

    • Includes pre-configured runtime, libraries, and APIs for smooth operation.

    • Example: Google App Engine, Salesforce.

Layers Defining Cloud Architecture

Layers of Cloud Architecture

Cloud architecture is organized into several layers that work together to deliver cloud services efficiently:

  1. Front-End Layer (Client Layer):

    • The interface used by users to access cloud services (browsers, apps).

  2. Back-End Layer (Server Layer):

    • Consists of servers, storage, and applications that process requests.

  3. Cloud Infrastructure Layer:

    • Physical resources like data centers, networks, and hardware that support the cloud.

  4. Management Layer:

    • Handles resource allocation, monitoring, security, and load balancing.

Web 1.0 vs. Web 2.0 Comparison

FeatureWeb 1.0Web 2.0
ContentStatic, read-onlyDynamic, user-generated
InteractionMinimal, users are passiveHighly interactive, users can participate
TechnologyHTML pages, basic web formsAJAX, JavaScript, social media platforms
ExamplesEarly websites like Yahoo, GeoCitiesFacebook, YouTube, Wikipedia
FocusInformation deliveryCollaboration, sharing, community
Ownership of ContentCreated and controlled by website ownerCreated and shared by users

Conclusion: Web 1.0 was a read-only web with static content, while Web 2.0 is a read-write web, emphasizing user interaction, collaboration, and social connectivity.

Understanding Community Cloud

Definition of Community Cloud

A Community Cloud is a type of cloud computing architecture that is shared by a specific group of organizations with common concerns, such as security, compliance, policy, or industry requirements. It is designed to meet the needs of a particular community rather than the general public.


Features of Community Cloud:

  1. Shared Infrastructure:

    • Resources like servers, storage, and networks are shared among organizations in the community.

  2. Cost Sharing:

    • The cost of infrastructure, maintenance, and operations is distributed among all participants, making it more economical.

  3. Enhanced Security and Compliance:

    • Provides stricter security and compliance measures than a public cloud, tailored to community-specific regulations.

  4. Collaboration:

    • Enables organizations to work together, share data, and develop applications efficiently.


Examples of Community Cloud:

  • Government Agencies: Shared cloud for multiple government departments.

  • Healthcare Sector: Hospitals sharing a cloud to maintain patient data securely.

  • Banking Sector: Banks using a shared platform for regulatory compliance and transactions.