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

UNIT 1

The document provides an overview of cloud computing, detailing its architecture, service models (SaaS, PaaS, IaaS), and the roles of various actors such as cloud consumers, providers, brokers, and auditors. It explains the components of cloud architecture, including front-end and back-end elements, and discusses distributed and cloud computing systems. Additionally, it highlights the importance of security, management, and the interaction between different stakeholders in the cloud ecosystem.

Uploaded by

batchaids
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
5 views

UNIT 1

The document provides an overview of cloud computing, detailing its architecture, service models (SaaS, PaaS, IaaS), and the roles of various actors such as cloud consumers, providers, brokers, and auditors. It explains the components of cloud architecture, including front-end and back-end elements, and discusses distributed and cloud computing systems. Additionally, it highlights the importance of security, management, and the interaction between different stakeholders in the cloud ecosystem.

Uploaded by

batchaids
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 37

CCS335 CLOUD COMPUTING LTPC 2023

UNIT I CLOUD ARCHITECTURE MODELS AND INFRASTRUCTURE 6

Cloud Architecture: System Models for Distributed and Cloud Computing – NIST Cloud
Computing Reference Architecture – Cloud deployment models – Cloud service models; Cloud
Infrastructure: Architectural Design of Compute and Storage Clouds – Design Challenge

What is Cloud Computing?

The term cloud refers to a network or the internet. It is a technology that uses remote servers
on the internet to store, manage, and access data online rather than local drives. The data can
be anything such as files, images, documents, audio, video, and more. There are the following
operations that we can do using cloud computing: o Developing new applications and services
of Storage, back up, and recovery of data o Hosting blogs and websites o Delivery of software
on demand o Analysis of data o Streaming videos and audios.

Example: AWS, Azure, Google Cloud.

Cloud Computing Architecture

As we know, cloud computing technology is used by both small and large organizations
to store the information in cloud and access it from anywhere at anytime using the internet
connection.
Cloud computing architecture is a combination of service-oriented architecture and event-
driven architecture.

Cloud computing architecture is divided into the following two parts -

o Front End
o Back End

The below diagram shows the architecture of cloud computing –

Figure 2: Cloud Computing – Everything as a Service (Sharing the Resources (Database, App
Server, API, Mobile & PC)
Front End

The front end is used by the client. It contains client-side interfaces and applications that are
required to access the cloud computing platforms. The front end includes web servers
(including Chrome, Firefox, internet explorer, etc.), thin & fat clients, tablets, and mobile
devices.

Back End

The back end is used by the service provider. It manages all the resources that are required to
provide cloud computing services. It includes a huge amount of data storage, security
mechanism, virtual machines, deploying models, servers, traffic control mechanisms, etc.

Components of Cloud Computing Architecture

There are the following components of cloud computing architecture -

1. Client Infrastructure

Client Infrastructure is a Front end component. It provides GUI (Graphical User Interface) to
interact with the cloud.

2. Application

The application may be any software or platform that a client wants to access.

3. Service

A Cloud Services manages that which type of service you access according to the client’s
requirement.

Cloud computing offers the following three type of services:

i. Software as a Service (SaaS) – It is also known as cloud application services. Mostly, SaaS
applications run directly through the web browser means we do not require to download and
install these applications. Some important example of SaaS is given below –

Example: Google Apps, Salesforce Dropbox, Slack, Hubspot, Cisco WebEx.

ii. Platform as a Service (PaaS) – It is also known as cloud platform services. It is quite
similar to SaaS, but the difference is that PaaS provides a platform for software creation, but
using SaaS, we can access software over the internet without the need of any platform.
Example: Windows Azure, Force.com, Magento Commerce Cloud, OpenShift.

iii. Infrastructure as a Service (IaaS) – It is also known as cloud infrastructure services. It


is responsible for managing applications data, middleware, and runtime environments.

Example: Amazon Web Services (AWS) EC2, Google Compute Engine (GCE), Cisco
Metapod.

4. Runtime Cloud

Runtime Cloud provides the execution and runtime environment to the virtual machines.

5. Storage

Storage is one of the most important components of cloud computing. It provides a huge
amount of storage capacity in the cloud to store and manage data.

6. Infrastructure

It provides services on the host level, application level, and network level. Cloud
infrastructure includes hardware and software components such as servers, storage, network
devices, virtualization software, and other storage resources that are needed to support the
cloud computing model.

7. Management

Management is used to manage components such as application, service, runtime cloud,


storage, infrastructure, and other security issues in the backend and establish coordination
between them.

8. Security

Security is an in-built back end component of cloud computing. It implements a security


mechanism in the back end.

9. Internet

The Internet is medium through which front end and back end can interact and communicate
with each other.
System Models for Distributed and Cloud Computing

Distributed and Cloud computing systems :

• Built over a large number of autonomous computer nodes.

• Interconnected by SANs, LANs, or WANs in a hierarchical manner.

• LAN switches connect hundreds of machines as a working cluster.

• WAN connect many local clusters to form a very large cluster of clusters.

• A massive system with millions of computers connected to edge networks can be build in this
way.

• Massive systems are considered highly scalable, and can reach web-scale
connectivity 3 physically or logically.

• Massive systems are classified into four groups:


• Clusters
• P2P networks
• Computing grids
• Internet clouds over huge data centers

• These four system classes may involve hundreds, thousands, or even millions of
computers as participating nodes.

Clusters of Cooperative Computers


• Consists of interconnected stand-alone computers which work cooperatively as a single
integrated computing resource.

Single System Image (SSI):

• An ideal cluster should merge multiple system images into a single-system image.

• A cluster operating system or some middleware is required to support SSI at various


levels, including the sharing of CPUs, memory, and I/O across all cluster nodes.

• SSI illusion created by software or hardware that presents a collection of resources


as one integrated, powerful resource.
• SSI makes the cluster appear like a single machine to the user.

• A cluster with multiple system images is nothing but a collection of independent computers.

Hardware, Software, and Middleware Support:


• Hardware:
• PCs, workstations, servers, or
• SMP
• Software:
• Special communication software such as PVM or MPI
• Network interface card in each computer node
• Most clusters run under the Linux OS.

• The computer nodes are interconnected by a high-bandwidth network (such as Gigabit


Ethernet, Myrinet, InfiniBand, etc.).

• Middleware:
• Special cluster middleware supports are needed to create SSI.

Grid Computing Infrastructures

• An infrastructure that couples computers, software/middleware, special instruments, and


people and sensors together.

• Constructed across LAN, WAN, or Internet backbone networks at a regional, national, or


global scale.

• Mainly uses workstations, servers, clusters, and supercomputers.

• Personal computers, laptops, and PDAs can be used as access devices to a grid system.

• Enterprises or organizations present grids as integrated computing resources

• Computational grid built over multiple resource sites owned by different organizations.

• The resource sites offer complementary computing resources, including workstations,


large servers, a mesh of processors, and Linux clusters to satisfy a chain of
computational needs.

• The grid is built across various IP broadband networks including LANs and WANs
already used by enterprises or organizations over the Internet.
• The grid is presented to users as an integrated resource pool

• Special instruments may be involved such as using the radio telescope in SETI@Home
search of life in the galaxy

• At the client end wired or wireless terminal devices.

• The grid integrates the computing, communication, contents, and transactions as rented
services.

• Enterprises and consumers form the user base.

• Industrial grid platform development by IBM, Microsoft, Sun, HP, Dell, Cisco

Peer-to-Peer Network Families

• The P2P architecture offers a distributed model of networked systems.

• A P2P network is client-oriented instead of server-oriented.

• P2P systems are introduced at the physical level and overlay networks at the logical level.

P2P Systems:

• Every node acts as both a client and a server, providing part of the system resources.

• Peer machines client computers connected to the Internet.

• All client machines act autonomously to join or leave the system freely.

• No master-slave relationship exists among the peers.

• No central coordination or central database is needed.

• No peer machine has a global view of the entire P2P system.

• The system is self-organizing with distributed control.

Physical Network:

• The participating peers form the physical network at any time.


• Unlike the cluster or grid, a P2P network does not use a dedicated interconnection network.

• The physical network is simply an ad hoc network formed at various Internet domains
randomly using the TCP/IP and NAI protocols

Overlay Network:

• Based on communication or file-sharing needs, the peer IDs form an overlay network
at the logical level.

• This overlay is a virtual network formed by mapping each physical machine with its ID,
logically, through a virtual mapping.

• When a new peer joins the system, its peer ID is added as a node in the overlay network
and is removed from the overlay network automatically when it leaves.

• Therefore, it is the P2P overlay network that characterizes the logical connectivity
among the peers.
• Two types of overlay networks:
• unstructured and structured

• An unstructured overlay network is characterized by a random graph.

• There is no fixed route to send messages or files among the nodes.

• Often, flooding is applied to send a query to all nodes in an unstructured overlay, thus
resulting in heavy network traffic and nondeterministic search results.

• Structured overlay networks follow certain connectivity topology and rules for
inserting and removing nodes (peer IDs) from the overlay graph.
• Routing mechanisms are developed to take advantage of the structured overlays.

Cloud Computing over the Internet

• Definition of Cloud Computing by IBM:

• A cloud is a pool of virtualized computer resources. A cloud can host a variety of


different workloads, including batch-style backend jobs and interactive and user-
facing applications
• i.e. a cloud allows workloads to be deployed and scaled out quickly through rapid
provisioning of virtual or physical machines.

• The cloud supports redundant, self-recovering, highly scalable programming models that
allow workloads to recover from many unavoidable hardware/software failures.

• Finally, the cloud system should be able to monitor resource use in real time to enable
rebalancing of allocations when needed.

CLOUD REFERENCE ARCHITECTURE

Definitions
🞂 A model of computation and data storage based on “pay as
you go” access to “unlimited” remote data center capabilities.
🞂 A cloud infrastructure provides a framework to manage scalable,
reliable, on-demand access to applications.
🞂 Cloud services provide the “invisible” backend to many of our mobile
applications.
High level of elasticity in consumption.

NIST (National Institute of Standards and Technology Background)

The goal is to accelerate the federal government’s adoption of secure and effective cloud
computing to reduce costs and improve services.

Cloud Computing Reference Architecture:

Actors in Cloud Computing


Interactions between the Actors in Cloud Computing

Example Usage Scenario 1:

🞂 A cloud consumer may request service from a cloud broker instead


of contacting a cloud provider directly.
🞂 The cloud broker may create a new service by combining
multiple services or by enhancing an existing service.

Usage Scenario- Cloud Brokers

🞂 In this example, the actual cloud providers are invisible to the cloud
consumer.
🞂 The cloud consumer interacts directly with the cloud broker.
Example Usage Scenario 2

🞂 Cloud carriers provide the connectivity and transport of cloud


services from cloud providers to cloud consumers.
🞂 A cloud provider participates in and arranges for two unique service
level agreements (SLAs), one with a cloud carrier (e.g. SLA2) and one with
a cloud consumer (e.g. SLA1).

Usage Scenario for Cloud Carriers


 A cloud provider arranges service level agreements (SLAs) with a cloud carrier.

 Request dedicated and encrypted connections to ensure the cloud services.

Example Usage Scenario 3

• For a cloud service, a cloud auditor conducts independent assessments


of the operation and security of the cloud service implementation.
• The audit may involve interactions with both the Cloud Consumer and
the Cloud Provider.
Cloud Consumer

🞂 The cloud consumer is the principal stakeholder for the cloud computing
service.
🞂 A cloud consumer represents a person or organization that
maintains a business relationship with, and uses the service from a cloud
provider.
The cloud consumer may be billed for the service provisioned, and needs to
arrange payments accordingly.

Example Services Available to a Cloud Consumer

🞂 The consumers of SaaS can be organizations that provide their


members with access to software applications, end users or software
application administrators.
🞂 SaaS consumers can be billed based on the number of end users,
the time of use, the network bandwidth consumed, the amount of data
stored or duration of stored data.

🞂 Cloud consumers of PaaScan employ the tools and execution


resources provided by cloud providers to develop, test, deploy and manage
the applications.
🞂 PaaS consumers can be application developers or application testers
who run and test applications in cloud-based environments,.
🞂 PaaS consumers can be billed according to, processing, database
storage and network resources consumed.
🞂 Consumers of IaaS have access to virtual computers, network-
accessible storage & network infrastructure components.
🞂 The consumers of IaaS can be system developers, system
administrators and IT managers.
🞂 IaaS consumers are billed according to the amount or duration
of the resources consumed, such as CPU hours used by virtual computers,
volume and duration of data stored.

Cloud Provider

🞂 A cloud provider is a person, an organization;


🞂 It is the entity responsible for making a service available to interested
parties.
🞂 A Cloud Provider acquires and manages the computing
infrastructure required for providing the services.
🞂 Runs the cloud software that provides the services.
Makes arrangement to deliver the cloud services to the Cloud Consumers
through network access.
Cloud Provider - Major Activities

Cloud Auditor

🞂 A cloud auditor is a party that can perform an independent


examination of cloud service controls.
🞂 Audits are performed to verify conformance to standards through
review of objective evidence.
🞂 A cloud auditor can evaluate the services provided by a cloud
provider in terms of security controls, privacy impact, performance, etc.

Cloud Broker

🞂 Integration of cloud services can be too complex for cloud consumers to


manage.
🞂 A cloud consumer may request cloud services from a
cloud broker, instead of contacting a cloud provider directly.
🞂 A cloud broker is an entity that manages the use,
performance and delivery of cloud services. Negotiates relationships
between cloud providers and cloud consumers.

Services of cloud broker


Service Intermediation:

🞂 A cloud broker enhances a given service by improving some


specific capability and providing value-added services to cloud consumers.
Service Aggregation:
🞂 A cloud broker combines and integrates multiple services
into one or more new services.
🞂 The broker provides data integration and ensures the secure data
movement between the cloud consumer and multiple cloud providers.

Services of cloud broker


Service Arbitrage:
🞂 Service arbitrage is similar to service aggregation except that the
services being aggregated are not fixed.
🞂 Service arbitrage means a broker has the flexibility to choose
services from multiple agencies.
Eg: The cloud broker can use a credit-scoring service to measure and select an
agency with the best score.

Cloud Carrier

🞂 A cloud carrier acts as an intermediary that provides connectivity


and transport of cloud services between cloud consumers and cloud
providers.
🞂 Cloud carriers provide access to consumers through network.
🞂 The distribution of cloud services is normally
provided by network and telecommunication carriers or a
transport agent
🞂 A transport agent refers to a business organization that provides
physical transport of storage media such as high-capacity hard drives and
other access devices.
Scope of Control between Provider and Consumer

The Cloud Provider and Cloud Consumer share the control of resources in a cloud system

🞂 The application layer includes software applications targeted


at end users or programs.
The applications are used by SaaS consumers, or installed/managed/maintained by
PaaS consumers, IaaS consumers and SaaS providers.

🞂 The middleware layer provides software building blocks (e.g.,


libraries, database, and Java virtual machine) for developing application
software in the cloud.
🞂 Used by PaaS consumers, installed/ managed/ maintained by IaaS
consumers or PaaS providers, and hidden from SaaS consumers.
🞂 The OS layer includes operating system and drivers, and is
hidden from SaaS consumers and PaaS consumers.
🞂 An IaaS cloud allows one or multiple guest OS to run
virtualized on a single physical host.
The IaaS consumers should assume full responsibility for the guest OS, while
the IaaS provider controls the host OS.
Cloud Deployment Models

In cloud computing, we have access to a shared pool of computer resources (servers, storage,
programs, and so on) in the cloud. You simply need to request additional resources when you require
them. Getting resources up and running quickly is a breeze thanks to the clouds. It is possible to
release resources that are no longer necessary. This method allows you to just pay for what you use.
Your cloud provider is in charge of all upkeep.
What is a Cloud Deployment Model?
Cloud Deployment Model functions as a virtual computing environment with a deployment
architecture that varies depending on the amount of data you want to store and who has access to the
infrastructure.
Types of Cloud Computing Deployment Models
The cloud deployment model identifies the specific type of cloud environment based on ownership,
scale, and access, as well as the cloud’s nature and purpose. The location of the servers you’re
utilizing and who controls them are defined by a cloud deployment model. It specifies how your
cloud infrastructure will look, what you can change, and whether you will be given services or will
have to create everything yourself. Relationships between the infrastructure and your users are also
defined by cloud deployment types. Different types of cloud computing deployment models are
described below.
 Public Cloud
 Private Cloud
 Hybrid Cloud
 Community Cloud
 Multi-Cloud

Public Cloud
The public cloud makes it possible for anybody to access systems and services. The public cloud
may be less secure as it is open to everyone. The public cloud is one in which cloud infrastructure
services are provided over the internet to the general people or major industry groups. The
infrastructure in this cloud model is owned by the entity that delivers the cloud services, not by the
consumer. It is a type of cloud hosting that allows customers and users to easily access systems and
services. This form of cloud computing is an excellent example of cloud hosting, in which service
providers supply services to a variety of customers. In this arrangement, storage backup and retrieval
services are given for free, as a subscription, or on a per-user basis. For example, Google App Engine
etc.
Public Cloud

Advantages of the Public Cloud Model


 Minimal Investment: Because it is a pay-per-use service, there is no substantial
upfront fee, making it excellent for enterprises that require immediate access to
resources.
 No setup cost: The entire infrastructure is fully subsidized by the cloud service
providers, thus there is no need to set up any hardware.
 Infrastructure Management is not required: Using the public cloud does not
necessitate infrastructure management.
 No maintenance: The maintenance work is done by the service provider (not
users).
 Dynamic Scalability: To fulfill your company’s needs, on-demand resources are
accessible.
Disadvantages of the Public Cloud Model
 Less secure: Public cloud is less secure as resources are public so there is no
guarantee of high-level security.
 Low customization: It is accessed by many public so it can’t be customized
according to personal requirements.

Private Cloud
The private cloud deployment model is the exact opposite of the public cloud deployment model.
It’s a one-on-one environment for a single user (customer). There is no need to share your hardware
with anyone else. The distinction between private and public clouds is in how you handle all of the
hardware. It is also called the “internal cloud” & it refers to the ability to access systems and services
within a given border or organization. The cloud platform is implemented in a cloud-based secure
environment that is protected by powerful firewalls and under the supervision of an organization’s
IT department. The private cloud gives greater flexibility of control over cloud resources.
Private Cloud

Advantages of the Private Cloud Model


 Better Control: You are the sole owner of the property. You gain complete
command over service integration, IT operations, policies, and user behavior.
 Data Security and Privacy: It’s suitable for storing corporate information to which
only authorized staff have access. By segmenting resources within the same
infrastructure, improved access and security can be achieved.
 Supports Legacy Systems: This approach is designed to work with legacy systems
that are unable to access the public cloud.
 Customization: Unlike a public cloud deployment, a private cloud allows a
company to tailor its solution to meet its specific needs.
Disadvantages of the Private Cloud Model
 Less scalable: Private clouds are scaled within a certain range as there is less
number of clients.
 Costly: Private clouds are more costly as they provide personalized facilities.

Hybrid Cloud
By bridging the public and private worlds with a layer of proprietary software, hybrid cloud
computing gives the best of both worlds. With a hybrid solution, you may host the app in a safe
environment while taking advantage of the public cloud’s cost savings. Organizations can move data
and applications between different clouds using a combination of two or more cloud deployment
methods, depending on their needs.
Hybrid Cloud

Advantages of the Hybrid Cloud Model


 Flexibility and control: Businesses with more flexibility can design personalized
solutions that meet their particular needs.
 Cost: Because public clouds provide scalability, you’ll only be responsible for
paying for the extra capacity if you require it.
 Security: Because data is properly separated, the chances of data theft by attackers
are considerably reduced.
Disadvantages of the Hybrid Cloud Model
 Difficult to manage: Hybrid clouds are difficult to manage as it is a combination
of both public and private cloud. So, it is complex.
 Slow data transmission: Data transmission in the hybrid cloud takes place through
the public cloud so latency occurs.

Community Cloud
It allows systems and services to be accessible by a group of organizations. It is a distributed system
that is created by integrating the services of different clouds to address the specific needs of a
community, industry, or business. The infrastructure of the community could be shared between the
organization which has shared concerns or tasks. It is generally managed by a third party or by the
combination of one or more organizations in the community.
Community Cloud
Advantages of the Community Cloud Model
 Cost Effective: It is cost-effective because the cloud is shared by multiple
organizations or communities.
 Security: Community cloud provides better security.
 Shared resources: It allows you to share resources, infrastructure, etc. with
multiple organizations.
 Collaboration and data sharing: It is suitable for both collaboration and data
sharing.
Disadvantages of the Community Cloud Model
 Limited Scalability: Community cloud is relatively less scalable as many
organizations share the same resources according to their collaborative interests.
 Rigid in customization: As the data and resources are shared among different
organizations according to their mutual interests if an organization wants some
changes according to their needs they cannot do so because it will have an impact
on other organizations.

Multi-Cloud
We’re talking about employing multiple cloud providers at the same time under this paradigm, as
the name implies. It’s similar to the hybrid cloud deployment approach, which combines public and
private cloud resources. Instead of merging private and public clouds, multi-cloud uses many public
clouds. Although public cloud providers provide numerous tools to improve the reliability of their
services, mishaps still occur. It’s quite rare that two distinct clouds would have an incident at the
same moment. As a result, multi-cloud deployment improves the high availability of your services
even more.
Multi-Cloud
Advantages of the Multi-Cloud Model
 You can mix and match the best features of each cloud provider’s services to suit
the demands of your apps, workloads, and business by choosing different cloud
providers.
 Reduced Latency: To reduce latency and improve user experience, you can choose
cloud regions and zones that are close to your clients.
 High availability of service: It’s quite rare that two distinct clouds would have an
incident at the same moment. So, the multi-cloud deployment improves the high
availability of your services.
Disadvantages of the Multi-Cloud Model
 Complex: The combination of many clouds makes the system complex and
bottlenecks may occur.
 Security issue: Due to the complex structure, there may be loopholes to which a
hacker can take advantage hence, makes the data insecure.
Cloud Service Models
Cloud Computing can be defined as the practice of using a network of remote servers hosted on the
Internet to store, manage, and process data, rather than a local server or a personal computer.
Companies offering such kinds of cloud computing services are called cloud providers and
typically charge for cloud computing services based on usage. Grids and clusters are the
foundations for cloud computing.
Types of Cloud Computing
Most cloud computing services fall into five broad categories:
1. Software as a service (SaaS)
2. Platform as a service (PaaS)
3. Infrastructure as a service (IaaS)
4. Anything/Everything as a service (XaaS)

These are sometimes called the cloud computing stack because they are built on top of one
another. Knowing what they are and how they are different, makes it easier to accomplish your
goals. These abstraction layers can also be viewed as a layered architecture where services of a
higher layer can be composed of services of the underlying layer i.e, SaaS can provide
Infrastructure.

Software as a Service(SaaS)

Software-as-a-Service (SaaS) is a way of delivering services and applications over the Internet.
Instead of installing and maintaining software, we simply access it via the Internet, freeing
ourselves from the complex software and hardware management. It removes the need to install and
run applications on our own computers or in the data centers eliminating the expenses of hardware
as well as software maintenance.
SaaS provides a complete software solution that you purchase on a pay-as-you-go basis from a
cloud service provider. Most SaaS applications can be run directly from a web browser without
any downloads or installations required. The SaaS applications are sometimes called Web-based
software, on-demand software, or hosted software.

Advantages of SaaS
1. Cost-Effective: Pay only for what you use.
2. Reduced time: Users can run most SaaS apps directly from their web browser without
needing to download and install any software. This reduces the time spent in installation
and configuration and can reduce the issues that can get in the way of the software
deployment.
3. Accessibility: We can Access app data from anywhere.
4. Automatic updates: Rather than purchasing new software, customers rely on a SaaS
provider to automatically perform the updates.
5. Scalability: It allows the users to access the services and features on-demand.
The various companies providing Software as a service are Cloud9 Analytics, Salesforce.com,
Cloud Switch, Microsoft Office 365, Big Commerce, Eloqua, dropBox, and Cloud Tran.
Disadvantages of Saas :
1. Limited customization: SaaS solutions are typically not as customizable as on-premises
software, meaning that users may have to work within the constraints of the SaaS
provider’s platform and may not be able to tailor the software to their specific needs.
2. Dependence on internet connectivity: SaaS solutions are typically cloud-based, which
means that they require a stable internet connection to function properly. This can be
problematic for users in areas with poor connectivity or for those who need to access the
software in offline environments.
3. Security concerns: SaaS providers are responsible for maintaining the security of the
data stored on their servers, but there is still a risk of data breaches or other security
incidents.
4. Limited control over data: SaaS providers may have access to a user’s data, which can
be a concern for organizations that need to maintain strict control over their data for
regulatory or other reasons.

Platform as a Service

PaaS is a category of cloud computing that provides a platform and environment to allow
developers to build applications and services over the internet. PaaS services are hosted in the
cloud and accessed by users simply via their web browser.
A PaaS provider hosts the hardware and software on its own infrastructure. As a result, PaaS frees
users from having to install in-house hardware and software to develop or run a new application.
Thus, the development and deployment of the application take place independent of the
hardware.
The consumer does not manage or control the underlying cloud infrastructure including network,
servers, operating systems, or storage, but has control over the deployed applications and possibly
configuration settings for the application-hosting environment. To make it simple, take the
example of an annual day function, you will have two options either to create a venue or to rent a
venue but the function is the same.

Advantages of PaaS:
1. Simple and convenient for users: It provides much of the infrastructure and other IT
services, which users can access anywhere via a web browser.
2. Cost-Effective: It charges for the services provided on a per-use basis thus eliminating
the expenses one may have for on-premises hardware and software.
3. Efficiently managing the lifecycle: It is designed to support the complete web
application lifecycle: building, testing, deploying, managing, and updating.
4. Efficiency: It allows for higher-level programming with reduced complexity thus, the
overall development of the application can be more effective.
The various companies providing Platform as a service are Amazon Web services Elastic
Beanstalk, Salesforce, Windows Azure, Google App Engine, cloud Bees and IBM smart cloud.
Disadvantages of Paas:
1. Limited control over infrastructure: PaaS providers typically manage the underlying
infrastructure and take care of maintenance and updates, but this can also mean that
users have less control over the environment and may not be able to make certain
customizations.
2. Dependence on the provider: Users are dependent on the PaaS provider for the
availability, scalability, and reliability of the platform, which can be a risk if the provider
experiences outages or other issues.
3. Limited flexibility: PaaS solutions may not be able to accommodate certain types of
workloads or applications, which can limit the value of the solution for certain
organizations.

Infrastructure as a Service

Infrastructure as a service (IaaS) is a service model that delivers computer infrastructure on an


outsourced basis to support various operations. Typically IaaS is a service where infrastructure is
provided as outsourcing to enterprises such as networking equipment, devices, database, and web
servers.
It is also known as Hardware as a Service (HaaS). IaaS customers pay on a per-user basis,
typically by the hour, week, or month. Some providers also charge customers based on the amount
of virtual machine space they use.
It simply provides the underlying operating systems, security, networking, and servers for
developing such applications, and services, and deploying development tools, databases, etc.

Advantages of IaaS:
1. Cost-Effective: Eliminates capital expense and reduces ongoing cost and IaaS
customers pay on a per-user basis, typically by the hour, week, or month.
2. Website hosting: Running websites using IaaS can be less expensive than traditional
web hosting.
3. Security: The IaaS Cloud Provider may provide better security than your existing
software.
4. Maintenance: There is no need to manage the underlying data center or the introduction
of new releases of the development or underlying software. This is all handled by the
IaaS Cloud Provider.
The various companies providing Infrastructure as a service are Amazon web services, Bluestack,
IBM, Openstack, Rackspace, and Vmware.
Disadvantages of laaS :
1. Limited control over infrastructure: IaaS providers typically manage the underlying
infrastructure and take care of maintenance and updates, but this can also mean that
users have less control over the environment and may not be able to make certain
customizations.
2. Security concerns: Users are responsible for securing their own data and applications,
which can be a significant undertaking.
3. Limited access: Cloud computing may not be accessible in certain regions and countries
due to legal policies.

Anything as a Service

It is also known as Everything as a Service. Most of the cloud service providers nowadays offer
anything as a service that is a compilation of all of the above services including some additional
services.
Advantages of XaaS:
1. Scalability: XaaS solutions can be easily scaled up or down to meet the changing needs
of an organization.
2. Flexibility: XaaS solutions can be used to provide a wide range of services, such as
storage, databases, networking, and software, which can be customized to meet the
specific needs of an organization.
3. Cost-effectiveness: XaaS solutions can be more cost-effective than traditional on-
premises solutions, as organizations only pay for the services.
Disadvantages of XaaS:
1. Dependence on the provider: Users are dependent on the XaaS provider for the
availability, scalability, and reliability of the service, which can be a risk if the provider
experiences outages or other issues.
2. Limited flexibility: XaaS solutions may not be able to accommodate certain types of
workloads or applications, which can limit the value of the solution for certain
organizations.
3. Limited integration: XaaS solutions may not be able to integrate with existing systems
and data sources, which can limit the value of the solution for certain organizations.
lOMoARcPSD|17242252

Cloud Computing – Services


 Software as a Service - SaaS
 Platform as a Service - PaaS
 Infrastructure as a Service - IaaS

Category Description Product Type Vendors


and
Products
PaaS-I Execution platform is Middleware + Force.com,
provided along with Longjump
hardware resources Infrastructure
(infrastructure)
PaaS -II Execution platform is Middleware + Google App
provided with additional Infrastructure, Engine
components
Middleware

PaaS- III Runtime environment for Middleware + Microsoft Azure


developing any kind of Infrastructure,
application development
Middleware
lOMoARcPSD|17242252

CLOUD INFRASTRUCTURE: ARCHITECTURAL DESIGN OF COMPUTE AND


STORAGE CLOUDS

LAYERED ARCHITECTURE:

Generic Cloud Architecture Design:


An Internet cloud is envisioned as a public cluster of servers provisioned on demand to
perform collective web services or distributed applications using data-center resources.
 Cloud Platform Design Goals
 Enabling Technologies for Clouds
 A Generic Cloud Architecture

Cloud Platform Design Goals


🞂 Scalability
🞂 Virtualization
🞂 Efficiency
🞂 Reliability
🞂 Security
Cloud management receives the user request and finds the correct resources. Cloud calls
the provisioning services which invoke the resources in the cloud. Cloud management
software needs to support both physical and virtual machines

Enabling Technologies for Clouds


🞂 Cloud users are able to demand more capacity at peak demand,
reduce costs, experiment with new services, and remove unneeded capacity.
🞂 Service providers can increase system utilization via multiplexing,
virtualization and dynamic resource provisioning.
🞂 Clouds are enabled by the progress in hardware, software and
networking technologies
🞂 Cloud users are able to demand more capacity at peak demand,
reduce costs, experiment with new services, and remove unneeded capacity.
🞂 Service providers can increase system utilization via multiplexing,
virtualization and dynamic resource provisioning.
🞂 Clouds are enabled by the progress in hardware, software and
networking technologies
lOMoARcPSD|17242252

A Generic Cloud Architecture


🞂 The Internet cloud is envisioned as a massive cluster of servers.
🞂 Servers are provisioned on demand to perform collective web services
using data- center resources.
🞂 The cloud platform is formed dynamically by provisioning or deprovisioning
servers, software, and database resources.
🞂 Servers in the cloud can be physical machines or VMs.
🞂 User interfaces are applied to request services.
lOMoARcPSD|17242252

🞂 The cloud computing resources are built into the data centers.
🞂 Data centers are typically owned and operated by a third-party
provider. Consumers do not need to know the underlying technologies
🞂 In a cloud, software becomes a service.
🞂 Cloud demands a high degree of trust of massive amounts of data retrieved
from large data centers.
🞂 The software infrastructure of a cloud platform must handle all resource
management and maintenance automatically.
🞂 Software must detect the status of each node server joining and leaving.
🞂 Cloud computing providers such as Google and Microsoft, have built a large
number of data centers.
🞂 Each data center may have thousands of servers.
🞂 The location of the data center is chosen to reduce power and cooling costs.

Layered Cloud Architectural Development

🞂 The architecture of a cloud is developed at three layers


🞄 Infrastructure
🞄 Platform
🞄 Application

🞂 Implemented with virtualization and standardization of hardware and


software resources provisioned in the cloud.
The services to public, private and hybrid clouds are conveyed to users through networking support.
lOMoARcPSD|17242252

Infrastructure Layer

🞂 Foundation for building the platform layer.


🞂 Built with virtualized compute, storage, and network resources.
🞂 Provide the flexibility demanded by users.
🞂 Virtualization realizes automated provisioning of resources and
optimizes the infrastructure management process.

Platform Layer

🞂 Foundation for implementing the application layer for SaaS applications.


🞂 Used for general-purpose and repeated usage of the collection of software resources.
🞂 Provides users with an environment to develop their applications, to test
operation flows, and to monitor execution results and performance.
The platform should be able to assure users that they have scalability, dependability, and
security protection

Application Layer

🞂 Collection of all needed software modules for SaaS applications.


🞂 Service applications in this layer include daily office management work,
such as information retrieval, document processing, and authentication services.
🞂 The application layer is also heavily used by enterprises in business
marketing and sales, consumer relationship management (CRM) and financial
transactions.
🞂 Not all cloud services are restricted to a single layer.
🞂 Many applications may apply resources at mixed layers.
🞂 Three layers are built from the bottom up with a dependence relationship.

Market-Oriented Cloud Architecture


🞂 High-level architecture for supporting market-oriented resource allocation in a
cloud computing environment.
🞂 Users or brokers acting on user’s behalf submit service requests to the data center.
🞂 When a service request is first submitted, the service request examiner
interprets the submitted request for QoS requirements.
Accept or Reject the request.
lOMoARcPSD|17242252

🞂 VM Monitor: Latest status information regarding resource availability.


🞂 Service Request Monitor: Latest status information workload processing
🞂 Pricing mechanism:Decides how service requests are charged.
🞂 Accounting mechanism:Maintains the actual usage of resources by
requests to compute the final cost.
🞂 VM Monitor mechanism keeps track of the availability of VMs and their
resource entitlements.
🞂 Dispatcher starts the execution of accepted service requests on allocated VMs.
Service Request Monitor mechanism keeps track of the execution progress of service
requests.
Multiple VMs can be started and stopped on demand
Quality of Service Factors

QoS parameters

🞂 Time
🞂 Cost
🞂 Reliability
🞂 Trust/security
QoS requirements cannot be static and may change over time.
lOMoARcPSD|17242252

Architectural Design Challenges


Challenge 1 : Service Availability and Data Lock-in
Problem Service Availability

Service Availability in Cloud might be affected


because of Single Point Failure
Distributed Denial of Service
Single Point Failure
o Depending on single service provider might result in failure.
o In case of single service providers, even if company has multiple

data centres located in different geographic regions, it may have


common software infrastructure and accounting systems.
Solution:
o Multiple cloud providers may provide more protection from failures and they

provide High Availability(HA)


o Multiple cloud Providers will rescue the loss of all data.

Distributed Denial of service (DDoS) attacks.

o Cyber criminals, attack target websites and online services and makes

services unavailable to users.


o DDoS tries to overwhelm (disturb) the services unavailable to user by having

more traffic than the server or network can accommodate.

Solution:
o Some SaaS providers provide the opportunity to defend against DDoS

attacks by using quick scale-ups.


Customers cannot easily extract their data and programs from one site to run on
another. Solution:
o Have standardization among service providers so that customers can

deploy (install) services and data across multiple cloud providers.


lOMoARcPSD|17242252

Data Lock-in

It is a situation in which a customer using service of a provider cannot be


moved to another service provider because technologies used by a provider will
be incompatible with other providers.
This makes a customer dependent on a vendor for services and makes
customer unable to use service of another vendor.
Solution:
o Have standardization (in technologies) among service providers so that

customers can easily move from a service provider to another.

Challenge 2: Data Privacy and Security Concerns

Cloud services are prone to attacks because they are accessed through internet.
Security is given by
o Storing the encrypted data in to cloud.
o Firewalls, filters.
Cloud environment attacks include
o Guest hopping
o Hijacking
o VM rootkits.
Guest Hopping: Virtual machine hyper jumping (VM jumping) is an attack
method that exploits(make use of) hypervisor’s weakness that allows a virtual
machine (VM) to be accessed from another.
Hijacking: Hijacking is a type of network security attack in which the
attacker takes control of a communication

VM Rootkit: is a collection of malicious (harmful) computer software, designed


to enable access to a computer that is not otherwise allowed.
A man-in-the-middle (MITM) attack is a form of eavesdroppping(Spy)
where communication between two users is monitored and modified by an
unauthorized party.
o Man-in-the-middle attack may take place during VM migrations [virtual machine

(VM) migration - VM is moved from one physical host to another host].


lOMoARcPSD|17242252

Passive attacks steal sensitive data or passwords.


Active attacks may manipulate (control) kernel data structures which will
cause major damage to cloud servers.

Challenge 3: Unpredictable Performance and Bottlenecks

Multiple VMs can share CPUs and main memory in cloud computing, but I/O
sharing is problematic.
Internet applications continue to become more data-intensive (handles huge
amount of data).
Handling huge amount of data (data intensive) is a bottleneck in cloud environment.
Weak Servers that does not provide data transfers properly must be removed
from cloud environment

Challenge 4: Distributed Storage and Widespread Software Bugs

The database is always growing in cloud applications.


There is a need to create a storage system that meets this growth.
This demands the design of efficient distributed SANs (Storage Area Network
of Storage devices).
Data centres must meet
o Scalability
o Data durability
o HA(High Availability)
o Data consistence
Bug refers to errors in software.
Debugging must be done in data
centres.
lOMoARcPSD|17242252

Challenge 5: Cloud Scalability, Interoperability and


Standardization Cloud Scalability

Cloud resources are scalable. Cost increases when storage and


network bandwidth scaled(increased)

Interoperability

Open Virtualization Format (OVF) describes an open, secure,


portable, efficient, and extensible format for the packaging and
distribution of VMs.
OVF defines a transport mechanism for VM, that can be applied
to different virtualization platforms

Standardization

Cloud standardization, should have ability for virtual machine to


run on any virtual platform.

Challenge 6: Software Licensing and Reputation Sharing

Cloud providers can use both pay-for-use and bulk-use licensing


schemes to widen the business coverage.
Cloud providers must create reputation-guarding services similar to the
“trusted e-mail”
services
Cloud providers want legal liability to remain with the customer, and
vice versa.

You might also like