UNIT 2 Cloud Computing Architecture
UNIT 2 Cloud Computing Architecture
1. 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
PRIYANKA PATIL 1
Cloud Computing
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 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
PRIYANKA PATIL 2
Cloud Computing
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. 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
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
PRIYANKA PATIL 3
Cloud Computing
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
PRIYANKA PATIL 4
Cloud Computing
Each model has some advantages and some disadvantages, and the selection of the best is
only done based on your requirements. If your requirements change, you can switch to any
other model.
Overall Analysis of Cloud Deployment Models
The overall Analysis of these models concerning different factors is described below.
Factors Public Cloud Private Cloud Community Hybrid Cloud
Cloud
Initial Setup Easy Complex, Complex, Complex,
requires a requires a requires a
professional professional professional
team to setup team to setup team to setup
Scalability High High Fixed High
and
Flexibility
Cost- Cost-Effective Costly Distributed cost Between public
Comparison among members and private
cloud
Reliability Low Low High High
Data Security Low High High High
Data Privacy Low High High High
Cloud Computing helps in rendering several services according to roles, companies, etc.
Cloud computing models are explained below.
• Infrastructure as a service (IaaS)
• Platform as a service (PaaS)
• Software as a service (SaaS)
Characteristics of IaaS
• Resources are available as a service
• Services are highly scalable
• Dynamic and flexible
• GUI and API-based access
• Automated administrative tasks
Advantages of IaaS
• IaaS is cost-effective as it eliminates capital expenses.
• IaaS cloud provider provides better security than any other software.
• IaaS provides remote access.
• IaaS allows multiple users to share the same physical infrastructure.
• IaaS providers provide services based on a pay-as-per-use basis. The users are
required to pay for what they have used.
• IaaS providers focus on the organization's core business rather than on IT
infrastructure.
• On-demand scalability is one of the biggest advantages of IaaS. Using IaaS, users
do not worry about upgrading software and troubleshooting issues related to
hardware components.
Disadvantages of IaaS
• In IaaS, users have to secure their data and applications.
• Cloud computing is not accessible in some regions of the World.
• Security is one of the biggest issues in IaaS. Most of the IaaS providers are not
able to provide 100% security.
• Although IaaS service providers maintain the software, they do not upgrade the
software for some organizations.
• It is difficult to migrate VM from one IaaS provider to the other, so the customers
might face problems related to vendor lock-in.
Examples: DigitalOcean, Linode, Amazon Web Services (AWS), Microsoft Azure, Google
Compute Engine (GCE), Rackspace, and Cisco Metacloud.
Platform as a Service (PaaS) is a type of cloud computing that helps developers to build
applications and services over the Internet by providing them with a platform. PaaS helps in
maintaining control over their business applications. PaaS cloud computing platform is
created for the programmer to develop, test, run, and manage the applications.
• Programming languages
PaaS providers provide various programming languages for the developers to develop the
applications. Some popular programming languages provided by PaaS providers are Java,
PHP, Ruby, Perl, and Go.
PRIYANKA PATIL 6
Cloud Computing
• Application frameworks
PaaS providers provide application frameworks to easily understand application
development. Some popular application frameworks provided by PaaS providers are Node.js,
Drupal, Joomla, WordPress, Spring, Play, Rack, and Zend.
• Databases
PaaS providers provide various databases such as ClearDB, PostgreSQL, MongoDB, and
Redis to communicate with the applications.
• Other tools
PaaS providers provide various other tools that are required to develop, test, and deploy the
applications.
Characteristics of PaaS
• Accessible to various users via the same development application.
• Integrates with web services and databases.
• Builds on virtualization technology, so resources can easily be scaled up or down
as per the organization's need.
• Support multiple languages and frameworks.
• Provides an ability to "Auto-scale".
Advantages of PaaS
• PaaS is simple and very convenient for the user as it can be accessed via a web
browser.
• PaaS has the capabilities to efficiently manage the lifecycle.
• PaaS allows developers to focus on development and innovation without worrying
about infrastructure management.
• No need for up-front investment in hardware and software. Developers only need
a PC and an internet connection to start building applications.
• Some PaaS vendors also provide already defined business functionality so that
users can avoid building everything from very scratch and hence can directly start
the projects only.
• PaaS vendors frequently provide online communities where the developer can get
ideas to share experiences and seek advice from others.
• Applications deployed can scale from one to thousands of users without any
changes to the applications.
Disadvantages of PaaS
• PaaS has limited control over infrastructure as they have less control over the
environment and are not able to make some customizations.
• PaaS has a high dependence on the provider.
• One has to write the applications according to the platform provided by the PaaS
vendor, so the migration of an application to another PaaS vendor would be a
problem.
• Corporate data, whether it be critical or not, will be private, so if it is not located
within the walls of the company, there can be a risk in terms of privacy of data.
• some applications may be local, and some are in the cloud. So there will be
chances of increased complexity when we want to use data in the cloud with the
local data.
PRIYANKA PATIL 7
Cloud Computing
Examples: AWS Elastic Beanstalk, Windows Azure, Heroku, Force.com, Google App
Engine, Apache Stratos, Magento Commerce Cloud, and OpenShift.
SaaS is also known as "on-demand software". It is software in which the applications are
hosted by a cloud service provider. Users can access these applications with the help of an
internet connection and web browser.
Software as a Service (SaaS) is a type of cloud computing model that is the work of delivering
services and applications over the Internet. The SaaS applications are called Web-Based
Software or Hosted Software. SaaS has around 60 percent of cloud solutions and due to this,
it is mostly preferred by companies.
There are the following services provided by SaaS providers -
• Business Services - The SaaS Provider provides various business services to start up
the business. The SaaS business services include ERP (Enterprise Resource
Planning), CRM (Customer Relationship Management), billing, and sales.
• Document Management - SaaS document management is a software application
offered by a third party (SaaS provider) to create, manage, and track electronic
documents.
• Social Networks - As we all know, social networking sites are used by the general
public, so social networking service providers use SaaS for their convenience and
handle the general public's information.
• Mail Services - To handle the unpredictable number of users and load on e-mail
services, many e-mail providers offer their services using SaaS.
Characteristics of SaaS
• Managed from a central location
• Hosted on a remote server
• Accessible over the internet
• Users are not responsible for hardware and software updates. Updates are applied
automatically.
• The services are purchased on the pay-as-per-use basis
Advantages of SaaS
• SaaS can access app data from anywhere on the Internet.
• SaaS provides easy access to features and services.
• SaaS pricing is based on a monthly fee or annual fee subscription, so it allows
organizations to access business functionality at a low cost, which is less than
licensed applications.
• Unlike traditional software, which is sold as a licensed base with an up-front cost
(and often an optional ongoing support fee), SaaS providers generally price the
applications using a subscription fee, most commonly a monthly or annual fee.
• SaaS services are offered as a one-to-many model means a single instance of the
application is shared by multiple users.
PRIYANKA PATIL 8
Cloud Computing
Disadvantages of SaaS
• SaaS solutions have limited customization, which means they have some
restrictions within the platform.
• SaaS has little control over the data of the user.
• SaaS are generally cloud-based, they require a stable internet connection for
proper working.
• Actually, data is stored in the cloud, so security may be an issue for some users.
However, cloud computing is not more secure than in-house deployment.
• Since data and applications are stored in the cloud at a variable distance from the
end-user, there is a possibility that there may be greater latency when interacting
with the application compared to local deployment. Therefore, the SaaS model is
not suitable for applications whose demand response time is in milliseconds.
• Switching SaaS vendors involves the difficult and slow task of transferring very
large data files over the internet and then converting and importing them into
another SaaS also.
PRIYANKA PATIL 9
Cloud Computing
Cloud computing is a computing technique in which a large group of remote servers are
networked to allow centralized data storage and online access to computer services and
resources.
Example: Suppose you have a list of important documents and you cannot lose it at any cost,
so you upload these documents to your favorite document storage website like Google Drive,
One Drive, etc. through your computer. You didn’t realize but you have started using cloud
computing where all your documents are stored in a cloud which you can access from
anywhere you want by logging in to your account.
Working:
The data you wish to store is stored in a huge secret data warehouse that is full of computers.
These data warehouses are also called Data Centers and are located all over the world. In all
these data warehouses there are huge computer towers that are more powerful than the home
computers. It is difficult to know where exactly are your data stored or located in the cloud,
because it may be stored in dozens of data warehouses all at once. To keep your data safe
you need to trust the web storage companies like Google and Microsoft.
Cloud computing is a safer option to store data as there comes the risk of Stealing data,
Breach of data, damage to storage devices, or data corruption.
When you use the cloud, you don’t store the data in only one place but all over the place so
that if one data center is damaged the data can be accessed from the other. You can share
these data from data from anywhere.
The place that manages cloud storage systems is called a Data Center. At its most
fundamental level, a cloud storage system requires just one data server connected to the
internet. A Client subscribes to the cloud storage, and transfers copies of his files across the
internet to the data server. Which then writes the information in the cloud storage.
When a client wants to recover the information, he/she can access the data server through a
web-based interface. The server then transfers the files back to the client to locate and manage
the files on the server itself.
PRIYANKA PATIL 10
Cloud Computing
Data Data
Deletion Creation
Data Data
Recovery Maintenance
1. Data Creation
The life cycle of cloud data begins with the creation of data in the cloud storage systems.
When the primary piece of data is produced, a certain number of additional copies of the
cloud data also need to be created, according to the specific security need of each data and
storage policy. All these copies are transferred and saved in a specific storage device in a
shared way.
2. Data Maintenance
After the data is generated and saved the maintenance stage begins which holds the majority
of the cloud data life. At this step, cloud data is prepared within applications to accomplish
these purposes. However, most of the time these data are simply saved in storage devices
remaining for later usage. Certain mechanisms are performed to maintain all the copies so
that the service qualities may not be endangered. From the data security aspect, the
redundancy of cloud data is maintained at a specific level. So that sufficient data reliability
support can be given to meet the storage user's security requirements.
3. Data Recovery
At the data maintenance stage, copies could be lost due to storage breakdown. Either Restore
or Prevent the data from Total Loss data recovery is required. At this step, specific
mechanisms are carried out to recover the lost copies. These mechanisms follow different
recovery policies and the duration of the data recovery stage may vary.
4. Data Deletion
When the data is no longer required it is removed. The storage space restoration mechanism
of the cloud then recycles the preoccupied space and the life cycle of the cloud data ends.
Networking plays a critical role in cloud computing. It enables cloud computing providers to
connect their data centers, deliver cloud services to users, and secure cloud computing
environments.
Networks are used to establish connections between various components of the cloud
infrastructure, ensuring high availability, scalability, and efficient data transfer.
PRIYANKA PATIL 11
Cloud Computing
Without networking, cloud computing would not be possible, as it forms the backbone of
communication and resource sharing in the cloud environment.
What is Networking?
Networking involves the connection of computers, servers, and devices to enable
communication and resource sharing. Networks can be local (e.g., home or office networks)
or wide-area (e.g., the internet).
In the context of cloud computing, networking facilitates the transfer of data between cloud
service providers’ data centers, users, and other components of the cloud infrastructure.
Benefits of Networking
• Networks allow computers and devices to communicate with each other, enabling
file sharing, collaborative work, and real-time interactions.
• Networks enable the sharing of resources such as printers, storage devices, and
applications among connected devices. This promotes efficiency and reduces
costs by eliminating the need for redundant resources.
• Networking provides a central point for managing access to resources, allowing
for the implementation of security measures such as firewalls, access controls, and
intrusion detection systems.
• Networks establish multiple paths for data to travel between devices, improving
availability and ensuring seamless connectivity even in the event of network
failures.
Cloud computing providers use networks to interconnect their data centers, which are the
physical locations where cloud services are hosted. These networks facilitate the transfer of
data and enable resource sharing between data centers, ensuring high availability, fault
tolerance, and scalability of cloud services.
Networks are crucial for delivering cloud services to users. Cloud providers utilize various
network technologies, including the internet, private networks, and dedicated connections, to
ensure the efficient transfer of data between their infrastructure and end-users. These networks
enable users to access cloud services from anywhere, at any time, with minimal latency.
4. Increases cost-efficiency
PRIYANKA PATIL 12
Cloud Computing
Cloud networking services handle configuration, maintenance – updates, and upgrades, freeing
up valuable time for the IT staff, and allowing them to redirect their efforts from routine tasks
like hardware and software upgrades to more strategic business priorities.
It minimizes downtime by efficiently distributing workload, reducing the need for system
shutdown during updates. By ensuring uninterrupted access to resources, cloud networking
enables high availability.
Cloud networking enables rapid deployment of new applications without having to wait for the
installation and configuration of networking tools. It also allows you to swiftly adapt to
changing requirements without significant delays.
Cloud networking providers can easily scale an organization’s resources without the need for
additional on-premises infrastructure. Users have the flexibility to choose from public, private,
or hybrid cloud deployment models based on their specific needs.
9. Enhances security
Cloud networking providers offer robust security options, including firewalls, encryption,
authentication, and malware protection. These security features help safeguard data and
infrastructure addressing concerns associated with unauthorized access and cyber threats.
PRIYANKA PATIL 13