module3-cloudcomputing
module3-cloudcomputing
MODULE 3
CLOUD COMPUTING ARCHITECTURE:
Cloud Computing Architecture Overview
Cloud computing architecture consists of components and subcomponents necessary
for cloud computing, such as hardware, software, storage, network, and services. The
architecture typically involves two main components:
1. Front-end (client-side)
2. Back-end (server-side)
Both front-end and back-end are connected via a network, usually the internet. Let’s
break down the key components:
- Service Models:
- IaaS (Infrastructure as a Service): Provides virtualized computing resources over
the internet, including servers, storage, and networking (e.g., AWS EC2, Microsoft
Azure).
- PaaS (Platform as a Service): Offers hardware and software tools over the
internet. Developers use it to build, test, and deploy applications (e.g., Google App
Engine).
- SaaS (Software as a Service): Provides applications over the internet, accessible
through web browsers (e.g., Salesforce, Microsoft 365).
- Cloud Resources:
- Compute: Handles the processing of tasks (e.g., virtual machines, containers).
- Storage: Deals with data storage (e.g., block storage, object storage, databases).
- Database: Structured storage to organize, retrieve, and query data (e.g., SQL,
NoSQL databases).
- Networking: Ensures connectivity and data transmission, including load
balancers, DNS services, and content delivery networks (CDN).
3. Cloud Service Providers (CSPs)
These are companies offering cloud services and infrastructure:
- Amazon Web Services (AWS)
- Microsoft Azure
- Google Cloud Platform (GCP)
- IBM Cloud
- Oracle Cloud
4. Cloud Deployment Models
- Public Cloud: Resources are shared across multiple clients and delivered over the
internet (e.g., AWS, Azure).
- Private Cloud: Cloud infrastructure dedicated to a single organization, either on-
premises or hosted externally.
- Hybrid Cloud: A combination of public and private clouds, allowing data and
applications to be shared between them.
- Community Cloud: Shared by several organizations with common needs, such as
security or compliance.
5. Key Features of Cloud Architecture
- Scalability: The system can grow or shrink resources dynamically to handle
workloads.
- Elasticity: Resources can be scaled up or down based on demand.
- Fault Tolerance: Built-in mechanisms ensure that systems continue functioning
even when part of the infrastructure fails.
- Security: Encryption, firewalls, and other measures to protect data and
applications.
- Automation: Tools that help automate resource management, deployment, and
scaling.
6. Virtualization in Cloud Architecture
Virtualization is a core concept in cloud computing, allowing multiple virtual
instances to run on a single physical machine. It enables efficient resource allocation,
providing the foundation for cloud infrastructure by abstracting hardware and
offering virtualized resources to clients.
7. Microservices and Containers
Modern cloud architecture leverages microservices and containerization:
- Microservices: Breaking applications into smaller, independent services.
- Containers: Packaging microservices with all their dependencies (e.g., Docker,
Kubernetes).
Cloud computing architecture is a comprehensive structure that includes the front-
end user interfaces and back-end infrastructure, enabling scalable, flexible, and cost-
efficient access to resources and services over the internet. The combination of
service models, deployment models, and technologies like virtualization and
containers has made cloud architecture a critical backbone for modern IT solutions.
CLOUD REFERENCE MODEL:
The Cloud Reference Model serves as a framework for understanding cloud
architecture, services, and deployment models. It organizes cloud components into
different layers, providing a comprehensive view of the entire ecosystem.
Here’s a breakdown of the typical layers of the Cloud Reference Model:
Figure: Cloud Reference Model
1. Physical Layer
This layer includes the physical infrastructure, hardware, and network components
required for cloud services.
Data Centres : The physical facilities where the hardware is housed.
Hardware: Physical servers, storage devices, and networking equipment.
Networking: Physical connections, routers, switches, and other networking
hardware.
Energy and Cooling: Power supply, cooling systems, and facilities management.
2. Virtual Layer
This layer involves virtualization technologies that abstract physical resources into
virtualized units that can be dynamically allocated and managed.
Hypervisors: Software like VMware or Hyper-V that enables multiple virtual
machines (VMs) to run on a single physical machine.
Virtual Machines (VMs): Virtualized computing instances that are allocated based
on user demand.
Containers: Lighter-weight units of software that package code and its dependencies
(e.g., Docker, Kubernetes).
Storage Virtualization: Abstracting physical storage into pools of virtual storage.
Network Virtualization: Abstracting physical networking into virtual networks for
isolated and efficient communication.
3. Service Layer
This layer provides the actual cloud service models: IaaS, PaaS, and SaaS.
Infrastructure as a Service (IaaS):
Provides virtualized computing resources over the internet.
Users have control over the infrastructure and pay for resources used (e.g., AWS
EC2, Microsoft Azure).
Platform as a Service (PaaS):
Provides a platform allowing developers to build, test, and deploy applications
without managing the underlying infrastructure (e.g., Google App Engine, Azure
App Service).
Includes operating systems, databases, web servers, etc.
Software as a Service (SaaS):
Provides access to software applications over the internet (e.g., Salesforce, Office
365, Google Workspace).
Users interact with the software through browsers without worrying about underlying
infrastructure or platforms.
4. Application Layer
This is where cloud applications operate, and it is consumed by end-users. These
applications are accessed over the internet via web browsers or APIs.
Business Applications: Customer Relationship Management (CRM), Enterprise
Resource Planning (ERP), office suites, and other business apps.
Web Services: Services offered to users, such as online storage (Dropbox, Google
Drive) or online collaboration tools (Slack, Zoom).
APIs: Application Programming Interfaces that allow applications to communicate
and share data.
5. Security Layer
The security layer spans across all other layers, ensuring the confidentiality, integrity,
and availability of cloud resources and data.
Identity and Access Management (IAM): User authentication and authorization
mechanisms to control access.
Encryption: Data encryption at rest and in transit to protect sensitive information.
Firewalls: Network firewalls and security groups to protect cloud resources from
unauthorized access.
Monitoring and Auditing: Continuous monitoring and auditing for compliance and
threat detection.
Backup and Disaster Recovery: Ensures data redundancy and system recovery in
case of failure.
6. Management Layer
This layer provides the necessary tools for managing, orchestrating, and automating
cloud services.
Orchestration Tools: Tools like Kubernetes for automating the deployment, scaling,
and operation of containers.
Monitoring Tools: Tools for tracking the performance and health of cloud services
(e.g., CloudWatch, Datadog).
Resource Management: Tools for managing and optimizing cloud resources (e.g.,
scaling up/down, allocation, and deallocation).
Cost Management: Managing cloud service consumption, billing, and cost
optimization.
7. Connectivity Layer
This layer connects the physical cloud infrastructure to external networks and clients.
Internet: The primary network connecting end-users to cloud services.
Virtual Private Networks (VPNs): Securely connecting private networks to the
cloud.
Direct Connect: Private, high-bandwidth connections directly linking corporate data
centers to cloud providers (e.g., AWS Direct Connect, Azure ExpressRoute).