Lecture 2

You might also like

Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 20

Cloud Computing

Lecture-II
Continued from Lecture-I

 We have covered in previous lecture:


 Introduction
 History
 Definitions of cloud computing
 Roots of Cloud computing
 Types of Clouds
 IaaS
Now…
IaaS: Pros & Cons

 Organizations choose IaaS because it is often easier, faster and more cost-
efficient to operate a workload without having to buy, manage and
support the underlying infrastructure.
 With IaaS, a business can simply rent or lease that infrastructure from
another business.
 In general, IaaS customers pay on a per use basis, typically by the hour,
week or month. Some IaaS providers also charge customers based on the
amount of virtual machine space they use
 Users should monitor their IaaS environments and bills closely to
understand how IaaS is being used, and to avoid being charged for
unauthorized services.
 The details of their infrastructure configuration and performance are
rarely transparent to IaaS users. This lack of transparency can make
systems management and monitoring more difficult for users.
 IaaS users are also concerned about service resilience. The workload's
availability and performance is highly dependent on the provider.
2) Platform as a Service

 Another approach is to provide higher level of abstraction to make a cloud


easily programmable, known as Platform as Service(PaaS)
 A cloud platform offers an environment on which developers create and
deploy applications and do not need to know how many processors or how
much processor or how much memory an application will be using.
 E.g. Google AppEngine-provides hosting web applications, written in Python
or Java
 Building blocks include an in-memory object cache, mail service, instant
messaging service(XMPP), image manipulation service, and integration with
Google Accounts authentic service.
PaaS: Advantages & Disadvantages

 The advantages of PaaS are primarily that it allows for higher-level


programming with dramatically reduced complexity; the overall development
of the application can be more effective, as it has built-in infrastructure; and
maintenance and enhancement of the application is easier.
 It can also be useful in situations where multiple developers are working on a
single project involving parties who are not located nearby.
 One disadvantage of PaaS offerings is that developers may not be able to use a
full range of conventional tools (e.g. relational databases, with unrestricted
joins).
 Another possible disadvantage is being locked in to a certain platform.
However, most PaaS services are relatively lock-in free
3) Software as a Service

 Services provided by this layer can be accessed by the end users through
web portals.
 Consumers are increasingly shifted from locally installed computer programs
to online software services that offer the same functionality.
 Traditionally, desktop applications such as word processing and spreadsheets
are accessed as a service in the web.
 This model of delivering such applications are known as “Software as a
Service(SaaS)”
 For example CRM(business productivity applications.
 Online word processing such as Google Docs.
SaaS: Advantages & Disadvantages

 Flexible payments
 Scalable usage
 Automatic updates
 Easy Accessibility
 Providers that experience service disruptions, impose unwanted changes to
service offerings, experience a security breach or any other issue can have a
profound effect on the customers' ability to use those SaaS offerings.
Deployment Models
Desired Features of a Cloud

 Following features of a cloud are essential to enable services that truly


represent the cloud computing model and satisfy expectations of
consumers:
1) Self Service-without intervention of human
2) Per-usage metered and billed
3) Elastic-provide resources in any quantity at any time
4) Customizable
Cloud Infrastructure Management

 The key challenge faced by the service providers when building a cloud
infrastructure is managing physical and virtual resources, namely servers,
storage and networks in a synchronized fashion
 It should be provided provisionally in a rapid and dynamic resourced way to
the application.
 The software responsible for it is called “Virtual Infra structure
manager(VIM)”
 Resembles to a traditional operating system, but instead of dealing with a
single computer, it deals with resources of multiple computers, presenting
a uniform view to users and applications
 Also known as “Cloud Operating System” & Virtual Infrastructure Engine
Features of Cloud Infrastructure
Managers:
 Virtualization support-multiple customer support to be served by a single
hardware. Can be sized and resized with certain flexibility
 Self Service, on Demand Resource Provisioning
 Multiple Backend Hypervisors- Multiple Managers
 Storage Virtualization- Aware of storage devices
 Interface to Public Clouds- Resources from other clouds is an advantage
 Virtual Networking- A virtual LAN allows isolating traffic that share the
same switched network and to block traffic originated from other VM from
other networks. A VPN is used to describe a secure and private
network(most commonly the public network)
Continued….
 Dynamic Resource Allocation- Energy consumption reduction and better
service level agreement can be achieved by remapping VMs to physical
machine at a regular intervals. Machine that are not assigned any VM can be
turned off or put on a low power state
 Reservation & Negotiation Mechanism-Requests for resources are available
at specific time and can be reserved. For complex requests, a VI manager
must allow users to lease resources expressing period time of reservations
 High Availability & Data Recovery
INFRASTRUCTURE AS A SERVICE
PROVIDERS
 Public Infrastructure as a Service providers commonly offer virtual servers
containing one or more CPUs, running several choices of operating systems
and a customized software stack.
 In addition, storage space and communication facilities are often
provided.
Features

 The most relevant features are:


(i) Geographic distribution of data centers;
To improve availability and responsiveness, a provider of worldwide services would
typically build several data centers distributed around the world. For example, Amazon
Web Services presents the concept of “availability zones” and “regions” for its EC2 service.
(ii) Variety of user interfaces and APIs to access the system;
Different types of user interfaces (UI) provide different levels of abstraction, the most
common being graphical user interfaces (GUI), command-line tools (CLI), and Web service
(WS) APIs.
(iii) Specialized components and services that aid particular applications (e.g., load
balancers, fire walls);
 Advance reservations allow users to request for an IaaS provider to reserve resources for a
specific time frame in the future, thus ensuring that cloud resources will be available at
that time.
 Amazon Reserved Instances is a form of advance reservation of capacity, allowing users to
pay a fixed amount of money in advance to guarantee resource availability at anytime
during an agreed period and then paying a discounted hourly rate when resources are in use
Continued….

(iv) Choice of virtualization platform and operating systems; and


 As mentioned earlier, elasticity is a key characteristic of the cloud
computing model. Applications often need to scale up and down to
meet varying load conditions.
 Automatic scaling is a highly desirable feature of IaaS clouds.
 It allow users to set conditions for when they want their applications to
scale up and down, based on application-specific metrics such as
transactions per second, number of simultaneous users, request latency,
and so forth.
(v) Different billing methods and period (e.g., prepaid vs. post-paid,
hourly vs. monthly).
PLATFORM AS A SERVICE PROVIDERS

 Public Platform as a Service providers commonly offer a development and


deployment environment that allow users to create and run their applications
with little or no concern to low-level details of the platform.
 In addition, specific programming languages and frameworks are made
available in the platform, as well as other services such as persistent data
storage and in memory caches.
Features
1) Programming Models, Languages, and Frameworks. Programming models made available by
IaaS providers define how users can express their applications using higher levels of abstraction
and efficiently run them on the cloud platform.
 Each model aims at efficiently solving a particular problem.
 E.g. high-performance distributed execution of various computational tasks.
 For user convenience, PaaS providers usually support multiple programming languages. Most
commonly used languages in platforms include Python and Java (e.g., Google AppEngine), .NET
languages etc
 For example: Force.com has devised its own programming language (Apex) and an Excel-like
query language, which provide higher levels of abstraction to key platform functionalities.
 A variety of software frameworks are usually made available to PaaS developers, depending on
application focus.
 Providers that focus on Web and enterprise application hosting offer popular frameworks such
as Java and .NET.
2) Persistence Options:
 A persistence layer is essential to allow applications to record their state and recover it in
case of crashes.
Challenges & Risks
 Despite the initial success and popularity of the cloud computing paradigm
and the extensive availability of providers and tools, a significant number of
challenges and risks are inherent to this new model of computing.
 Providers, developers, and end users must consider these challenges and risks
to take good advantage of cloud computing
 Issues to be faced include :
1) User privacy
2) Data security,
3) Data lock-in,
4) Availability of service,
5) Disaster recovery,
6) Performance,
7) Scalability,
8) Energy efficient , and
9) Programmability.
Assignment 1

Describe the main features of the most popular VI managers available?

You might also like