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

Cloud Computing Unit2

Cloud computing architecture can be described as a stack consisting of various layers. At the base is infrastructure as a service (IaaS), which provides fundamental computing resources. Above IaaS is the platform as a service (PaaS) layer, which offers development and deployment environments for applications. At the top level is software as a service (SaaS), which provides users access to applications from any device. Key components of the cloud computing architecture include front-end interfaces, back-end platforms, delivery systems, networking, storage, security measures, and management functions.

Uploaded by

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

Cloud Computing Unit2

Cloud computing architecture can be described as a stack consisting of various layers. At the base is infrastructure as a service (IaaS), which provides fundamental computing resources. Above IaaS is the platform as a service (PaaS) layer, which offers development and deployment environments for applications. At the top level is software as a service (SaaS), which provides users access to applications from any device. Key components of the cloud computing architecture include front-end interfaces, back-end platforms, delivery systems, networking, storage, security measures, and management functions.

Uploaded by

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

CLOUD COMPUTING ARCHITECTURE / STACK

Cloud computing architecture refers to the components and subcomponents required


for cloud computing. These components typically consist of a front end platform, back end
platforms, a cloud based delivery, and a network, which combine to make up cloud
computing architecture.

Cloud computing architecture is a combination of both SOA (Service Oriented


Architecture) and EDA (Event Driven Architecture), and is divided into the following two
parts -
Front End
Frontend of the cloud architecture refers to the client side of cloud computing system.
Means it contains all the user interfaces and applications which are used by the client to
access the cloud computing services/resources, like web servers (including Chrome, Firefox,
internet explorer, etc.), thin & fat clients, tablets, and mobile devices.
Back End
he 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:
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 examples of SaaS are 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.

CLOUD COMPUTING STACK


Cloud computing can be described as a stack that is formed by layers. It typically
encompasses many different types of services which have been built on top of each other
under a “cloud”. Those layers will be built using cloud computing services, servers, and
components, which can leverage several different clouds forming a single application stack.
The network stability and scalability of the stack will determine its resilience and high
availability.
The green squares in the diagram represent cloud services that form the application stack.
The security layer must expand across the communication and activity of all the
components, validating and securing the network to trusted parties.
Infrastructure as a Service
Infrastructure as a service (IaaS) delivers cloud computing infrastructure—servers, storage,
network, and operating systems as an on-demand service. Rather than purchasing servers,
software, data-center space, or network equipment, clients instead buy those resources as a
fully outsourced on-demand service.
The following core characteristics describe IaaS:
o Resources distributed as a service
o Allows for dynamic scaling
o Has a variable cost, utility pricing model
o Allows for multiple users on a single piece of hardware
Platform as a Service
PaaS is defined as a computing platform that enables the quick and easy creation of web
applications without the necessity of buying and maintaining the software and
infrastructure underneath it. It is a platform for the creation of software delivered over the
web.
Following are some basic characteristics of PaaS:
o Services to develop, test, deploy, host, and support applications in the same
integrated development environment—all the various services needed to fulfill the
app development process.
o Web-based user interface (UI) creation tools used to create, change, test, and deploy
different UI scenarios.
o Multi-tenant architecture in which many concurrent users use the same development
app.
o Built-in scalability of deployed software, including load balancing and failover.
o Integration with web services and databases via common standards.
o Support for development team collaboration. Some PaaS solutions include project
planning and communication tools to support development team collaboration.
o Tools to handle billing and subscription management.
Software as a Service
Software as a service (SaaS) is software deployed over the Internet. A provider licenses a
SaaS app to customers as an on-demand service, either through a subscription or through a
pay-as-you-go model. SaaS can be offered at no charge when there is an opportunity to
generate revenue from streams other than the user, such as from advertisement.
SaaS has become commonplace within most organizations, so it’s important that buyers and
users of technology understand what SaaS is and where it’s suitable.
Following are some defining characteristics of SaaS:
o Web access to commercial software
o Software managed from a central location
o Software delivered in a “one to many” model
o Users not required to handle software upgrades and patches
o Application Programming Interfaces (APIs) makes integration between different
pieces of software possible
DIFFERENCE BETWEEN CLOUD COMPUTING AND
TRADITIONAL COMPUTING
Cloud Computing :
Cloud Computing, as name suggests, is collective combination of configurable system
resources and advanced service that can be delivered quickly using internet. It simply
provides lower power expenses, no capital costs, no redundancy, lower employee costs,
increased collaboration, etc. It makes us more efficient, more secure, and provide greater
flexibility.

Traditional Computing :
Traditional Computing, as name suggests, is a possess of using physical data centers for
storing digital assets and running complete networking system for daily operations. In this,
access to data, or software, or storage by users is limited to device or official network they
are connected with. In this computing, user can have access to data only on system in which
data is stored.

Cloud Computing Traditional Computing

It refers to delivery of different services


It refers to delivery of different services on
such as data and programs through
local server.
internet on different servers.

It takes place on third-party servers that is It takes place on physical hard drives and
hosted by third-party hosting companies. website servers.

It is ability to access data anywhere at any User can access data only on system in which
time by user. data is stored.

It is more cost effective as compared to


tradition computing as operation and It is less cost effective as compared to cloud
maintenance of server is shared among computing because one has to buy expensive
several parties that in turn reduce cost of equipment’s to operate and maintain server.
public services.
Cloud Computing Traditional Computing

It is less user-friendly as compared to cloud


It is more user-friendly as compared to
computing because data cannot be accessed
traditional computing because user can
anywhere and if user has to access data in
have access to data anytime anywhere
another system, then he need to save it in
using internet.
external storage medium.

It requires fast, reliable and stable internet


It does not require any internet connection to
connection to access information
access data or information.
anywhere at any time.

It provides more storage space and


servers as well as more computing power It provides less storage as compared to cloud
so that applications and software run computing.
must faster and effectively.

It also provides scalability and elasticity


i.e., one can increase or decrease storage It does not provide any scalability and
capacity, server resources, etc., according elasticity.
to business needs.

Cloud service is served by provider’s It requires own team to maintain and monitor
support team. system that will need a lot of time and efforts.

Software is offered as an on-demand


Software in purchased individually for every
service (SaaS) that can be accessed
user and requires to be updated periodically.
through subscription service.
SERVICE PROVIDED AT VARIOUS LEVELS
Cloud computing can be described as a stack that is formed by layers, similar to a cake.
Those layers will be built using cloud computing services, servers, and components, which
can leverage several different clouds forming a single application stack. The network
stability and scalability of the stack will determine its resilience and high availability.

1. Infrastructure as a Service (IaaS)


The lower end of managed cloud computing services where hardware resources
are provided by an external provider and managed for you. IaaS provides users access to
computing resources such as networking, processing power and data storage capacity.
IaaS helps users to use computing power or virtual machines without labor-
intensive hardware investments or server management. Physically, the hardware resources
are pulled from a variety of networks and servers distributed across different data centers,
all of which are managed and maintained by the cloud service provider.
For example, say a user wants a Linux system, with IaaS he will get access to it without
having to worry about the networking of the machine on which Linux is installed or the
physical system.
IaaS is beneficial for customers who want to create cost-effective and highly scalable IT
solutions where the expenses and complexities involved in managing hardware resources
are outsourced to a service provider. Most of the IaaS packages include servers, networking,
storage, and virtualization components while the users are responsible for installing and
maintaining databases, OS, applications, and security components.
Examples of IaaS Cloud Computing Services:
Amazon EC2, Windows Azure, Rackspace, Google Compute Engine.
Features and Benefits of IaaS Cloud Computing Service
A typical infrastructure as a service offering saves both time and money as the underlying
hardware set up and support is provided by the service provider.
Resources are available on demand as and when required so there is no wastage of any
unused resources and no delays on adding any resources.
Utility-based pricing model i.e. pay only for the resources you actually use.

2. Platform as a Service (PaaS)


This cloud computing service is an advanced version of IaaS. Apart from just providing the IT
infrastructure, PaaS also provides the computing platform and solution stack as a service.
PaaS is a cloud computing service that provides developers with a framework that can be
used for building custom applications. Platform as a Service lets software developers build
custom applications online without having to worry about data storage, data serving, and
management.
A typical Platform as a Service offering consists of –

• Hosting Solutions

• OS

• Software tools for design and development.

• Environment for server-side scripting

• DBMS

• Network Access

• Storage

• Server Software

• Support
Examples of PaaS Cloud Computing Services:
Microsoft Azure, AWS Elastic Beanstalk, Force.com. by Salesforce, Google App
Engine, Rackspace Cloud Sites, OpenShift, and Apache Stratos
Features and Benefits of PaaS Cloud Computing Service
PaaS makes software development easy even for non-experts as anybody can develop an
application through the web browser with just a single click functionality.
There is no need for the users to upgrade or update the infrastructure as the PaaS service
provider handles all the update patches, upgrades, and regular software maintenance.
PaaS provides location independence as developers in different locations can work together
on the same application build.
There is no need to invest in physical infrastructure or in expertise required to manage it, an
example of this would be SAP. The ability to rent virtual IT infrastructure brings in great cost
benefits for the users.

3. Software as a Service (SaaS)


A special cloud computing service that incorporates both IaaS and PaaS service offerings.
SaaS is a cloud computing service that provides application-level services tailored to diverse
business needs such as business analytics, CRM, or marketing automation. SaaS is a cloud
computing service offering that provides web-based software applications to customers on-
demand. SaaS providers host a fully-functional application through a browser-based
interface and make it accessible to the users through the Internet.
SaaS offerings allows the cloud to be leveraged for software architecture thereby reducing
the overhead of support, maintenance, and operations as the applications run on systems
belonging to the vendor. SaaS is the most familiar cloud computing service offering as users
most often interact directly with SaaS applications like Netflix, Gmail, JIRA, Dropbox, or
Salesforce.
SaaS is a subscription-based offering where users subscribe to software on a monthly basis
instead if purchasing it so there are no upfront costs involved. It also provides a provision to
the users to end the subscription when it is no longer needed.
Examples of SaaS Cloud Computing Services:
SAP Business ByDesign, Zoho CRM, AppDynamics, Microsoft Office 365, Pardot Marketing
Automation.
Features and Benefits of SaaS Cloud Computing Service
There is no initial setup cost as the users can make use of the application as soon as
they subscribe. There is no hardware cost as well because the processing power is supplied
by the service provider.
Flexible payments as the users pay for the services on a pay-as-you-go model.
Any updates to the software are automatic and free of charge.
SaaS provides cross-device compatibility because SaaS applications can be accessed through
any internet enabled devices, such as laptop, smartphone, or desktop.
Enterprises need not engage an IT expert to download the software on multiple systems in
the office nor have to worry about the keeping the software up-to-date on every PC.

4. Functions as a Service (FaaS)


Before we understand Functions as a Service, it is important to understand the most popular
tech term associated with FaaS – serverless computing. Serverless computing is a cloud
computing model that takes away low-level infrastructure decisions and server management
from the developers. The application architect need not deal with the allocation of
resources as it is managed by the cloud service provider.
FaaS is a brand-new and very young cloud computing service acting as a game-changer for
many businesses. It is a serverless computing concept that lets software developers develop
applications and deploy an individual “function”, piece of business logic, or an action
without maintaining a server. It increases the efficiency as developers need not to consider
server operations because they are hosted externally.
Examples of FaaS include Google Cloud Function, Microsoft Azure Functions,
Webtask.io, Iron.io , Open Whisk, and AWS Lambda.
Features and Benefits of FaaS Cloud Computing Service
Money is never wasted on inactive resources as users are billed depending on the amount of
functionality used.
Makes developers efficient as they can focus more on writing application-specific logic
rather than having to deal with the server logistics.
FaaS code is inherently scalable and fault-tolerant.
HOW CLOUD COMPUTING WORKS?
Via an Internet service connection, cloud storage works by enabling users access and to
download data on any chosen device, such as a laptop, tablet or smartphone. Cloud storage
users can also edit documents simultaneously with other users as well, making it easier to
work away from the office.
To understand the workings of a cloud system, it is easier to divide it into two sections: the
front end and the back end. They are connected to each other through a network, usually
the Internet. The front end is the side of the computer user or client. The back end is ‘the
cloud’ section of the system.
The front end consists of the client’s computer or computer network. Also the application
essential to access the cloud system. It is not necessary that all cloud computing systems
have the same user interface. On the back end of the cloud technology system, there are
various computers, servers and data storage systems that make up the cloud. A cloud
computing system could potentially include any computer program, from data processing to
video games. Generally, each application will have its own dedicated server.
If you think of the Internet as a virtual ‘space’ that connects users from all over the globe, it
is like a cloud. It shares information by the way of networks.So, if we go back to the
question of what cloud computing actually is, it refers to sharing resources, software and
information through a network. In this case, via ‘the Internet’ or more correctly, an Internet
connection. Information and data is stored on physical or virtual servers, which are
maintained and controlled by a cloud computing provider, such as Amazon and their AWS
product. Amazon offer their cloud connect aws which is a great cloud solution. As a personal
or business cloud computing user, you access your stored information on the ‘cloud’, via an
Internet connection.

Popular Examples Of Cloud Computing Services At Work Today?


There has been a significant evolution in the way in which we save, store and access data.
You no longer need to save documents on one particular device. You can access personal
files and data from anywhere with a solid Internet service connection, at any time. That’s all
because of cloud technology. The cloud storage market spoils you for choice too.A variety of
cloud storage providers are available, many of which offer free storage space. Out with file
saving on floppy disks, CDs and even USB flash drives, in with cloud storage providers such
as Dropbox, Box.com and Backblaze. (Sites like Cloudwards allows you to compare a range
of different cloud storage providers in one place).
Physical servers are now virtual via cloud computing

How Does Cloud Storage Work?


Via an Internet service connection, cloud storage works by enabling users access and to
download data on any chosen device, such as a laptop, tablet or smartphone. Cloud storage
users can also edit documents simultaneously with other users as well, making it easier to
work away from the office. Depending on specific needs, prices vary for cloud storage. As an
individual user, you can usually get initial amounts of cloud storage for free – such as 5GB
with Apple iCloud, which previously dealt with some highly publicized cloud security issues.
You have to pay a fee for additional storage. Common price models include monthly or
yearly rates, depending on the services you are using.
Role of Network in Cloud Computing
Networks are important for cloud computing for the following three causes:
1) A network is required that interconnects the infrastructure resources (e.g. servers
and storage devices) within a cloud service data center. This is usually called a Data
Center Network.
2) A network is needed to connect multiple data centers in a private, public, or hybrid
cloud to support the cloud services. This is called a Data Center Interconnect
Network.
3) A network that is used to connect end users to the public cloud provider’s data
centers. This is usually the Internet.
Following is the description of the three types of networks mentioned above:

Data Center Network


Cloud providers offer scalable cloud services via massive data centers. In such massive-scale
data centers, Data Center Network (DCN) is constructed to connect tens, sometimes
hundreds, of thousands of serves to deliver massively scalable cloud services to the public.
Hierarchical network design is the most common architecture used in data center networks.

Data Center Interconnect Network


Data center interconnect networks (DCIN) are used to connect multiple data centers to
support a seamless customer experience of cloud services. While a conventional, statically
provisioned virtual private network can interconnect multiple data centers and offer secure
communications, to meet the requirements of seamless user experience for cloud services
(high-availability, dynamic server migration, application mobility), the DCIN for cloud
services has emerged as a special class of networks based on the design principle of Layer 2
network extension across multiple data centers.
Data center disaster avoidance (including data center maintenance without downtime),
dynamic virtual server migration, high-availability clusters, dynamic workload balancing and
application mobility across multiple sites are typical use cases of these type of networks
These are critical requirements for cloud computing. Take the application mobility as an
example. It provides the foundation necessary to enable compute elasticity – a key
characteristics of cloud computing – by providing the flexibility to move virtual machines
between different data centers.

Internet
It is the network of networks that connects users to the data centers. Internet services via a
broadband connection is the minimum requirement for using Cloud computing services. In
fact this service depends on the efficiency of factors like- internet connection speed, the
speed of the device and the local Operating System.
Virtualization, automation and standards are the pillars of the foundation of all good cloud
computing infrastructures. Without this foundation firmly in place across the servers,
storage and network layers, only minimal improvements on the adoption of cloud services
can be made; conversely, with this foundation in place, dramatic improvements can be
brought about by “uncoupling” applications and services from the underlying infrastructure
to improve application portability, drive up resource utilization, enhance service reliability
and greatly improve the underlying cost structures. However, this “uncoupling” must be
done harmoniously such that the network is “application aware” and that the application is
“network aware”. Specifically, the networks – both the data center network and the data
center interconnect network (and in the long run the public core network) – need to
embrace virtualization and automation services. The network must coordinate with the
upper layers of the cloud (i.e. the application workloads – both physical and virtual) to
provide the needed level of operational efficiency to break the lock between IT resources in
today’s client-server model.
CLOUD COMPUTING PROTOCOLS

Gossip Protocol
• It is a communication protocol.
• Similarly referred as a epidemic protocol.
• Anti-entropy is used to repairing a data.
• The dissemination protocol used to spread info.
• Basically it work by using flooding agent in n/w.

Connection-less n/w protocol (CLNP)


• Works on Tayer-3 protocol OSI model.
• Mechanism of fragmentation (data unit identification, length of data and offset
address).
• Exactly same like IP but basic diff. is that CNLP address Size is 20 bytes as compared
to IP(4 byte).

State Routing Protocol (SRP)


• A router communicate with each other, routing algo is used to choose the pain to
route the info.
• Ex. of this types of protocols are IP and IPX.
• Routing info. Protocol (RIP) is used to know the info about path/routing.

Internet Group Management Protocol


• Can be used for streaming video, gaming over cloud.
• It operates on n/w layer just like other management protocol like ICMP.
• Ex. Watching online video over cloud.
Secure Shell protocol (SSHP)
• Cryptographic n/w protocol allow remote login securely over internet.
• Advantage is remote login with encryption & access information.
• 2 versions → SSH-1 & SSH-2.

Coverage Enhanced Ethernet Protocol (CEE)


• N/w traffic & packet loss issues are solved.
• Packet will be loss when new packets are comes via switch so data will loss so it is
solution over it.
• Advantages-handle packet traffic on data-link layer, lower cost, for storing the
packets.

Extensible Messaging & Presence Protocol (XMPP)


• Used for publish subscriber system, video & file transfer in cloud.
• developed by jabber open source community in 1999 & its freeware protocol.
• In dec. 2011 Microsoft released an XMPP interface for messenger service.

Enhanced Interior Sateway Routing Protocol (EIGRP)


• Replaced by IGRP in 1993 because didn't support of IP classes of IP4 but it supports.
• If router didn't have a valid path to the destination so it discard the packet &
dynamically create a path.
• Features-support load balancing on parallel linked site.

Media Transfer Protocol (MTP)


• Transfer the media files, audio files, metadata to & from the portable device over a
cloud.
• Used for downloading photographs from cloud.
• Disadvantage- not to transmit the video files so solution over their AVTP is used
ROLE OF WEB SERVICES IN CLOUD COMPUTING
Web Services
A web service is a standardized method for propagating messages between client and
server applications on the World Wide Web. It is a set of open protocols and standards that
allow data exchange between different applications or systems. Web services can be used
by software programs written in different programming languages and on different
platforms to exchange data through computer networks such as the Internet. The web
service would be able to provide the functionality to the client that invoked it by submitting
an XML request, to which the service responds with an XML response.
Any software, application, or cloud technology that uses a standardized Web protocol (HTTP
or HTTPS) to connect, interoperate, and exchange data messages over the Internet-usually
XML (Extensible Markup Language) is considered a Web service.
Some of the characteristics of web service:

• Web service can be accessed via the internet or the intranet.


• It uses XML messaging protocol, which is standardized.
• It is independent of the operating system or the programming language.
• A simple location approach can be used to detect it

Role of Web Services in Cloud Computing:


Availability: Cloud provides its services with the help of web services through internet. In
cloud computing the users don't own the services which is published and run on provider's
server. Based on these characteristics the cloud providers aim to achieve high availability of
web services.
Pay-per-Use: Cloud Computing Model is based on the pay-per-use feature. This feature is
applicable with the help of web services, since the number of times a service is invoked and
the duration for which the service is used can be tracked. Therefore, consumers can connect
and utilize the service at any time they want and pay the amount based on the usage like our
utility as water or electricity bill.
Service Changeability: Service changeability is the ability for web services to be modified by
service users based on the individual needs. This feature allows service providers to meet
the several needs of each user. According to the features of cloud services, different users,
who can access the Internet, can become potential consumer of the cloud services. Because
of this issue it is difficult for service providers to customize their services for all service user.
So consumers can modify their services for their own need.
Scalability: Scalability corresponds to the potentiality of increasing the computing capability
of service provider's system and the system capability to process more clients' requests at a
particular time interval. Web Services can be rendered with high scalability.
Reusability: It is defined as the degree to which a software module or other work product
can be used in more than one computing program or software system. It is the fundamental
underlying principle of cloud computing to reuse various internet based services. Hence,
web services are employed by cloud since they can be reused.
Interoperability: Interoperability measures the ability to move data or applications from one
cloud to another. It is also the capacity to merge public and private cloud into a hybrid one.
Since web services are platform and programming language independent, they can be used
by cloud to achieve high interoperability.
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:

1) Public Cloud
The public cloud is one in which cloud infrastructure services are provided over the internet
to the general people or major industry groups. The public cloud makes it possible for
anybody to access systems and services. It may be less secure as it is open for everyone. The
infrastructure in this cloud model is owned by the entity (third-party provider) 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.
Cloud service providers use groups of data centers that are partitioned into virtual machines
and shared by tenants. Tenants may simply rent the use of those virtual machines, or they
may pay for additional cloud-based services such as software applications, application
development tools, or storage. Companies often use public cloud services for less-sensitive
applications that have unpredictable spikes in usage or for storing data that does not require
frequent access. 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-use
basis. Example: Google App Engine etc.
Advantages of Public Cloud

• Low Cost: Public cloud has a lower cost than private, or hybrid cloud, as it shares the
same resources with a large number of consumers.

• Location Independent: Public cloud is location independent because its services are
offered through the internet.

• Save Time: In Public cloud, the cloud service provider is responsible for the manage
and maintain data centers in which data is stored, so the cloud user can save their
time to establish connectivity, deploying new products, release product updates,
configure, and assemble servers.
• Quickly and easily set up: Organizations can easily buy public cloud on the internet
and deployed and configured it remotely through the cloud service provider within a
few hours.

• Business Agility: Public cloud provides an ability to elastically re-size computer


resources based on the organization's requirements.

• Scalability and reliability: Public cloud offers scalable (easy to add and remove) and
reliable (24*7 available) services to the users at an affordable cost.

• 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.
Disadvantages of Public Cloud

• Low Security: Public Cloud is less secure because resources are shared publicly.
• Performance: In the public cloud, performance depends upon the speed of internet
connectivity.
• Less customizable: Public cloud is less customizable than the private cloud.
2) 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 cloud 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 the greater flexibility of control over cloud resources. Private cloud is
also known as an internal cloud or corporate cloud.
Private cloud solutions allow companies to architect a data center using  software-defined
networking (SDN) and virtual machines (VMs). A private cloud can span the global network
to include multiple server locations or leased space in international colocation facilities.
Private cloud solutions provide the software tools for complex network orchestration on
bare-metal servers where the security of data can be managed on the premises of a business
directly.
Private Cloud can be of three types:

• A virtual private cloud is a private cloud instance that is hosted by and located within
a public cloud provider’s infrastructure.

• A hosted private cloud is hosted by the cloud provider and can reside on-premises or
in a data center. These resources are not shared with other organizations and are
managed by the cloud service provider. All updates, upgrades, and maintenance are
the responsibility of the cloud provider.

• A managed private cloud offloads many responsibilities of cloud management to a


third party hosting partner. Hardware, software, networking, and operations of the
private cloud are handled by the provider, who may offer other value-added services
such as backup and business continuity.
Advantages of Private Cloud

• More Control: Private clouds have more control over their resources and hardware
than public clouds because it is only accessed by selected users.

• Security & privacy: Security & privacy are one of the big advantages of cloud
computing. Private cloud improved the security level as compared to the public
cloud.
• Improved performance: Private cloud offers better performance with improved
speed and space capacity.
Disadvantages of Private Cloud

• High cost: The cost is higher than a public cloud because set up and maintain
hardware resources are costly.

• Restricted area of operations: As we know, private cloud is accessible within the


organization, so the area of operations is limited.

• Limited scalability: Private clouds are scaled only within the capacity of internal
hosted resources.

• Skilled people: Skilled people are required to manage and operate cloud services.
3) Hybrid Cloud
By bridging the public and private worlds with a layer of proprietary software, hybrid cloud
computing gives the best of both worlds. It is a cloud computing model that uses a
combination of at least one private cloud and at least one public cloud, which work together
to provide a flexible mix of cloud computing services. 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 solutions offer a single, seamless pool of resources that support modern
application strategies and an organization’s digital transformation efforts. Hybrid clouds use
public and private clouds as a single combined entity where data and application workloads
can move seamlessly between platforms and share data between application workloads.
This is achieved by virtualization of data and workloads, network function virtualization
(NFV) or VPNs, and connectivity to one or more cloud providers.
Advantages of hybrid cloud:

• Workload migration. Migrate workloads quickly and without refactoring, using


familiar tools and processes, while accessing cloud-native services from the new
cloud environment.

• Enhance scalability. Organization can leverage the instant agility and scale of public
cloud providers in near-real time, while using familiar tools and processes.

• Enforce security and compliance mandates. With hybrid cloud, security policies are
linked to each application, which ensures consistent adoption wherever workloads
are deployed and managed.

• Reduce IT workload. By offering self-service to developers and line-of-business (LOB)


application owners in on-site and public cloud environments, organizations can
handle more requests while unburdening IT staff from mundane repetitive tasks
related to spinning up new VMs or containers

• Increase flexibility. For organizations with a wide range of application requirements


and digital business initiatives, hybrid cloud provides options for where and when
workloads and data are deployed, which speeds up IT response to changing needs. 

• Reduce complexity. With a single operating model across environments, IT can


simplify operations to optimize the mix of capital and operating expense, reduce
operating and security risk, and improve operating efficiency while avoiding silos and
skills gaps. 

• Increase cloud utility. Hybrid infrastructure allows an organization to improve on-


premises cloud capabilities and shift from siloed infrastructure-oriented operations to
a service-based model that delivers the same services regardless of where
applications are deployed.
Disadvantages of Hybrid Cloud

• Networking issues: In the Hybrid Cloud, networking becomes complex because of


the private and the public cloud.

• Infrastructure Compatibility: It is the major issue in a hybrid cloud. With dual-levels of


infrastructure, a private cloud controls the company, and a public cloud does not, so
there is a possibility that they are running in separate stacks.

• Reliability: The reliability of the services depends on cloud service providers


4) 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. The organizing principle for the community will vary,
but the members of the community generally share similar security, privacy, performance
and compliance requirements. Community members may wish to invoke a mechanism that is
often run by themselves (not just the provider) to review those seeking entry into the
community.
Community clouds are more expensive than public clouds but also more secure. Each
member of the cloud is allocated a fixed amount of data storage and bandwidth, making
scalability somewhat more difficult than with private and public clouds. Community clouds
are a great solution for growing organizations in the health, financial, legal, and educational
sectors. This is because these industries are the most bound by various regulations.
The implementation of a community cloud is more complicated than other types of clouds.
This is because of the number of players involved. Decisions are no longer standalone, and,
as a result, a handbook needs to be established at the outset, which must cover:

• Mission statements
• Ownership of services and resources
• An economic model of shared cloud and services
• Resource allocation and maintenance
• Industry regulations binding each organization
Advantages of Community Cloud

• Cost effective: Community cloud is cost effective because the whole cloud is shared
between several organizations or a community.

• Flexible and Scalable: The community cloud is flexible and scalable because it is
compatible with every user. It allows the users to modify the documents as per their
needs and requirement.

• Security: Community cloud is more secure than the public cloud but less secure than
the private cloud.
• Sharing infrastructure: Community cloud allows us to share cloud resources,
infrastructure, and other capabilities among various organizations.
Disadvantages of Community Cloud -

• Community cloud is not a good choice for every organization.


• Slow adoption to data
• The fixed amount of data storage and bandwidth is shared among all community
members.
• Community Cloud is costly than the public cloud.
• Sharing responsibilities among organizations is difficult.
Services Provided at Various Levels
1) Infrastructure as a Service (IaaS)
The lower end of managed cloud computing services where hardware resources
are provided by an external provider and managed for you. IaaS provides users access to
computing resources such as networking, processing power and data storage capacity.
IaaS helps users to use computing power or virtual machines without labor-
intensive hardware investments or server management. Physically, the hardware resources
are pulled from a variety of networks and servers distributed across different data centers,
all of which are managed and maintained by the cloud service provider.
For example, say a user wants a Linux system, with IaaS he will get access to it without
having to worry about the networking of the machine on which Linux is installed or the
physical system.
IaaS is beneficial for customers who want to create cost-effective and highly scalable IT
solutions where the expenses and complexities involved in managing hardware resources
are outsourced to a service provider. Most of the IaaS packages include servers, networking,
storage, and virtualization components while the users are responsible for installing and
maintaining databases, OS, applications, and security components.
Examples of IaaS Cloud Computing Services:
Amazon EC2, Windows Azure, Rackspace, Google Compute Engine.
Features and Benefits of IaaS Cloud Computing Service
o A typical infrastructure as a service offering saves both time and money as the
underlying hardware set up and support is provided by the service provider.
o Resources are available on demand as and when required so there is no wastage of
any unused resources and no delays on adding any resources.
o Utility-based pricing model i.e., pay only for the resources you actually use.

2) Platform as a Service (PaaS)


This cloud computing service is an advanced version of IaaS. Apart from just providing the IT
infrastructure, PaaS also provides the computing platform and solution stack as a service.
PaaS is a cloud computing service that provides developers with a framework that can be
used for building custom applications. Platform as a Service lets software developers build
custom applications online without having to worry about data storage, data serving, and
management.
A typical Platform as a Service offering consists of –
o Hosting Solutions
o OS
o Software tools for design and development.
o Environment for server-side scripting
o DBMS
o Network Access
o Storage
o Server Software
o Support
Examples of PaaS Cloud Computing Services:
Microsoft Azure, AWS Elastic Beanstalk, Force.com. by Salesforce, Google App
Engine, Rackspace Cloud Sites, OpenShift, and Apache Stratos
Features and Benefits of PaaS Cloud Computing Service:
o PaaS makes software development easy even for non-experts as anybody can
develop an application through the web browser with just a single click functionality.
o There is no need for the users to upgrade or update the infrastructure as the PaaS
service provider handles all the update patches, upgrades, and regular software
maintenance.
o PaaS provides location independence as developers in different locations can work
together on the same application build.
o There is no need to invest in physical infrastructure or in expertise required to
manage it, an example of this would be SAP. The ability to rent virtual IT
infrastructure brings in great cost benefits for the users.

3) Software as a Service (SaaS)


A special cloud computing service that incorporates both IaaS and PaaS service offerings.
SaaS is a cloud computing service that provides application-level services tailored to diverse
business needs such as business analytics, CRM, or marketing automation. SaaS is a cloud
computing service offering that provides web-based software applications to customers on-
demand. SaaS providers host a fully-functional application through a browser-based
interface and make it accessible to the users through the Internet.
SaaS offerings allows the cloud to be leveraged for software architecture thereby reducing
the overhead of support, maintenance, and operations as the applications run on systems
belonging to the vendor. SaaS is the most familiar cloud computing service offering as users
most often interact directly with SaaS applications like Netflix, Gmail, JIRA, Dropbox, or
Salesforce.
SaaS is a subscription-based offering where users subscribe to software on a monthly basis
instead if purchasing it so there are no upfront costs involved. It also provides a provision to
the users to end the subscription when it is no longer needed.
Examples of SaaS Cloud Computing Services:
SAP Business ByDesign, Zoho CRM, AppDynamics, Microsoft Office 365, Pardot Marketing
Automation.
Features and Benefits of SaaS Cloud Computing Service
o There is no initial setup cost as the users can make use of the application as soon as
they subscribe. There is no hardware cost as well because the processing power is
supplied by the service provider.
o Flexible payments as the users pay for the services on a pay-as-you-go model.
o Any updates to the software are automatic and free of charge.
o SaaS provides cross-device compatibility because SaaS applications can be accessed
through any internet enabled devices, such as laptop, smartphone, or desktop.
o Enterprises need not engage an IT expert to download the software on multiple
systems in the office nor have to worry about the keeping the software up-to-date on
every PC

4) Everything as a Service (XaaS)


XaaS is short for Everything-as-a-Service and sometimes Anything-as-a-Service. XaaS reflects
how organizations across the globe are adopting the as-a-Service method for delivering just
about everything.
Many organizations provide as-a-Service offerings. These offerings are neatly sliced up and
portioned out to create customized services that meet the specific needs of each client at a
price that makes sense for them. In this way, XaaS could be simply thought of as a
combination of SaaS, PaaS, and IaaS offerings.
The primary goal of XaaS offerings is to increase the value for the customer. In a XaaS
model, you want to convert one-time buyers into service subscribers who receive ongoing
benefits from the product. In a XaaS offering, customers should feel that their money is
being put to good use.
Examples of XaaS :
As XaaS stands for “Everything as a service”, There are many examples. There are many
varieties of cloud computing models like –
o Software as a Service (SaaS)
o Platform as a Service (PaaS)
o Disaster Recovery as a Service (DRaaS)
o Infrastructure as a service (IaaS)
o Communication as a Service (CaaS)
o Network as a Service (NaaS)
o Database as a Service (DBaaS)
o Desktop as a Service (DaaS)
Everything as a Service Model Examples :
Hardware as a Service (HaaS) –
Managed Service Providers (MSP) provide and install some hardware on customer’s site on
demand. Customer uses the hardware according to service level agreements. This model is
very similar to IaaS as computing resources are present at MSP’s site are provides to users
substituted for physical hardware.
Communication as a Service (CaaS) –
This model comprises solution of different communication like IM, VoIP, video conferencing
application which are hosted in provider’s cloud. Such method is cost-effective and reduces
time expenses.
Desktop as a Service (DaaS) –
DaaS provider mainly manages storing, security and backing up user data for the desktop
apps. And a client can also work on PCs using third-party servers.
Security as a Service (SECaaS) –
In this method provider integrates security services with company’s infrastructure through
internet which includes anti-virus software, authentication, encryption etc.
Healthcare as a Service (HaaS) –
The healthcare industry has opted the model HaaS service through electronic medical
records (EMR). IOT and other technologies has enhanced medical services like online
consultations, health monitoring 24/7, medical service at doorstep e.g. lab sample collection
from home etc.
Transport as a Service (TaaS) –
Nowadays, there are numerous apps which helps in mobility and transport in modern
society. The model is both convenient and ecological friendly e.g. Uber taxi services is
planning to test flying taxis ans self-driving planes in the future.
OPEN-SOURCE CLOUD ARCHITECTURES
There are many open-source cloud solutions, all of which have different architectures. Some
of these are mentioned as follows:

1. Cloud Foundry
Originally developed by VMware (now owned by Pivotal Software), Cloud
Foundry outstands for being available as an open-source, stand-alone software application,
which makes it independent of cloud providers. It is designed to offer fast application
development and deployment through a highly scalable architecture and DevOps-friendly
workflows. Its language support includes Python, Ruby, PHP, Java, and Go, between many
others

Components of cloud foundry:


Router: The router routes incoming traffic to the appropriate component, either a Cloud
Controller component or a hosted application running on a Diego Cell.
OAuth2 Server (UAA) and Login Server: The OAuth2 server (the UAA) and Login Server
work together to provide identity management.
Cloud Controller and Diego Brain: To push an app to Cloud Foundry for deployment, you
target the Cloud Controller. The Cloud Controller then directs the Diego Brain to stage and
run applications.
nsync, BBS, and Cell Reps: The nsync, BBS, and Cell Rep components work together along a
chain to keep apps running.
Blobstore: The blobstore is a repository for large binary files, which Github cannot easily
manage because GitHub is designed for code.
Diego Cell: Application instances, application tasks, and staging tasks all run
as Garden containers on the Diego Cell VMs.
Service Brokers: When a developer provisions and binds a service to an application, the
service broker for that service is responsible for providing the service instance.
Internal HTTPS and BBS: Cloud Foundry component VMs communicate with each other
internally through HTTP and HTTPS protocols, sharing temporary messages and data.
Loggregator: The Loggregator (log aggregator) system streams application logs to
developers.
Metrics Collector: The metrics collector gathers metrics and statistics from the components.

2. Open Nebula
It is an open-source toolkit used to build private, public and hybrid clouds. It has been
designed to be integrated with networking and storage solutions and to fit into existing
data centers. The Open Nebula architecture is based on three basic technologies to enable
the provision of services on a distributed infrastructure: virtualization, storage and network.
All resource allocation is done based on policies.
OpenNebula follows a rapid release cycle to improve user satisfaction by rapidly delivering
features and innovations based on user requirements and feedback. In other words, giving
customers what they want more quickly, in smaller increments, while additionally increasing
technical quality.
Major upgrades generally occur every 3-5 years and each upgrade generally has 3-5 updates.
The OpenNebula project is mainly open-source and possible thanks to the active community
of developers and translators supporting the project.
3. Eucalyptus
Eucalyptus is an open source software platform that pools together
existing virtualized infrastructure to create cloud resources for infrastructure as a
service, network as a service and storage as a service. The name Eucalyptus is an acronym
for Elastic Utility Computing Architecture for Linking Your Programs To Useful Systems.
The Eucalyptus architecture is hierarchical and made up of four high level components,
where each one is implemented as a stand-alone web service.
Node Controller (NC): This component runs on every node that is destined for hosting VM
instances. An NC is responsible to query and control the system software (operating system
and hypervisor) to collect essential information about node and for conforming requests
from its respective Cluster Controller.
Cluster Controller (CC): This component generally executes on a cluster frontend machine,
or any machine that has network connectivity to two nodes: one running NCs and another
running the Cloud Controller (CLC). A CC is responsible to collect/report information about
and schedule VM execution on specific NCs and to manage virtual instance network overlay.
Storage Controller (Walrus): This component is a data storage service that provides a
mechanism for storing and accessing virtual machine images and user 10 Anais data. Walrus
is based on web services technologies.
Cloud Controller (CLC): This component is the entry-point into the cloud for users. Its main
goal is to offer and manage the Eucalyptus underlying virtualized resources. CLC is
responsible for querying node managers for resources’ information, making scheduling
decisions, and implementing them by requests to CC.

4. TPlatform
It is a cloud solution that provides a development platform for web mining applications and
acts as a Platform as a Service (PaaS) solution.

PC Cluster: this layer provides the hardware infrastructure for data processing.
Infrastructure: this layer consists of file system (TFS), distributed data storage mechanism
(BigTable), and programming model (MapReduce).
Data Processing Applications: this layer provides the services for users to develop their
application (e.g. web data analysis and language processing).

You might also like