Distributed Systems COMP 212. Lecture 18 Othon Michail

Similar documents
CS 470 Spring Virtualization and Cloud Computing. Mike Lam, Professor. Content taken from the following:

Chapter 5 C. Virtual machines

Module 1: Virtualization. Types of Interfaces

Virtual Machines. Jinkyu Jeong Computer Systems Laboratory Sungkyunkwan University

How it can help your organisation

CS 350 Winter 2011 Current Topics: Virtual Machines + Solid State Drives

CS370 Operating Systems

Spring 2017 :: CSE 506. Introduction to. Virtual Machines. Nima Honarmand

The Challenges of X86 Hardware Virtualization. GCC- Virtualization: Rajeev Wankar 36

Virtualization. Dr. Yingwu Zhu

Operating Systems 4/27/2015

CLOUD COMPUTING IT0530. G.JEYA BHARATHI Asst.Prof.(O.G) Department of IT SRM University

What is Cloud Computing? Cloud computing is the dynamic delivery of IT resources and capabilities as a Service over the Internet.

COMPUTER ARCHITECTURE. Virtualization and Memory Hierarchy

Learning Outcomes. Extended OS. Observations Operating systems provide well defined interfaces. Virtual Machines. Interface Levels

Virtualization. ...or how adding another layer of abstraction is changing the world. CIS 399: Unix Skills University of Pennsylvania.

CS370 Operating Systems

Introduction to Cloud Computing and Virtualization. Mayank Mishra Sujesha Sudevalayam PhD Students CSE, IIT Bombay

Virtualization and memory hierarchy

CHAPTER 16 - VIRTUAL MACHINES

Lecture 5: February 3

Lecture 09: VMs and VCS head in the clouds

Virtualization Introduction

Multiprocessor Scheduling. Multiprocessor Scheduling

COS 318: Operating Systems. Virtual Machine Monitors

Using MySQL in a Virtualized Environment. Scott Seighman Systems Engineer Sun Microsystems

CS370 Operating Systems

Virtualization. Pradipta De

Introduction to Virtual Machines. Carl Waldspurger (SB SM 89 PhD 95) VMware R&D

Virtualization. Michael Tsai 2018/4/16

CSCI 8530 Advanced Operating Systems. Part 19 Virtualization

Virtualisation: The KVM Way. Amit Shah

Virtualization. Operating Systems, 2016, Meni Adler, Danny Hendler & Amnon Meisels

Virtualization. Starting Point: A Physical Machine. What is a Virtual Machine? Virtualization Properties. Types of Virtualization

Cloud Computing Virtualization

Virtualization. ! Physical Hardware Processors, memory, chipset, I/O devices, etc. Resources often grossly underutilized

The Architecture of Virtual Machines Lecture for the Embedded Systems Course CSD, University of Crete (April 29, 2014)

CprE Virtualization. Dr. Yong Guan. Department of Electrical and Computer Engineering & Information Assurance Center Iowa State University

Virtual Machines. Part 2: starting 19 years ago. Operating Systems In Depth IX 1 Copyright 2018 Thomas W. Doeppner. All rights reserved.

Cloud Computing Lecture 4

Linux and Xen. Andrea Sarro. andrea.sarro(at)quadrics.it. Linux Kernel Hacking Free Course IV Edition

Server Virtualization Approaches

CHAPTER 16 - VIRTUAL MACHINES

LINUX Virtualization. Running other code under LINUX

An overview of virtual machine architecture

Xen and CloudStack. Ewan Mellor. Director, Engineering, Open-source Cloud Platforms Citrix Systems

CS370: Operating Systems [Spring 2017] Dept. Of Computer Science, Colorado State University

references Virtualization services Topics Virtualization

I/O and virtualization

Originally prepared by Lehigh graduate Greg Bosch; last modified April 2016 by B. Davison

Virtual Machines. To do. q VM over time q Implementation methods q Hardware features supporting VM q Next time: Midterm?

Virtualization (II) SPD Course 17/03/2010 Massimo Coppola

Virtual Leverage: Server Consolidation in Open Source Environments. Margaret Lewis Commercial Software Strategist AMD

Introduction to Virtual Machines. Michael Jantz

The only open-source type-1 hypervisor

CS370: Operating Systems [Spring 2016] Dept. Of Computer Science, Colorado State University

OS Virtualization. Why Virtualize? Introduction. Virtualization Basics 12/10/2012. Motivation. Types of Virtualization.

Virtual Machine Systems

MANAGEMENT OF TASKS IN VIRTUALIZED ENVIRONMENTS

DISTRIBUTED SYSTEMS [COMP9243] Lecture 8a: Cloud Computing WHAT IS CLOUD COMPUTING? 2. Slide 3. Slide 1. Why is it called Cloud?

Cloud Networking (VITMMA02) Server Virtualization Data Center Gear

Virtual Machines Disco and Xen (Lecture 10, cs262a) Ion Stoica & Ali Ghodsi UC Berkeley February 26, 2018

What is KVM? KVM patch. Modern hypervisors must do many things that are already done by OSs Scheduler, Memory management, I/O stacks

Virtualization. Guillaume Urvoy-Keller UNS/I3S

A Survey on Virtualization Technologies

Introduction to Virtual Machines

Virtual Machine Security

DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S. TANENBAUM MAARTEN VAN STEEN. Chapter 3 Processes

Virtualization Overview

CS370: Operating Systems [Spring 2017] Dept. Of Computer Science, Colorado State University

EE 660: Computer Architecture Cloud Architecture: Virtualization

Unit 5: Distributed, Real-Time, and Multimedia Systems

Virtualization. Virtualization

Intel s Virtualization Extensions (VT-x) So you want to build a hypervisor?

Virtualization. Application Application Application. MCSN - N. Tonellotto - Distributed Enabling Platforms OPERATING SYSTEM OPERATING SYSTEM

The vsphere 6.0 Advantages Over Hyper- V

Nested Virtualization and Server Consolidation

Lecture 4: Extensibility (and finishing virtual machines) CSC 469H1F Fall 2006 Angela Demke Brown

Virtual Machine Monitors!

VMware Workstation 5 Lab. New Features and Capabilities: Multiple Snapshots, Teams, Clones, Video Capture and More

Testing System Virtual Machines

CS-580K/480K Advanced Topics in Cloud Computing. VM Virtualization II

System Virtual Machines

How CloudEndure Disaster Recovery Works

Overview of System Virtualization: The most powerful platform for program analysis and system security. Zhiqiang Lin

Roadmap for Challenging Times System Virtualiztion

What is Cloud Computing? What are the Private and Public Clouds? What are IaaS, PaaS, and SaaS? What is the Amazon Web Services (AWS)?

Virtualizing Oracle on VMware

Introduction to Virtualization

for Kerrighed? February 1 st 2008 Kerrighed Summit, Paris Erich Focht NEC

Concepts. Virtualization

Virtualization. join, aggregation, concatenation, array, N 1 ühendamine, agregeerimine, konkateneerimine, massiiv

System Virtual Machines

How CloudEndure Works

FAQ FOR VMWARE SERVER 2 - AUGUST, 2008

VIRTUALIZATION: IBM VM/370 AND XEN

OPS-9: Fun With Virtualization. John Harlow. John Harlow. About John Harlow

Virtualization. Darren Alton

The Future of Virtualization

EMC Smarts SAM, IP, ESM, MPLS, NPM, OTM, and VoIP Managers Support Matrix

Transcription:

Distributed Systems COMP 212 Lecture 18 Othon Michail

Virtualisation & Cloud Computing 2/27

Protection rings It s all about protection rings in modern processors Hardware mechanism to protect data and functionality from faults and malicious behaviour x86 processor can function in one of 4 modes Modern operating systems only use Ring 0 and Ring 3 x86 protection rings http://upload.wikimedia.org/wikipedia/en/2/2f/priv_rings.svg 3/27

Interfaces at different levels (1) Hardware software general machine instructions that can be invoked by any program. Hardware instructions software privileged machine that can be invoked only by privileged programs, such as an operating system. 4/27

Interfaces at different levels (2) System calls offered by an operating system A programmatic way in which a program requests a service from the kernel of the OS it is executed on (e.g. accessing a disk drive). Library calls generally forming what is known as an application programming interface (API) 5/27

Virtualization in a Nutshell Implementation of a virtual, instead of a physical version of a server, a storage device, an OS, etc. Threads and (mainly) processes maintain a virtual environment for a task (context) An illusion of parallelism is created Resource virtualization Other examples of virtualization: Storage virtualization (your CS network disk) Virtual memory (processes have own address space) Virtual machines (e.g. Java) VM Ware Virtualisation deals with extending or replacing an existing interface so as to mimic the behaviour of another system. 6/27

Architectures of Virtual Machines (1) Process Virtualisation (single process) Build a runtime system that provides an abstract instruction set. 7/27

Architectures of Virtual Machines (2) System Virtualisation (multiple processes) Provide a system that is implemented as a layer, completely shielding the original hardware. Offering the complete instruction set of the same (or another) hardware as an interface. Simultaneous use of this interface by different programs (multiple OS run independently on the same platform) 8/27

Desktop Virtualisation Benefits Desktop virtualisation, typically, allows one to run an entire (guest) operating system as a process within the (host) operating system controlling the hardware E.g. Ubuntu Linux in VirtualBox running under Windows Access to new and experimental technology Easy network programming Portability checks E.g. checking that your JavaScript works in IE6, IE7,.. Mozilla, Firefox, 9/27

Server Virtualisation Benefits Multiple servers live on a single physical machine. Abstraction Hide physical characteristics of hardware Isolation Run several logical servers on a single physical server Easily create heterogeneous environment Replication Reliability and scalability 10/27

Server Virtualisation Scenario (1) Consider a multi-tier heterogeneous system Requires three different machines to run Prone to failure Poor maintainability Microsoft IIS web server Linux application server Oracle DB 11/27

Server Virtualisation Scenario (2) Consider a virtualised multitier heterogeneous system Can run on one computer Prone to failure Can spread over a computer cluster Fault tolerant Scalable More stable Microsoft IIS web server Linux application server Oracle DB 12/27

Hardware-Assisted VMM Hardware-assisted virtualisation benefits from Running general instructions directly on the hardware Trapping privileged instructions Hardware Virtual OS Virtual process entity address space 13/27

VMM Principles Popek and Goldberg (1974): Equivalence Guest system should run in the same way as if the environment was not virtualised Resource control VMM takes full control over the virtualised resources Efficiency Majority of machine instructions should be executed without VMM interventions 14/27

Virtual Machine Monitor VMM intercepts operations that interfere with the host hardware Higher level of control than the operating system Hardware support (Ring -1) Intel VT-x, AMD-V Software virtualisation Modify guest OS Xen hypervisor Software emulation (slow) Modifying (parts of) guest code on the fly 15/27

System Snapshot A VMM can Stop/Freeze/Resume a VM Take a snapshot, archive and rollback Move/replicate a VM Downloadable appliances Live Migration Until moved Stop the source machine Copy some information Resume the machine Increased availability & load balancing 16/27

Example: VMWare Workstation / Fusion / Player VMWare Server (GSX server) runs over a Linux/Windows host VMWare Server (ESX server) runs natively Hosted virtualisation Bare-metal virtualisation 17/27

VMWare Infrastructure 18/27

Example: Microsoft Hyper-V Bare-metal solution Requires a copy of Windows Server in one of partitions Supports Windows and Linux guests Microsoft produced a Linux driver to improve performance 19/27

Example: VirtualBox Mainly desktop virtualization solution The bulk of it is free software Contains proprietary parts Software virtualization Runs the guest OS in Ring 1 (not used otherwise by many systems) Requires fiddling on the fly Hardware-assisted virtualization Runs a Ring -1 VMM Guest OS runs in Ring 0 (no modification needed) 20/27

Example: Xen Runs on bare metal Must have a master copy of OS (Linux o FreeBSD) Guest OS s are aware of being run in the virtualised environment paravirtualisation Offers both native and simulated hardware interfaces Now support hardware-assisted virtualisation 21/27

Unknown Resource Demands Scenario: a start-up company requires computing facilities Number of users?? Load on servers?? IT budget?? Answer: On-demand resource provisioning 22/27

Cloud Computing Virtual machines in the cloud Resizable computing capabilities Resizable storage You get a virtual machine to use it as you like (subject to terms and conditions) Service provider maintains the infrastructure You pay for what you consume There are other forms of cloud computing Google apps, 23/27

Example: Amazon EC2 Amazon Elastic Compute Cloud: Started as Amazon s own effort to service its customers Amazon maintains and supports the infrastructure Uses Xen virtualization Coupled with Amazon Simple Storage Service (Amazon S3) There are other cloud solutions 24/27

Note Remember that Moving your service into the cloud alone will not achieve scalability. The cloud provides means for Size scalability Geographical scalability You still need to manage scalability 25/27

Virtualisation & CC: Advantages Abstraction, isolation, distributed transparency Reliability, scalability (elasticity) Easy to create new clean machines Run legacy software Test new setups, configurations, updates, Lower computer costs 26/27

Virtualisation & CC: Disadvantages System can work differently in virtual environment Might not reach peak performance Security and privacy Loss of control Requires constant high-speed Internet Hard to move back (+loss of expertise) 27/27