0% found this document useful (0 votes)
24 views28 pages

Lecture 10-181023

Uploaded by

Jay Ghiya
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)
24 views28 pages

Lecture 10-181023

Uploaded by

Jay Ghiya
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/ 28

Introduction to Distributed and Parallel

Computing
CS-401

Dr. Sanjay Saxena


Visiting Faculty, CSE, IIIT Vadodara
Assistant Professor, CSE, IIIT Bhubaneswar
Post doc – University of Pennsylvania, USA
PhD – Indian Institute of Technology(BHU), Varanasi
Cloud Computing

Simply put, cloud computing is the delivery of computing


services—including servers, storage, databases, networking,
software, analytics, and intelligence—over the Internet (“the
cloud”) to offer faster innovation, flexible resources, and
economies of scale.
Types of cloud computing

Public cloud Private cloud Hybrid cloud


Ø Public clouds are owned and operated by Ø A private cloud refers to cloud Ø Hybrid clouds combine public and
third-party cloud service providers, which computing resources used exclusively by
deliver computing resources like servers a single business or organization. private clouds, bound together by
and storage over the internet. technology that allows data and
Ø A private cloud can be physically located
Ø Microsoft Azure is an example of a public on the company’s onsite data center. applications to be shared between
cloud. them.
Ø Some companies also pay third-party
Ø With a public cloud, the cloud provider service providers to host their private Ø By allowing data and applications to
owns and manages all hardware, software, cloud. move between private and public
and other supporting infrastructure.
Ø A private cloud is one in which the clouds, a hybrid cloud gives your
Ø You access these services and manage your services and infrastructure are business greater flexibility and more
account using a web browser. maintained on a private network.
deployment options and helps
optimize your existing infrastructure,
security, and compliance.
Types of cloud services: IaaS, PaaS, serverless, and SaaS

Software as a Service (SaaS)


Platform as a Service (PaaS)
SaaS is also known as "on-demand
PaaS cloud computing platform is
software". It is a software in which the
created for the programmer to
applications are hosted by a cloud
develop, test, run, and manage the
service provider. Users can access these
applications.
applications with the help of internet
connection and web browser.

Infrastructure as a Service (IaaS)


IaaS is also known as Hardware as a Service (HaaS). It is a
computing infrastructure managed over the internet. The main
advantage of using IaaS is that it helps users to avoid the cost and
complexity of purchasing and managing the physical servers.
Characteristics of SaaS Characteristics of PaaS
o Accessible to various users via the same development
o Managed from a central location
application.
o Hosted on a remote server
o Integrates with web services and databases.
o Accessible over the internet
o Builds on virtualization technology, so resources can
o Users are not responsible for hardware and software
easily be scaled up or down as per the organization's
updates. Updates are applied automatically.
need.
o The services are purchased on a pay-as-per-use basis
o Support multiple languages and frameworks.
Example: BigCommerce, Google Apps, Salesforce,
o Provides an ability to "Auto-scale".
Dropbox, ZenDesk, Cisco WebEx, Slack, and GoToMeeting.
Example: AWS Elastic Beanstalk, Windows Azure, Heroku,
Force.com, Google App Engine, Apache Stratos, Magento
Commerce Cloud, and OpenShift.

Characteristics of IaaS
o Resources are available as a service
o Services are highly scalable
o Dynamic and flexible
o GUI and API-based access
o Automated administrative tasks
Example: DigitalOcean, Linode, Amazon Web Services
(AWS), Microsoft Azure, Google Compute Engine (GCE),
Rackspace, and Cisco Metacloud.
Infrastructure as a Service | IaaS
Ø Compute: Computing as a Service
includes virtual central processing units
and virtual main memory for the Vms that
is provisioned to the end- users.
Ø Storage: IaaS provider provides back-end
storage for storing files.
Ø Network: Network as a Service (NaaS)
provides networking components such as
routers, switches, and bridges for the
Vms.
Ø Load balancers: It provides load
balancing capability at the infrastructure
layer.
Advantages of IaaS cloud computing layer
There are the following advantages of IaaS computing layer -
1. Shared infrastructure
IaaS allows multiple users to share the same physical infrastructure.
2. Web access to the resources
Iaas allows IT users to access resources over the internet.
3. Pay-as-per-use model
IaaS providers provide services based on the pay-as-per-use basis. The users are required to pay for what they have
used.
4. Focus on the core business
IaaS providers focus on the organization's core business rather than on IT infrastructure.
5. On-demand scalability
On-demand scalability is one of the biggest advantages of IaaS. Using IaaS, users do not worry about to upgrade
software and troubleshoot the issues related to hardware components.
Disadvantages of IaaS cloud computing layer
1. Security
Security is one of the biggest issues in IaaS. Most of the IaaS providers are not able to provide 100% security.
2. Maintenance & Upgrade
Although IaaS service providers maintain the software, but they do not upgrade the software for some organizations.
3. Interoperability issues
It is difficult to migrate VM from one IaaS provider to the other, so the customers might face problem related to vendor
lock-in.
Some important point about IaaS
cloud computing layer
Ø IaaS cloud computing platform cannot replace the traditional hosting method, but it provides more than that, and
each resource which are used are predictable as per the usage.
Ø IaaS cloud computing platform may not eliminate the need for an in-house IT department. It will be needed to
monitor or control the IaaS setup. IT salary expenditure might not reduce significantly, but other IT expenses can be
reduced.
Ø Breakdowns at the IaaS cloud computing platform vendor's can bring your business to the halt stage. Assess the IaaS
cloud computing platform vendor's stability and finances. Make sure that SLAs (i.e., Service Level Agreement)
provide backups for data, hardware, network, and application failures. Image portability and third-party support is a
plus point.
Ø The IaaS cloud computing platform vendor can get access to your sensitive data. So, engage with credible
companies or organizations. Study their security policies and precautions.
Top Iaas Providers who are providing IaaS cloud computing
platform
Platform as a Service | PaaS
1. 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.
2. Application frameworks
PaaS providers provide application frameworks to easily understand the application
development. Some popular application frameworks provided by PaaS providers are
Node.js, Drupal, Joomla, WordPress, Spring, Play, Rack, and Zend.
3. Databases
PaaS providers provide various databases such as ClearDB, PostgreSQL, MongoDB, and
Redis to communicate with the applications.
4. Other tools
PaaS providers provide various other tools that are required to develop, test, and deploy
the applications.
Advantages of PaaS
There are the following advantages of PaaS -
1) Simplified Development
PaaS allows developers to focus on development and innovation without worrying about infrastructure management.
2) Lower risk
No need for up-front investment in hardware and software. Developers only need a PC and an internet connection to
start building applications.
3) Prebuilt business functionality
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.
4) Instant community
PaaS vendors frequently provide online communities where the developer can get the ideas to share experiences and
seek advice from others.
5) Scalability
Applications deployed can scale from one to thousands of users without any changes to the applications.
Disadvantages of PaaS cloud computing layer
1) Vendor lock-in
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.
2) Data Privacy
Corporate data, whether it can 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.
3) Integration with the rest of the systems applications
It may happen that some applications are local, and some are in the cloud. So there will be chances of increased
complexity when we want to use data which in the cloud with the local data.
Software as a Service | SaaS
SaaS is also known as "On-Demand Software". It is a software distribution model in which services are hosted by a
cloud service provider. These services are available to end-users over the internet so, the end-users do not need to install
any software on their devices to access these services.

There are the following services provided by SaaS providers -


Business Services - 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
providers) to create, manage, and track electronic documents.

Example: Slack, Samepage, Box, and Zoho Forms.


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 offering
their services using SaaS.
Advantages of SaaS cloud computing layer
1. SaaS is easy to buy
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.
2. One to Many
SaaS services are offered as a one-to-many model means a single instance of the application is shared by multiple
users.
3. Less hardware required for SaaS
The software is hosted remotely, so organizations do not need to invest in additional hardware.
4. Low maintenance required for SaaS
Software as a service removes the need for installation, set-up, and daily maintenance for the organizations. The
initial set-up cost for SaaS is typically less than the enterprise software. SaaS vendors are pricing their applications
based on some usage parameters, such as a number of users using the application. So SaaS does easy to monitor and
automatic updates.
5. No special software or hardware versions required
Disadvantages of SaaS cloud computing layer
1) Security
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.
2) Latency issue
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.
3) Total Dependency on Internet
Without an internet connection, most SaaS applications are not usable.
4) Switching between SaaS vendors is difficult
Switching SaaS vendors involves the difficult and slow task of transferring the very large data files over the internet
and then converting and importing them into another SaaS also.
Virtualization in Cloud Computing

• Virtualization is the "creation of a virtual (rather than actual) version of something, such as a
server, a desktop, a storage device, an operating system or network resources".

• In other words, Virtualization is a technique, which allows to share a single physical instance of a
resource or an application among multiple customers and organizations. It does by assigning a
logical name to a physical storage and providing a pointer to that physical resource when
demanded.
What is the concept behind the Virtualization?
Creation of a virtual machine over existing operating system and hardware is known as Hardware
Virtualization. A Virtual machine provides an environment that is logically separated from the
underlying hardware.
The machine on which the virtual machine is going to create is known as Host Machine and that
virtual machine is referred as a Guest Machine
Types of Virtualization
1) Hardware Virtualization:
When the virtual machine software or virtual machine manager (VMM) is directly installed on the hardware system is
known as hardware virtualization.
After virtualization of hardware system we can install different operating system on it and run different applications on
those OS.
Usage:
Hardware virtualization is mainly done for the server platforms, because controlling virtual machines is much easier
than controlling a physical server.
2) Operating System Virtualization:
When the virtual machine software or virtual machine manager (VMM) is installed on the Host operating
system instead of directly on the hardware system is known as operating system virtualization.
Usage:
Operating System Virtualization is mainly used for testing the applications on different platforms of OS.
3) Server Virtualization:
When the virtual machine software or virtual machine manager (VMM) is directly installed on the Server
system is known as server virtualization.
Usage:
Server virtualization is done because a single physical server can be divided into multiple servers on the demand
basis and for balancing the load.
4) Storage Virtualization:
Storage virtualization is the process of grouping the physical storage from multiple network storage devices so
that it looks like a single storage device.
Storage virtualization is also implemented by using software applications.
How does virtualization work in cloud computing?
Virtualization plays a very important role in the cloud computing technology, normally in the cloud computing, users
share the data present in the clouds like application etc, but actually with the help of virtualization users shares the
Infrastructure.

Ø The main usage of Virtualization Technology is to provide the applications with the standard versions to their
cloud users, suppose if the next version of that application is released, then cloud provider has to provide the latest
version to their cloud users and practically it is possible because it is more expensive.
Ø To overcome this problem we use basically virtualization technology, By using virtualization, all severs and the
software application which are required by other cloud providers are maintained by the third party people, and the
cloud providers has to pay the money on monthly or annual basis.
Thanks & Cheers!!

Small aim is a crime; have great aim.


Bharat-Ratan A. P. J. Abdul Kalam

You might also like