Cloud Computing
Cloud Computing
This allows for the on-demand usage of these resources without the
need to purchase, manage, and maintain them within your own physical
datacenters.
DISTRIBUTED SYSTEM MODELS AND CLOUD COMPUTING
1. Client-Server Model:
This is the most common model, where dedicated servers provide resources and
services to clients.
Clients make requests to servers, which process the requests and send back
responses.
2. Peer-to-Peer (P2P) Model:
In this decentralized model, all nodes (peers) can act as both clients and
servers.
Peers share resources and services directly with each other, without a
central server.
3. Cluster Computing Model:
This allows for the on-demand usage of these resources without the
need to purchase, manage, and maintain them within your own physical
datacenters.
KEY CHARACTERISTICS:
➢ Public
➢ Private
➢ Hybrid
➢ Community
1. PUBLIC CLOUD:
Benefits:
Cost-effective: Pay only for what you use, eliminating upfront hardware investments.
Scalable and elastic: Easily adjust resources up or down to meet changing demands.
Broadly accessible: Accessible from anywhere with an internet connection.
Drawbacks:
Security concerns: Data resides on a shared infrastructure, requiring careful security
considerations.
Vendor lock-in: Switching providers can be complex if your applications become
heavily reliant on the specific features of the platform.
Less control: Limited control over the underlying infrastructure compared to private
clouds.
2. PRIVATE CLOUD:
Benefits:
Increased security: Provides greater control and isolation of data and
applications.
Customization: Tailored to meet specific organizational needs and compliance
requirements.
Predictable performance: Dedicated resources ensure consistent performance.
Drawbacks:
Higher cost: Requires upfront investment in hardware and software, and ongoing
maintenance.
Less scalability: Scaling resources may involve acquiring additional hardware,
which can be slower than in public clouds.
Management complexity: Requires internal expertise to manage the
infrastructure.
3. HYBRID CLOUD:
Description: Combines public and private cloud resources, allowing for data and
applications to move between the two environments based on specific needs.
Benefits:
Leverages the strengths of both models: Offers scalability and cost-effectiveness of
public cloud alongside the security and control of private cloud.
Flexibility: Enables on-demand access to additional resources from the public cloud
to handle spikes in demand.
Drawbacks:
Increased complexity: Managing two separate environments adds complexity and
requires orchestration tools.
Data security considerations: Requires careful planning to ensure consistent
security across both environments.
4. COMMUNITY CLOUD:
Benefits:
Cost-effective: Lower costs compared to private clouds due to shared resources.
Specialized services: Can cater to specific needs of the member organizations.
Drawbacks:
Limited availability: Not as widely available as public clouds.
Less control: Less control over the infrastructure compared to private clouds.
CLOUD SERVICE MODELS
Cloud service models define the type and level of service offered by cloud
providers. These models determine what the provider manages and what
the responsibility of the user is, allowing you to select the most suitable
option for your specific needs.
➢ IaaS
➢ PaaS
➢ SaaS
1. INFRASTRUCTURE AS A SERVICE (IAAS):
User Responsibilities:
Users manage the operating system, applications, and data on the virtualized
resources.
They are responsible for security patching, configuration, and resource
management.
Benefits:
Highly customizable: Users have full control over the underlying infrastructure,
allowing for tailored configurations suited to specific needs.
Cost-effective: Pay only for the resources you use, eliminating upfront hardware
costs.
Scalability: Easily scale resources up or down to meet fluctuating demands.
2. PLATFORM AS A SERVICE (PAAS):
User Responsibilities:
Users focus on developing, deploying, and managing their
applications on the platform.
The provider takes care of the underlying infrastructure, operating
system, and middleware.
Benefits:
Reduced development time and complexity: Streamlines the
development process by providing pre-configured tools and services.
Faster time-to-market: Allows rapid deployment and scaling of
applications.
Managed infrastructure: Reduces the burden of managing and
maintaining the underlying infrastructure.
3. SOFTWARE AS A SERVICE (SAAS):
User Responsibilities:
Users subscribe to the service and access it through the internet, with minimal
to no configuration required.
The provider manages all aspects of the application, including infrastructure,
platform, software updates, and security.
Benefits:
Easy to use and manage: Requires minimal technical expertise, allowing rapid
adoption with low overhead.
Scalability: Automatically scales to accommodate changes in user base and
demand.
Cost-effective: Pay only for the features you use, typically on a subscription
basis.
NIST Cloud Computing Reference Architecture
➢ Stakeholder Roles
➢ Cloud Service Models and Deployment Models
➢ Security and Compliance
NIST ccra document Link
https://nvlpubs.nist.gov/nistpubs/Legacy/SP/nistspecialpublication500-292.pdf
CLOUD INFRASTRUCTURE
Core Components :
➢ Hardware
➢ Networking
➢ Storage
CORE COMPONENTS:
Servers: The workhorses, offering processing power for running applications and
storing data.
Data centers: Secure physical locations housing all hardware, ensuring optimal
environmental conditions and security.
2. Networking:
Block storage: Provides raw storage volumes functioning like virtual hard
drives for VMs.
Physical Hardware: The foundation of the compute cloud includes physical servers,
network switches, power infrastructure, etc., housed in data centers.
Frontend:
Client Interfaces: Web portals, command-line interfaces (CLIs), or APIs that give users
access to interact with the cloud.
Identity and Access Management (IAM): Systems for authentication and authorization of
users and resources within the cloud.
.
Backend:
Virtual Machines (VMs): The core unit of cloud computing, consisting of
virtualized CPUs, memory, storage (often ephemeral), and network interfaces.
Hypervisors: Software like VMware ESXi, KVM, and Hyper-V that create, run,
and manage VMs.
Elasticity: Closely related to scalability, this is the ability to adapt quickly to changes
in demand.
Resilience: Design for high availability and fault tolerance, often through redundancy,
self-healing mechanisms, and distribution across availability zones or geographic
locations.
Pay-As-You-Go Model: Users are charged for the resources they consume, minimizing
upfront investment.
ARCHITECTURAL DESIGN OF STORAGE CLOUD
➢ Block Storage: Raw storage volumes presented to VMs, like virtual hard
drives
➢ Object Storage: Storing data as objects with associated metadata for
massive scalability and easy retrieval via APIs. Ideal for unstructured data
➢ File Storage: Hierarchical storage, providing shared file systems accessible
through network protocols
❖ Data Management and Orchestration: A software layer
responsible for:
Durability: Mechanisms like replication and erasure coding ensure data integrity
and prevent loss.
Security: Data must be protected through encryption, strict access controls, and
robust security protocols.
DESIGN CHALLENGES IN CLOUD COMPUTING
Network latency: Minimizing the impact of network distance and bandwidth limitations
on application performance.
Avoiding hidden costs: Being aware of additional fees associated with data
transfer, egress charges, and API calls.
5. Manageability and monitoring:
Lack of visibility: Gaining full visibility and control over cloud resources and
activities can be challenging, especially in complex environments.
BENEFITS OF CLOUD COMPUTING: