• No results found

Cloud Computing

N/A
N/A
Protected

Academic year: 2022

Share " Cloud Computing"

Copied!
33
0
0

Loading.... (view fulltext now)

Full text

(1)

CS 695

Topics in Virtualization and Cloud Computing

and Storage Systems

(2)

Hot or not?

source: Gartner Hype Cycle for Emerging Technologies, 2014

(3)
(4)

Cloud Computing

The in-vogue term

Cloud is the network

Network is the cloud

Cloud storage, storage cloud

Cloud-based e-learning

Application in cloud, cloud application

Smart cloud

Cloud and phones

(5)

What is cloud computing?

Definition?

Where is it?

Why the hoopla?

(6)

scale your infrastructure on demand within minutes or even seconds, instead of days or weeks, thereby avoiding under-utilization (idle servers) and over-utilization

'internet centric software.' ... shift from the traditional single tenant approach to software development to that of a scalable, multi-tenant, multi-platform, multi-network, and global a broad array of web-based services aimed at allowing users to obtain a wide range of functional capabilities on a 'pay-as-you-go' basis

…basically the broad concept of using the internet to allow people to access technology- enabled services ... services must be 'massively scalable' to qualify as true 'cloud

computing'

The 'cloud' model initially has focused on making the hardware layer consumable as on- demand compute and storage capacity.

Cloud computing really is accessing resources and services needed to perform functions with dynamically changing needs. ... The cloud is a virtualization of resources that maintains and manages itself.

outsourced, pay-as-you-go, on-demand, somewhere in the Internet, etc.

(7)

Cloud computing

Computing-as-a-service

All forms of computing

Analogies?

(8)

Cloud characteristics

On-demand service

User not worried about maintenance and setup issues etc.

Shared Resources

Large capacity distributed/multiplexed over several users

Flexible Provisioning

Dynamically scale resources

Fine-grained metering

pay-as-you-use model

(9)

Is the 'Cloud' brand new?

NO!

60s-70s, large centralized servers carved up for individual access

Cluster computing

Grid computing

Utility computing

Peaking now

Decreasing cost of powerful hardware

Virtualization

Economics

(10)

Cloud service models

IaaS

Infrastructure as a Service

Amazon EC2, Ubuntu One, IBM Test Cloud

PaaS

Platform as a service

Google Appengine, Windows Azure

SaaS

Software as a service

Gmail, Google online services

*aaS

(11)

Cloud deployments

(12)

Cloud deployment options

Private cloud

Infrastructure for a single organization

Internal hosting, testing environment

Public cloud

Infrastructure for general use

Cloud provider owns service

Hybrid cloud

Composition of private+public

Secure/non-secure or QoS/best-effort traffic, Cloud bursting

(13)

Cloud views

User view

Provider view

(14)

User-view of the Cloud

On-demand provisioning

Resource, software, services

Quick deployment

Security and isolation

SLA requirements

Service-level agreement

Availability, isolation, performance metrics ...

Pay-on-use model

Minimize cost for service

(15)

Providers-view of the Cloud

Support on-demand provisioning

Resource accounting and provisioning

Efficient provisioning

Reactive and quick

High multiplexing desired

Meet SLA requirements of users

Allocate minimum to maximize profit/#users

Power!

(16)

Administration and Manageability

Data Privacy

Data Services Architectures

Distributed and Parallel Query Processing

Energy Management

Distributed and Cloud Networking

High Availability and Reliability

Infrastructure Technologies

Large Scale Cloud Applications

Multi-Tenancy

Scope of cloud computing

Programming Models

Provisioning and Metering

Resource Management and Performance

Scientific Data Management

Security of Services

Service Level Agreements

Storage Architectures

Transactional Models

Virtualization Technologies

source: Call for papers ACM SOCC 2015

(17)

Virtualization

Didn't you mention “virtualization” in the course

title?

(18)

Begin from the beginning

Computer systems are incredibly complex

silicon, transistors, disks, processors, network cards, buses ...

device drivers, operating systems, compilers, application libraries ...

But still,

Systems evolving and flourishing

Why?

(19)

Abstractions and Interfaces

abstraction: concept or idea (w/o implementation specifics)

interface: operations/process related to abstraction

Complex systems organized as a hierarchy of abstractions

Well-defined interfaces allow independent evolution of sub- systems

(20)

Abstraction+Interface Examples

(21)

Abstraction+Interface Examples

1.Storage

Physical disk: tracks, sectors, disk head ...

User view: file (abstraction)

File operations (interface): OS + device driver

2.Network

3.ISA (Instruction Set Architecture)

x86 architecture (8086 based, 16-bit)

Intel, AMD, VIA ... manufacturers

Software runs on all x86 hardware

(22)

Are we ready for world peace then?

What is the issue with abstraction oriented

development?

(23)

Are we ready for world peace then?

What's the issue with abstraction oriented development?

Interoperability

Sub-systems designed for one interface will not work for other

e.g., binary incompatibility

(24)

Virtualization

virtual: not real, illusionary, perception of reality

virtualize a component/resource

Map visible interface/resources onto those of underlying physical system

real system appears virtual

(25)

Types of virtual machines

Process view of machine

memory, user-level instr., system calls for OS functions

OS interface to

hardware defines view of process

Process VM

System view of machine

environment to support multiple processes

sharing resources

hardware characteristics defines system view

System VM

(26)

Process VM and System VM

Virtualization Software Application

Operating System

Hardware Virtualization Software

Application

Operating System Hardware

Host Guest

Runtime

(27)

Process VM examples

(28)

Process VM examples

Multi-processing systems

Emulators

Fetch, decode, interpret

e.g., WINE, QEMU

High-level Language VMs

Compile for virtual architecture

Translate/execute on native platform

JAVA, .Net

(29)

System VM characteristics

Provide machine-view (virtual machines) to multiple operating systems

Resource allocations

cpu, memory, network, disk

Control/arbitrate VMs access to physical hardware

Isolation and Security

(30)

System VMs

Native VMs (type 1)

a.k.a Bare-metal VMs

Hypervisor/VMM on hardware, controls guests directly

Guest unaware of VM translation

Hosted VMs (type 2)

Hypervisor/VMM hosted on OS

Guests co-ordinated by VMM

Para-virtualized or Fully-virtualized VMs

Guest aware of underlying hypervisor?

(31)

Type of System VMs

Native VMs (Bare-metal)

VMware ESX

Hosted VMs

Xen

kvm

VMware GSX

VirtualBox

(32)

Virtualization benefits

Flexible resource provisioning

Increased Inter-operability

Standard virtualized interface

Isolation

Secure multiplexing, Local impact of crashes/bugs

Resource usage isolation

Machine State Capture

VM is a file

Snapshots, cloning, migration

Content distribution

(33)

Problem Areas

Virtualization technolgies Capacity planning and profiling

Physical to virtual (p2v)

Placement and Provisioning Resource Management

Migration and Consolidation management

Network I/O optimizations in virtual machines

Storage Issues with virtualization

References

Related documents

[1]Cloud Computing is defined as an internet based computing whereby different services in the shared resources , servers, information and shared resources are

While several algorithms have been proposed to manage the scheduling of jobs and allocation of different servers, in separate papers, we intend to combine a job scheduling

Cloud Computing refers to delivery of both the softwares as a service and the infrastructure and the platforms that provide those services. In other words , Cloud computing is

Keywords: Data Center, Cloud computing, Virtual Machines, Physical Machines, Workloads, Energy , Utilization of Resources.... List

In our load assigning technique assignment is done by the load balancer (LB) of cloud manager (CM) module in the basis of higher success rate and lower load of the available

Cloud computing is a model for enabling ubiquitous, convenient, on-demand net- work access to a shared pool of configurable computing resources (e.g., networks, servers,

3 Existing Cloud based Programming Model 14 4 Construction of a private cloud 15 4.1 Considerations for a private cloud... 5.2 Proposed

In cloud computing, resource management is an important task in scheduling of services, customer tasks, and hardware infrastructure... Chapter 1