0% found this document useful (0 votes)
3 views

Cloud_Computing

Cloud computing is the delivery of computing services over the internet, providing scalable, flexible, and cost-efficient resources without the need for physical infrastructure. It encompasses various models including IaaS, PaaS, and SaaS, along with deployment options such as public, private, and hybrid clouds. The document outlines key characteristics, benefits, and mobility patterns associated with cloud computing, emphasizing its transformative impact on IT.

Uploaded by

avirupraytun
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
3 views

Cloud_Computing

Cloud computing is the delivery of computing services over the internet, providing scalable, flexible, and cost-efficient resources without the need for physical infrastructure. It encompasses various models including IaaS, PaaS, and SaaS, along with deployment options such as public, private, and hybrid clouds. The document outlines key characteristics, benefits, and mobility patterns associated with cloud computing, emphasizing its transformative impact on IT.

Uploaded by

avirupraytun
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 45

☁️

Cloud Computing
It is the use of remote servers on the internet to store manage
and process data rather than a local server

Syllabus

Module-1
Defining a Cloud
Cloud computing refers to the delivery of computing services
over the internet (“cloud”). These services include storage,
servers, databases, networking, software, and more, allowing
users to access and use resources on demand without requiring
physical hardware or extensive infrastructure. The cloud
provides scalability, flexibility, and cost efficiency, making
it a transformative technology in IT.

Cloud Types

Cloud Computing 1
NIST Model
The National Institute of Standards and Technology (NIST)
defines cloud computing with the following essential
characteristics:

1. On-demand self-service: Users can provision resources as


needed without human interaction.

2. Broad network access: Services are accessible from various


devices over the internet.

3. Resource pooling: Providers pool resources to serve multiple


consumers.

4. Rapid elasticity: Resources can be scaled up or down quickly.

5. Measured service: Resource usage is monitored, controlled,


and reported for transparency.

Cloud Cube Model


The Cloud Cube Model classifies cloud solutions based on four
dimensions:

1. Internal/External: Indicates whether the cloud resources are


hosted internally (private) or externally (public).

2. Proprietary/Open: Refers to whether the solution uses


proprietary technology or open standards.

3. Perimeterized/De-perimeterized: Determines if the service


resides within a secured boundary or is boundary-less.

4. Insourced/Outsourced: Differentiates between services managed


by the organization or by third parties.

Deployment Models
1. Public Cloud
Resources are owned and managed by third-party cloud
providers and shared across multiple users.

Cloud Computing 2
Example: Amazon Web Services (AWS), Microsoft Azure, Google
Cloud Platform (GCP).

2. Private Cloud
Resources are exclusively used by a single organization,
either hosted on-premises or by a third party.

Example: VMware Private Cloud, IBM Private Cloud.

3. Hybrid Cloud
Combines public and private clouds, enabling data and
applications to move between them for greater flexibility and
optimization.

Example: Microsoft Azure Hybrid Cloud, AWS Outposts.

4. Community Cloud
Shared among organizations with common objectives or
regulatory requirements.

Example: Government or healthcare sectors sharing a common


cloud infrastructure.

Service Models
1. Infrastructure as a Service (IaaS)
Provides virtualized computing resources over the internet.

Users manage OS, storage, and applications; the provider


manages infrastructure.

Example Providers: AWS EC2, Google Compute Engine, Microsoft


Azure Virtual Machines.

2. Platform as a Service (PaaS)


Offers a platform for developers to build, deploy, and manage
applications without worrying about infrastructure.

Cloud Computing 3
Example Providers: Google App Engine, Heroku, Microsoft Azure
App Service.

3. Software as a Service (SaaS)


Delivers software applications over the internet on a
subscription basis.

Example Providers: Google Workspace (Gmail, Drive, Docs),


Salesforce, Dropbox.

Cloud Reference Model


The Cloud Reference Model provides a standardized framework for
understanding cloud services and their interactions. It
typically includes the following layers:

Cloud Computing 4
1. Physical Layer: Hardware and networking.

2. Virtual Layer: Virtualization and resource pooling.

3. Service Layer: IaaS, PaaS, SaaS.

4. Application Layer: User-facing applications.

5. Management Layer: Monitoring, control, and governance.

Characteristics of Cloud Computing


1. A Shift in Paradigm
Cloud computing represents a shift from traditional on-
premises IT to a service-based model. It focuses on utility-
based resource allocation and on-demand services.

2. Key Characteristics
Scalability: Scale resources up or down based on demand.

Cost Efficiency: Pay-as-you-go pricing eliminates the need


for large capital expenses.

Flexibility: Access resources from anywhere with internet


connectivity.

Resilience: High availability and disaster recovery


capabilities.

Automation: Automated provisioning and management of


resources.

Benefits and Advantages of Cloud Computing


1. Cost Savings
Eliminates upfront hardware costs and reduces ongoing
operational expenses.

2. Scalability and Flexibility

Cloud Computing 5
Enables businesses to scale resources according to demand
without overprovisioning.

3. Accessibility
Facilitates remote work by providing access to data and
applications from anywhere.

4. Innovation
Frees up resources to focus on core business activities and
innovation.

5. Performance and Security


Offers high-performance infrastructure with robust security
measures and compliance.

6. Environmentally Friendly
Reduces energy consumption and carbon footprint through
efficient resource utilization.

By understanding the fundamentals outlined in this module,


organizations can leverage cloud computing to enhance
productivity, drive innovation, and achieve business goals.

Module-2
Infrastructure
Definition: The foundational physical and virtual resources
used to deliver cloud services.

Components:

Cloud Computing 6
Data Centers: Physical facilities with servers,
networking, and storage.

Virtualization: Software to create virtual machines and


environments.

Networking: Ensures communication between servers and


devices.

Storage Systems: Persistent data storage for applications


and users.

Example: Amazon Web Services (AWS) Elastic Compute Cloud


(EC2) provides virtual servers running on cloud
infrastructure.

Platforms
Definition: Environments that provide tools and services for
developers to build, deploy, and manage applications in the
cloud.

Purpose: Simplifies application development by offering pre-


configured tools and frameworks.

Components:

Development frameworks (e.g., Python, Node.js).

Middleware to connect applications and databases.

APIs to integrate services.

Examples:

Google App Engine: A PaaS for deploying web applications.

Microsoft Azure: Offers tools for app development and


hosting.

Cloud Computing 7
Virtual Appliances
Definition: Pre-configured virtual machines (VMs) that
include operating systems and applications designed for
specific tasks.

Features:

Portable: Can run on different virtualization platforms


(e.g., VMware, VirtualBox).

Pre-built: Saves time and effort for users.

Secure: Often hardened for specific use cases.

Examples:

A virtual appliance for WordPress that includes a web


server, database, and WordPress software.

Firewalls or network monitoring tools deployed as virtual


appliances.

Communication Protocols
Definition: Rules and standards that enable devices to
communicate within and outside the cloud.

Key Protocols:

HTTP/HTTPS: Used for web-based communication.

TCP/IP: Fundamental protocol suite for internet


communication.

RESTful APIs: Enables application interaction with cloud


services.

MQTT (Message Queuing Telemetry Transport): Lightweight


protocol for IoT devices.

Importance: Ensures secure, efficient, and reliable data


transfer between clients, servers, and applications.

Cloud Computing 8
Applications
Definition: Software programs that run on cloud platforms or
infrastructure to perform specific tasks.

Types of Applications:

Web Applications: Hosted entirely in the cloud (e.g.,


Google Docs).

Enterprise Applications: Large-scale software for


businesses (e.g., Salesforce).

Mobile Applications: Apps with cloud backends for


scalability.

Benefits:

Scalability: Can handle varying loads.

Accessibility: Available on-demand over the internet.

Updates: Centralized deployment and upgrades.

Connecting to the Cloud by Clients


Definition: The process and tools used by users (clients) to
access cloud services and resources.

Methods:

Web Browsers: Accessing web-based applications and


services.

Cloud Clients: Special software for managing or using


cloud services (e.g., AWS CLI, Google Drive Desktop App).

APIs: Allows developers to interact with cloud services


programmatically.

Devices Used:

Cloud Computing 9
PCs, tablets, smartphones, and IoT devices.

Key Concepts:

Authentication: Ensures secure access (e.g., OAuth, multi-


factor authentication).

Connectivity: Reliable internet connection is critical.

Module-3
IaaS, PaaS, SaaS, and Related Services in Detail

1. Infrastructure-as-a-Service (IaaS)
Basic Concept:

IaaS provides virtualized computing resources over the


internet, such as virtual machines, storage, and networks.

It eliminates the need for businesses to invest in and


maintain physical servers and data centers.

Examples: AWS EC2, Microsoft Azure, Google Compute Engine.

Key Features:

Scalability: Resources can be scaled up or down based on


demand.

Pay-as-you-go: Users pay only for what they use.

Flexibility: Users can configure resources to meet specific


requirements.

Workload:

A workload in IaaS refers to the applications, services, and


data processing tasks that run on virtual machines.

Common workloads include:

Cloud Computing 10
Hosting websites and applications.

Running big data processing jobs.

Supporting AI and machine learning tasks.

Partitioning of Virtual Private Server (VPS) Instances:

A VPS instance is a virtual server hosted on a physical


machine, with each instance acting as a separate server.

Partitioning:

Resources (CPU, RAM, storage) are divided among multiple


VPS instances.

Ensures isolation between instances so users have


dedicated resources.

Tools: Hypervisors like VMware ESXi, KVM, and Hyper-V are


used for partitioning.

Pods:

In containerized environments (e.g., Kubernetes), a Pod is


the smallest deployable unit.

A Pod:

Contains one or more containers that share resources such


as storage and network.

Is designed to host tightly coupled application


components.

Aggregations:

Refers to grouping multiple resources or workloads to work as


a single logical unit.

Examples:

Cluster aggregations in Kubernetes to manage Pods.

Cloud Computing 11
Load balancers aggregate multiple server instances to
handle high traffic.

Silos:

Resource silos occur when resources (compute, storage, or


network) are isolated and not shared across workloads.

IaaS minimizes silos by enabling shared pools of resources


managed via software.

2. Platform-as-a-Service (PaaS)
Basic Concept:

PaaS provides a platform that includes development tools,


middleware, and runtime environments for developers to build,
test, and deploy applications without worrying about the
underlying infrastructure.

Examples: Google App Engine, Microsoft Azure App Services,


Heroku.

Tools and Development Environment:

Tools:

Integrated Development Environments (IDEs) such as Visual


Studio and Eclipse.

Source control systems like Git.

Development Environment:

PaaS offers pre-configured environments with runtime


(e.g., Node.js, Python, Java) and databases.

Built-in scaling capabilities ensure applications perform


well under varying loads.

Benefits:

Reduces development time.

Cloud Computing 12
Simplifies deployment and management of applications.

Offers built-in support for DevOps.

3. Software-as-a-Service (SaaS)
Basic Concept:

SaaS delivers software applications over the internet as a


service. Users access these applications through a web
browser, eliminating the need for installation or
maintenance.

Examples: Google Workspace, Salesforce, Dropbox.

Characteristics:

Hosted on cloud infrastructure.

Accessed via web browsers or lightweight clients.

Subscription-based pricing.

Updates and maintenance handled by the provider.

Open SaaS and SOA:

Open SaaS:

SaaS solutions built on open-source technology.

Examples: OpenProject, Nextcloud.

Service-Oriented Architecture (SOA):

SaaS platforms often follow SOA principles, where services


are designed to be loosely coupled and interoperable.

Examples of SaaS Platforms:

CRM: Salesforce.

Collaboration: Slack, Microsoft Teams.

Storage: Google Drive, OneDrive.

Cloud Computing 13
4. Identity-as-a-Service (IDaaS)
Definition:

Provides cloud-based identity and access management (IAM)


solutions.

Handles authentication, authorization, and user management.

Examples: Okta, Azure AD, Ping Identity.

Features:

Single Sign-On (SSO): Users log in once to access multiple


applications.

Multi-Factor Authentication (MFA): Adds an extra layer of


security.

Compliance: Ensures organizations meet regulatory


requirements for identity management.

5. Compliance-as-a-Service (CaaS)
Definition:

Provides solutions to help organizations comply with


regulations and standards (e.g., GDPR, HIPAA).

Examples: OneTrust, TrustArc.

Features:

Automated compliance checks and reporting.

Policy management tools to enforce compliance across


workflows.

Security and audit logs to track compliance violations.

Summary
These cloud service models—IaaS, PaaS, SaaS, along with
specialized services like IDaaS and CaaS—offer flexible,
scalable, and efficient solutions for modern IT needs. They

Cloud Computing 14
enable businesses to focus on innovation by reducing the burden
of managing underlying infrastructure and compliance
requirements.

Module-4
Mobility Patterns
Mobility patterns describe how workloads, data, or systems move
between different environments, often used in virtualization and
cloud migration contexts.

Below are the key patterns:

Physical to Virtual (P2V):


Definition: Migrating a physical server to a virtual machine
(VM).
Use Case: Transitioning from traditional hardware to a
virtualized environment.
Example: A company moves its on-premises server to a VM hosted
on a hypervisor like VMware or Hyper-V.

Virtual to Virtual (V2V):


Definition: Migrating one virtual machine to another virtualized
environment.
Use Case: Moving VMs between different hypervisors or cloud
platforms.
Example: Migrating from VMware to AWS or Azure.

Virtual to Physical (V2P):

Cloud Computing 15
Definition: Migrating a virtual machine back to physical
hardware.
Use Case: Used in cases where a VM needs higher performance or
security provided by dedicated hardware.
Example: A VM with heavy computing needs is moved to a high-
performance server.

Physical to Physical (P2P):


Definition: Migrating workloads or data between two physical
servers.
Use Case: Hardware upgrades or replacements.
Example: Moving a database server from an older server to a new
one.

Digital to Cloud (D2C):


Definition: Migrating digital workloads, applications, or
systems to the cloud.
Use Case: Organizations adopting cloud infrastructure for
scalability.
Example: Migrating an on-premises web application to AWS or
Azure.

Cloud to Cloud (C2C):


Definition: Migrating workloads between two cloud platforms.
Use Case: Shifting workloads for cost efficiency, features, or
compliance.
Example: Moving from AWS to Google Cloud.

Cloud to Digital (C2D):

Cloud Computing 16
Definition: Migrating from a cloud environment back to an on-
premises digital environment.
Use Case: Companies seeking control over their infrastructure.
Example: Moving a hosted SaaS application to an internal server.

Digital to Digital (D2D):


Definition: Migrating workloads between two digital
environments, whether on-premises or otherwise.
Use Case: Infrastructure updates or consolidations.
Example: Moving data between two on-premises data centers.

Virtualization Technologies
Virtualization is the process of creating virtual versions of
physical resources such as servers, storage, networks, and
applications. It enables efficient resource utilization,
flexibility, and scalability. Here's an overview of the types of
virtualization:

Abstraction: - Hides the complexity of physical hardware or


software by exposing only the necessary details to users. -
Examples: APIs, virtual disks (appearing as physical disks),
and container interfaces.

Virtualization: - Refers to the process of creating a virtual


(software-based) version of hardware or resources like
servers, storage, or networks. - Key Goal: Decouple resources
from their physical hardware to improve efficiency,
scalability, and flexibility.

1. Access Virtualization

Cloud Computing 17
Definition: Provides users with virtual access to resources,
enabling them to interact with systems or applications as if
they were physically present.

Key Examples:

Remote Desktop Services (RDS): Allows users to access a


remote machine’s desktop environment.

Virtual Desktop Infrastructure (VDI): Delivers virtual


desktops to users from a centralized server.

Thin Clients: Low-power devices that rely on server-side


resources for operation.

Benefits:

Centralized management.

Access from anywhere.

Cost-effective for organizations with multiple users.

2. Application Virtualization
Definition: Runs applications in isolated environments
without needing them installed directly on the underlying
operating system.

Key Examples:

Containers (e.g., Docker, Kubernetes): Isolate


applications along with their dependencies.

ThinApp (VMware) and Microsoft App-V: Allow running apps


without installation.

How It Works:

Applications are abstracted from the underlying OS,


packaged with required files, and executed independently.

Benefits:

Simplifies app deployment and updates.

Cloud Computing 18
Eliminates compatibility issues.

Enhances security by isolating apps.

3. CPU Virtualization
Definition: Enables the sharing of a single physical CPU
among multiple virtual machines (VMs) or processes.

Key Techniques:

Hypervisor (Virtual Machine Monitor): Software layer that


enables virtualization by abstracting CPU resources.
Examples include VMware ESXi, Microsoft Hyper-V, and KVM.

Hardware-Assisted Virtualization: Features like Intel VT-x


and AMD-V improve CPU virtualization performance.

How It Works:

The hypervisor allocates virtual CPU cores to virtual


machines.

Each VM believes it has dedicated CPU resources.

Benefits:

Efficient resource utilization.

Allows running multiple OS instances on a single physical


server.

4. Storage Virtualization
Definition: Abstracts physical storage resources to appear as
a single logical storage unit.

Key Types:

Block-Level Virtualization: Virtualizes storage blocks


(e.g., SAN - Storage Area Network).

File-Level Virtualization: Virtualizes access to file


storage (e.g., NAS - Network Attached Storage).

Cloud Computing 19
How It Works:

Storage from multiple devices is pooled and presented as


unified storage to users or applications.

Virtual layers handle tasks like deduplication,


replication, and compression.

Key Examples:

VMware vSAN, Microsoft Storage Spaces, Ceph.

Benefits:

Increases storage flexibility and scalability.

Simplifies data management and backup.

Reduces downtime during maintenance.

Advantages of Virtualization Technologies


1. Resource Optimization: Maximizes hardware utilization by
dividing resources among multiple virtual entities.

2. Cost Savings: Reduces physical hardware requirements and


energy consumption.

3. Flexibility: Easily scalable to meet changing workloads.

4. Disaster Recovery: Simplifies backup and recovery processes


through replication.

5. Isolation: Enhances security by isolating environments (e.g.,


apps or VMs).

Virtualization is the foundation of modern cloud computing. It


enables resource pooling, elasticity, and the delivery of
Infrastructure as a Service (IaaS). Let me know if you’d like
more details on any specific type!

Module-5

Cloud Computing 20
1. Basic Concepts of Load Balancing
Load balancing is the process of distributing network or
application traffic across multiple servers to ensure no single
server becomes overwhelmed. It improves the availability,
reliability, and performance of services.
Key Goals:

1. Distribute Workload: Ensures even distribution of tasks to


prevent bottlenecks.

2. Failover Support: Redirects traffic if one server goes down.

3. Scalability: Supports growing traffic demands by adding more


servers.

2. Network Resources for Load Balancing


Network load balancing distributes traffic across network
resources (e.g., servers, routers). It operates at the network
layer (Layer 4 of the OSI model).
Examples:

DNS Load Balancers: Distribute requests based on DNS queries.

Content Delivery Networks (CDNs): Distribute content closer


to the user using edge servers.

Hardware Load Balancers: Devices like F5 BIG-IP or Citrix ADC


that handle heavy traffic.

3. Advanced Load Balancing


Advanced load balancing adds more intelligence to the
distribution of traffic, ensuring optimization at the
application layer (Layer 7 of the OSI model).
Components:

1. Application Delivery Controller (ADC):

Cloud Computing 21
A specialized appliance or software designed to optimize
and manage application delivery.

Features: SSL termination, caching, and content


optimization.

Example: NGINX Plus, F5 BIG-IP.

2. Application Delivery Network (ADN):

A system of services and technologies ensuring the fast,


secure, and reliable delivery of applications.

Includes ADCs, WAN optimizers, and CDNs.

Focuses on end-user performance and experience.

Example: Google Cloud Load Balancing:

Google Cloud offers fully distributed, global load-balancing


solutions.

Features:

Distributes traffic across multiple regions.

Supports HTTP(S), TCP/UDP, and SSL Proxy load balancing.

Automatically scales resources to handle traffic surges.

A hypervisor is software or firmware that allows multiple


virtual machines (VMs) to run on a single physical machine by
abstracting hardware resources.
Types of Hypervisors:

1. Type 1 (Bare-Metal):

Runs directly on the hardware without an underlying OS.

Examples: VMware ESXi, Microsoft Hyper-V, Xen.

Use Case: Enterprise data centers, cloud platforms.

2. Type 2 (Hosted):

Cloud Computing 22
Runs on top of an existing OS.

Examples: Oracle VirtualBox, VMware Workstation.

Use Case: Personal computers, development environments.

5. VMware vSphere
VMware vSphere is a comprehensive virtualization platform
offering tools to manage virtualized environments.
Components:

ESXi: A Type 1 hypervisor that virtualizes hardware


resources.

vCenter Server: Centralized management tool for vSphere


environments.

vMotion: Enables live migration of VMs without downtime.

Features:

High Availability (HA): Automatically restarts VMs if a host


fails.

Resource Management: Dynamically allocates CPU and memory


resources to VMs.

6. Machine Imaging
Machine imaging refers to creating snapshots of virtual machines
that can be reused for deployment.
Key Concept:

Virtual Machine Images: Templates that contain the OS,


applications, and configurations needed to replicate a VM.

Open Virtualization Format (OVF):

An industry-standard format for packaging and distributing


virtual appliances or VM templates.

Benefits:

Cloud Computing 23
Interoperability between platforms (e.g., VMware,
VirtualBox).

Simplifies deployment of pre-configured environments.

Summary
Load Balancing ensures traffic is evenly distributed across
resources to improve performance and reliability. Advanced
methods like ADCs and ADNs optimize application delivery.

Hypervisors enable virtualization, with Type 1 hypervisors


offering high performance for enterprises and Type 2 suitable
for development.

VMware vSphere provides a robust platform for managing


virtualized environments.

Machine Imaging, including OVF, simplifies the deployment of


consistent virtual environments.

Module-6
Porting of Applications in the Cloud
Porting applications to the cloud refers to the process of
adapting existing applications so they can run in cloud
environments. This involves making necessary changes to
application architecture, dependencies, or configurations to
take full advantage of cloud infrastructure and services.

1. The Simple Cloud API


The Simple Cloud API is a standardized programming interface
designed to simplify interaction with cloud services across
multiple providers.
Features:

Cloud Computing 24
1. Standardization:

Provides a unified way to access various cloud services


like storage, compute, and database, irrespective of the
cloud provider.

Reduces vendor lock-in.

2. Compatibility:

Works with multiple cloud platforms, such as AWS, Google


Cloud, and Microsoft Azure.

Allows developers to switch providers without rewriting


application code.

3. Use Cases:

Managing cloud-based file storage systems.

Interacting with cloud-hosted databases.

Deploying applications with minimal code changes.

Example Workflow:

A developer uses the Simple Cloud API to upload files to


cloud storage. The API ensures compatibility across providers
like AWS S3 or Google Cloud Storage.

2. AppZero Virtual Application Appliance


AppZero is a tool designed to simplify the migration of
applications to the cloud by encapsulating them in a Virtual
Application Appliance (VAA). This approach eliminates the need
to modify the application code or recompile it.
Key Concepts:

1. Virtual Application Appliance (VAA):

A self-contained package that includes an application and


all its dependencies (e.g., libraries, configuration
files) to run in a virtualized or cloud environment.

Cloud Computing 25
Decouples the application from the underlying operating
system and hardware.

2. Benefits:

Cloud Portability: Moves applications between cloud


environments or from on-premises to the cloud.

Speed: Enables faster migrations without extensive


rewrites or reconfigurations.

Minimal Downtime: Ensures the application is quickly up


and running in the new environment.

3. Use Cases:

Moving legacy applications to the cloud.

Migrating workloads between different cloud providers.

Running applications in hybrid or multi-cloud setups.

Example Workflow:

A company uses AppZero to package its legacy web application


as a VAA.

The VAA is deployed on AWS, making the app cloud-compatible


without modifying its source code.

Cloud Computing 26
Summary

Cloud Computing 27
Porting applications to the cloud involves adapting or
migrating applications for compatibility with cloud
environments.

The Simple Cloud API provides a standardized way to interact


with cloud services, simplifying development and reducing
vendor lock-in.

AppZero Virtual Application Appliance offers a streamlined


way to move applications to the cloud without code changes,
making it an effective tool for legacy application migration.

Module-7
Cloud Services and Application Development

1. Definition of Services
Cloud computing services provide scalable and flexible resources
over the internet, categorized mainly into three models:
Infrastructure as a Service (IaaS), Platform as a Service
(PaaS), and Software as a Service (SaaS).

IaaS: Provides virtualized computing resources (e.g., virtual


machines, storage, networks).

PaaS: Offers a platform with tools for developers to build


and deploy applications.

SaaS: Delivers software applications over the internet,


accessed via browsers.

2. Distinction Between SaaS and PaaS

Aspect SaaS PaaS

Software delivered as a Platform for application


Definition
service over the web. development and deployment.

Cloud Computing 28
End users or businesses
Developers building and
Target Audience needing ready-to-use
deploying applications.
software.

Limited; focuses on High; allows custom


Customization
configuration. application development.

Google App Engine, Heroku,


Gmail, Microsoft 365,
Examples Microsoft Azure App
Dropbox.
Services.

Provider manages the


Managed entirely by the
Maintenance platform; users manage
provider.
their apps.

Abstracted; users Provides access to tools


Infrastructure
interact with software and services for building
Access
only. applications.

3. Knowledge of Salesforce.com and Force.com


Salesforce.com (SaaS):

A SaaS solution providing customer relationship management


(CRM) software over the cloud.

Features:

Sales tracking, customer support, and marketing


automation.

Ready-to-use interface for end-users.

Force.com (PaaS):

A PaaS platform provided by Salesforce, enabling developers


to build custom applications.

Features:

Prebuilt components (e.g., forms, workflows, reports).

Integration with Salesforce.com for CRM-related


functionalities.

Key Difference:

Cloud Computing 29
Salesforce.com is an out-of-the-box software for CRM tasks.

Force.com is a development platform for building apps


tailored to specific business needs.

4. Application Development
Application development in the cloud involves designing, coding,
testing, and deploying applications on cloud-based platforms
like PaaS.
Key Steps:

1. Planning: Define the application's purpose, features, and


requirements.

2. Development: Write code using PaaS tools (e.g., APIs, SDKs).

3. Testing: Validate application performance in a cloud


environment.

4. Deployment: Publish the app to production using the PaaS


provider’s resources.

5. Monitoring: Use cloud-based tools to track performance and


usage.

Benefits:

Reduces development time with prebuilt components.

Scales are automatically based on demand.

5. Use of PaaS Application Frameworks


Definition:

PaaS application frameworks are prebuilt structures provided by


platforms to streamline app development, ensuring scalability
and performance.
Features:

Cloud Computing 30
Include libraries, tools, and templates for faster
development.

Enable multi-language support (e.g., Python, JavaScript,


Ruby).

Examples:

1. Google App Engine: Framework for building scalable web apps


with automatic scaling and load balancing.

2. Heroku: Simplifies deployment of apps using Git and supports


various programming languages.

3. Microsoft Azure App Services: Offers a rich environment for


building, testing, and deploying web apps.

Use Cases:

Creating mobile apps with backend services.

Building web apps with APIs and databases.

Developing custom applications for internal business needs.

Summary
SaaS and PaaS differ in their target users and level of
customization, with Salesforce.com as a SaaS and Force.com as
a PaaS example.

Application development in the cloud leverages PaaS for


rapid, scalable, and efficient app building.

PaaS application frameworks like Google App Engine and Heroku


provide tools and environments that simplify and accelerate
cloud application development.

Module-8

Cloud Computing 31
Use of Google Web Services
Google offers a robust portfolio of applications and services,
including tools for productivity, analytics, and cloud
computing. Here is an overview of its major services:

Google Applications Portfolio


1. Indexed Search:

Core to Google’s services, providing fast and


comprehensive search capabilities across the web.

Includes specialized searches like Google Scholar and


Google Images.

2. Dark Web:

Although not directly accessible, Google’s indexed search


focuses on publicly available data and does not encompass
the dark web.

Specialized tools (not Google’s) are used for dark web


access.

3. Aggregation and Disintermediation:

Google aggregates content across multiple sources,


eliminating the need for intermediaries.

Examples: Google News, and Google Flights.

4. Productivity Applications and Services:

Google Workspace: A suite of productivity tools including


Gmail, Google Drive, Docs, Sheets, Slides, and Calendar.

Promotes collaboration with real-time editing and sharing


capabilities.

5. Adwords (Google Ads):

Google’s advertising platform for pay-per-click (PPC)


marketing.

Cloud Computing 32
Provides detailed targeting and analytics to optimize
advertising campaigns.

6. Google Analytics:

A web analytics service that tracks and reports website


traffic.

Features include user behavior insights, conversion


tracking, and real-time reporting.

7. Google Translate:

Provides multilingual translation services for text,


documents, and websites.

Supports over 100 languages with machine learning-backed


accuracy.

8. Google Toolkit:

Google APIs: Enable integration with Google services like


Maps, YouTube, and Google Drive.

Google Developers Console: A hub for managing APIs, cloud


services, and developer tools.

Google App Engine


A Platform as a Service (PaaS) that allows developers to build
and deploy applications on Google’s infrastructure.

Major Features:

Automatic scaling to handle variable traffic.

Support for multiple programming languages including


Python, Java, and Go.

Integration with Google Cloud services like BigQuery and


Cloud Storage.

Use of Amazon Web Services

Cloud Computing 33
AWS offers a comprehensive suite of cloud computing services,
enabling organizations to deploy scalable and reliable
applications.

Amazon Web Service Components and Services


1. Amazon Elastic Compute Cloud (EC2):

Virtual servers for running applications.

Features include auto-scaling, load balancing, and a


variety of instance types.

2. Amazon Simple Storage Service (S3):

Object storage service for data storage and retrieval.

Designed for scalability, durability, and high


availability.

3. Amazon Elastic Block Storage (EBS):

Persistent block storage for EC2 instances.

Supports backups, encryption, and snapshots.

4. Amazon SimpleDB:

A NoSQL database for managing structured data.

Supports indexing and querying data with low latency.

5. Amazon Relational Database Service (RDS):

Managed relational database service supporting MySQL,


PostgreSQL, SQL Server, and more.

Automates tasks like backups, patching, and scaling.

Use of Microsoft Cloud Services


Microsoft Azure provides a broad array of cloud solutions,
ranging from infrastructure to applications.

Windows Azure Platform

Cloud Computing 34
1. Microsoft’s Approach:

Focuses on hybrid cloud solutions, integrating on-premises


and cloud resources.

Emphasizes developer-friendly tools and enterprise-grade


security.

2. Architecture:

Composed of compute, storage, and networking components,


designed for scalability and availability.

Supports open-source frameworks and third-party


integrations.

3. Main Elements:

Virtual Machines: Run Windows and Linux VMs on demand.

App Services: Build and host web applications and APIs.

Azure Functions: Serverless computing for event-driven


execution.

Windows Azure AppFabric


A middleware service for building scalable and reliable cloud
applications.

Features include Service Bus for messaging, Access Control


for identity management, and caching.

Content Delivery Network (CDN)


Distributes content to users globally with low latency.

Supports audio, video, images, and other large files.

SQL Azure
A managed relational database service offering high
availability and scalability.

Supports T-SQL queries, encryption, and automated patching.

Cloud Computing 35
Windows Live Services
Includes consumer-facing applications such as OneDrive,
Outlook.com, and Skype.

Provides seamless integration with the Microsoft ecosystem


and productivity tools like Microsoft Office.

Module-9
Cloud Management

1. Overview of Features of Network Management


Systems
Network management systems (NMS) are essential for managing
cloud infrastructure and ensuring performance, security, and
availability of network resources.
Key Features:

Monitoring and Alerts: Tracks performance metrics, detects


anomalies and sends alerts.

Configuration Management: Automates and tracks network


configuration changes.

Bandwidth Optimization: Monitors and optimizes network


traffic.

Fault Management: Identifies, logs, and helps resolve network


issues.

Performance Reporting: Generates reports for analysis and


capacity planning.

Examples of NMS Products:

AWS CloudWatch: Monitors AWS resources and applications.

Cloud Computing 36
Azure Monitor: Provides insights into Azure resources and
applications.

Google Cloud Operations Suite (formerly Stackdriver): Offers


monitoring, logging, and diagnostics.

2. Monitoring an Entire Cloud Computing Deployment


Stack
Monitoring ensures the performance and reliability of the entire
stack, from infrastructure to applications.
Key Levels of Monitoring:

1. Infrastructure Monitoring:

Tracks servers, storage, and networking.

Examples: AWS CloudWatch, Nagios.

2. Platform Monitoring:

Monitors the health of PaaS services.

Examples: Datadog, New Relic.

3. Application Monitoring:

Tracks application performance metrics like response time


and error rates.

Examples: AppDynamics, Dynatrace.

Example Products:

Prometheus: Open-source monitoring for time-series data.

Zabbix: Monitors servers, VMs, and networks.

3. Lifecycle Management of Cloud Services


The cloud service lifecycle consists of six stages:

1. Plan:

Define requirements and resources.

Cloud Computing 37
Example: Identifying the best cloud provider for a
specific workload.

2. Provision:

Allocate and configure resources.

Example: Deploying VMs and setting up storage.

3. Operate:

Manage and monitor deployed services.

Example: Using tools like Azure Monitor for uptime and


performance tracking.

4. Optimize:

Analyze and improve resource usage.

Example: Implementing autoscaling to reduce costs.

5. Secure:

Protect data and services from vulnerabilities.

Example: Enforcing role-based access control (RBAC).

6. Decommission:

Retire resources are no longer in use.

Example: Terminating unused EC2 instances in AWS.

4. Concepts of Cloud Security


Cloud security encompasses the practices, policies, and
technologies used to protect cloud data, applications, and
infrastructure.

Cloud Security Concerns:


1. Data Breaches: Unauthorized access to sensitive information.

2. Misconfiguration: Incorrect settings that expose resources.

Cloud Computing 38
3. Denial of Service (DoS): Attacks disrupting service
availability.

4. Shared Responsibility: Unclear boundaries between provider


and customer responsibilities.

5. Security Boundary and Security Service Boundary


1. Security Boundary:

The scope within which security is managed by the customer


or provider.

Example: In IaaS, the provider secures hardware, while the


customer secures OS and applications.

Who is responsible for what (all over)

2. Security Service Boundary:

The point where provider security services interface with


customer systems.

Example: Firewalls and identity management systems


provided by the cloud provider.

how the security services are delivered and used (specific


area)

6. Overview of Security Mapping


Involves mapping cloud services to security frameworks like
NIST, ISO 27001, or GDPR.

Helps identify compliance requirements and align cloud


resources accordingly.

7. Security of Data
1. Brokered Cloud Storage Access:

Uses a broker to manage access to cloud storage securely.

Cloud Computing 39
Example: A proxy service mediating access to S3 buckets.

2. Storage Location and Tenancy:

Location: Specifies where data is stored (regional or


multi-region).

Tenancy: Ensures data isolation in multi-tenant


environments.

3. Encryption:

Protects data at rest and in transit using algorithms like


AES-256.

Example: Encrypted S3 buckets or Azure Disk Encryption.

4. Auditing and Compliance:

Tracks access and modifications to data.

Ensures adherence to regulations like GDPR and HIPAA.

8. Identity Management
Definition: Processes and technologies for managing user
identities and access rights.

Key Standards:

SAML (Security Assertion Markup Language): For single


sign-on (SSO).

OAuth 2.0: For secure authorization without sharing


credentials.

OpenID Connect: Adds authentication to OAuth 2.0.

Example: Azure Active Directory for managing user access to


cloud resources.

Summary
Cloud management involves monitoring, securing, and optimizing
cloud services across their lifecycle. Effective tools and

Cloud Computing 40
practices ensure high availability, compliance, and data
protection, with identity management playing a central role in
secure access control.

Module-10
Service-Oriented Architecture (SOA)

1. Basic Concepts of Message-Based Transactions


Definition: In SOA, services communicate using messages
(requests and responses). These messages are often structured
in standard formats like XML or JSON.

Key Features:

Enables loose coupling between services.

Supports asynchronous communication.

Facilitates scalability and integration across systems.

Example: A client sends a message to a payment service to


process a transaction, and the service responds with success or
failure.

2. Protocol Stack for SOA Architecture


SOA uses a stack of protocols to enable communication and
integration between services:

Transport Layer: Handles data transfer. Example: HTTP, HTTPS.

Messaging Layer: Defines the message format. Example: SOAP,


REST, AMQP.

Description Layer: Describes service capabilities. Example:


WSDL for SOAP or OpenAPI for REST.

Cloud Computing 41
Discovery Layer: Finds and connects services. Example: UDDI
(Universal Description, Discovery, and Integration).

3. Event-Driven SOA
Definition: A model where services are triggered by events
(e.g., changes in data or system states).

Key Features:

Reactive and flexible.

Facilitates real-time data processing.

Example: A logistics system that updates inventory when an event


(shipment delivery) is triggered.

4. Enterprise Service Bus (ESB)


Definition: A middleware component in SOA that facilitates
communication between services.

Key Features:

Centralizes service interactions.

Transforms data formats between systems.

Ensures message routing and delivery.

Example: MuleSoft and Apache Camel are popular ESB solutions.

5. Service Catalogues
Definition: A directory listing available services, their
functionalities, and usage details.

Key Features:

Helps developers discover and integrate services.

Supports versioning and documentation.

Applications in the Cloud

Cloud Computing 42
1. Concepts of Cloud Transactions
Definition: Operations performed in the cloud that involve
service requests and responses.

Key Features:

Atomicity: Ensures all parts of a transaction succeed or


fail together.

Distributed nature: Transactions span multiple cloud


services.

Example: An e-commerce checkout process involving inventory,


payment, and shipping services.

2. Functionality Mapping
Aligning cloud services with application functionalities to
optimize performance and cost.

Example: Using AWS Lambda for compute-intensive tasks and S3


for storage.

3. Application Attributes
Scalability, portability, fault tolerance, and integration.

4. Cloud Service Attributes


Elasticity, pay-as-you-go pricing, availability, and
security.

5. System Abstraction and Cloud Bursting


System Abstraction: Hides the complexity of underlying
infrastructure from users.

Cloud Bursting: Using public cloud resources to handle


overflow from private cloud systems during peak demand.

Example: A retail website that scales to AWS during holiday


sales.

Cloud Computing 43
Applications and Cloud APIs
Definition: APIs provide programmatic access to cloud
services.

Examples:

AWS SDK for Python (Boto3) to manage AWS resources.

Google Cloud APIs for machine learning, storage, and


compute.

Cloud-Based Storage

1. Definition
Manned Storage: Managed actively by administrators (e.g., AWS
S3).

Unmanned Storage: Fully automated storage without manual


intervention (e.g., Dropbox).

2. Webmail Services
Cloud-based email systems accessible via web browsers.

Examples:

Google Gmail: Provides scalable and secure email services.

Mail2Web: Offers browser-based email access.

Windows Live Hotmail: Now part of Outlook.com.

Yahoo Mail: Provides cloud storage for email.

Concepts of Syndication Services


Definition: Services that aggregate and distribute content,
like RSS feeds or news aggregators.

Example: A cloud-based service delivering real-time blog


updates to subscribers.

Cloud Computing 44
Summary
Service-Oriented Architecture (SOA) enables modular, message-
based communication between services, supported by protocols,
ESBs, and service catalogs. Cloud applications leverage SOA
concepts with APIs, distributed transactions, and cloud
bursting. Cloud-based storage and webmail services further
simplify data management and communication.

Authentication Vs Authorization

Cloud Computing 45

You might also like