• No results found

CS 695 Topics in Virtualization and Cloud Computing and Storage Systems. Introduction

N/A
N/A
Protected

Academic year: 2021

Share "CS 695 Topics in Virtualization and Cloud Computing and Storage Systems. Introduction"

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?

(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

(5)

What is cloud computing?

Definition?

Where is it?

(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.

(7)

Cloud computing

Computing-as-a-service

All forms of computing

(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

(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

(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

(11)
(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

(13)

Cloud views

User 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

(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

(17)

Virtualization

Didn't you mention “virtualization” in the course

(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

(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

(20)
(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

(22)

Are we ready for world peace then?

What is the issue with abstraction oriented

(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

(24)

Virtualization

virtual: not real, illusionary, perception of reality

virtualize a component/resource

Map visible interface/resources onto those of

underlying physical system

(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

(26)

Process VM and System VM

Virtualization Software

Application

Operating System

Hardware

Virtualization Software

Application

Operating System

Hardware

Host

Guest

Runtime

(27)
(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

(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

(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

(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

Kernel-level virtualization is kind of an oddball in the virtualization world in that each VM uses its own unique kernel to boot the guest VM (called a root file system) regardless

So, the objective of the research in progress is to show how we are developing a study to answer the research question “what the skills are required of digital leaders to

Se vacunaba un bajo porcentaje de susceptibles con vacuna Salk a cargo del Seguro Obligatorio de Enfermedad (SOE), a la vez que un grupo de investigadores de la Escuela Nacional

Based on these relationships, we hypothesize that temperature is a leading control over the isotopic values of water in the Fredericksburg region, and that groundwater has

A minimum of 24 hours in Earned Value Management (EVM) and cost estimates training, or completion of one of the following courses or equivalent..

The operating system instance used to run hardware virtualization software (e.g. Microsoft Virtual Server or similar technologies) or to provide hardware virtualization services

The operating system instance used to run hardware virtualization software (e.g. Microsoft Virtual Server or similar technologies) or to provide hardware virtualization services

The operating system instance used to run hardware virtualization software (e.g. Microsoft Virtual Server or similar technologies) or to provide hardware virtualization services