Linux Virtualization Kir Kolyshkin OpenVZ project manager.

Slides:



Advertisements
Similar presentations
Virtual Machine Technology Dr. Gregor von Laszewski Dr. Lizhe Wang.
Advertisements

Linux Virtualization Kir Kolyshkin OpenVZ project manager.
Virtual Machines What Why How Powerpoint?. What is a Virtual Machine? A Piece of software that emulates hardware.  Might emulate the I/O devices  Might.
Xen and the Art of Virtualization A paper from the University of Cambridge, presented by Charlie Schluting For CS533 at Portland State University.
Cambodia-India Entrepreneurship Development Centre - : :.... :-:-
Virtualization for Cloud Computing
Installing software on personal computer
Linux Virtualization Kir Kolyshkin OpenVZ project manager.
Virtualization A way To Begin with Virtual Reality… - Rahul Khanwani.
Using Virtualization in the Classroom. Using Virtualization in the Classroom Session Objectives Define virtualization Compare major virtualization programs.
Methodologies, strategies and experiences Virtualization.
Linux Basics CS 302. Outline  What is Unix?  What is Linux?  Virtual Machine.
Tanenbaum 8.3 See references
Operating System Virtualization
About the Presentations The presentations cover the objectives found in the opening of each chapter. All chapter objectives are listed in the beginning.
Virtual Infrastructure in the Grid Kate Keahey Argonne National Laboratory.
Microkernels, virtualization, exokernels Tutorial 1 – CSC469.
SAIGONTECH COPPERATIVE EDUCATION NETWORKING Spring 2010 Seminar #1 VIRTUALIZATION EVERYWHERE.
SAIGONTECH COPPERATIVE EDUCATION NETWORKING Spring 2009 Seminar #1 VIRTUALIZATION EVERYWHERE.
A Cloud is a type of parallel and distributed system consisting of a collection of inter- connected and virtualized computers that are dynamically provisioned.
OpenVZ Live Migration Jim Owens. Overview Review of OpenVZ Features Resource management Installation VM creation VM management Checkpointing Migration.
Linux Virtualization Technology Alternatives Kir Kolyshkin OpenVZ project manager Rencontres Mondiales du Logiciel Libre 13 July 2007.
An overview of OpenVZ virtualization technology Kir Kolyshkin OpenVZ project manager Gelato ICE 17 Apr 2007.
Using Virtualization in the Classroom. Using Virtualization in the Classroom Session Objectives Define virtualization Compare major virtualization programs.
V IRTUALIZATION Sayed Ahmed B.Sc. Engineering in Computer Science & Engineering M.Sc. In Computer Science.
Section 3.1: Operating Systems Concepts 1. A Computer Model An operating system has to deal with the fact that a computer is made up of a CPU, random.
Virtual Machine and its Role in Distributed Systems.
A study of introduction of the virtualization technology into operator consoles T.Ohata, M.Ishii / SPring-8 ICALEPCS 2005, October 10-14, 2005 Geneva,
Introduction to virtualization
A. Frank - P. Weisberg Operating Systems Structure of Operating Systems.
Full and Para Virtualization
Operating-System Structures
Hands-On Virtual Computing
Cloud Computing Lecture 5-6 Muhammad Ahmad Jan.
VM vs Container Xen, KVM, VMware, etc. Hardware emulation / paravirtualization Can run different OSs on the same box Dozens of instances OS sprawl problem.
Course 03 Basic Concepts assist. eng. Jánó Rajmond, PhD
Intro To Virtualization Mohammed Morsi
Harvesting Free Windows CPU Cycles for Linux Applications using Sandboxing Rasmus Andersen Dept. of Computer Science, University of Copenhagen, Denmark.
Open Source Virtualization Andrey Meganov RHCA, RHCX Consultant / VDEL
Virtualization Neependra Khare
Solaris containers (Zones) Server virtualization What zones are and how they are used in ECE/CIS at the University of Delaware Ben Miller.
Linux Virtualization Kir Kolyshkin OpenVZ project manager.
9/30/2016 OpenVZ: Linux Containers Kir Kolyshkin LinuxCon 2009, Portland.
Containers vs Others Xen, VMware, etc. ● Emulation/paravirtualization ● Can run different OSs on the same box ● Lower density/scalability ● OS sprawl problem.
An overview of OpenVZ virtualization technology Kir Kolyshkin OpenVZ project manager Gelato ICE 17 Apr 2007.
XEN – The Art of Virtualisation. So what is Virtualisation? ● Makes use of spare capacity ● Run multiple instances of OSes simultaneously ● Multitasking.
VirtualBox Introduction:
Seven Problems of Linux Containers
Using Virtualization in the Classroom
Virtualization for Cloud Computing
A move towards Greener Planet
Fundamentals Sunny Sharma Microsoft
Agenda Hardware Virtualization Concepts
CSC 482/582: Computer Security
Presented by Yoon-Soo Lee
Current Generation Hypervisor Type 1 Type 2.
What is Virtualization Last Update
Container-based Operating System Virtualization: A scalable, High-performance Alternative to Hypervisors Stephen Soltesz, Herbert Potzl, Marc E. Fiuczynski,
Linux Virtualization Kir Kolyshkin OpenVZ project manager.
Operating System Structure
Containers and Virtualisation
Virtualization overview
CIT 480: Securing Computer Systems
Chapter 2. Malware Analysis in VMs
Overview Introduction VPS Understanding VPS Architecture
OS Virtualization.
Virtualization Layer Virtual Hardware Virtual Networking
HC Hyper-V Module GUI Portal VPS Templates Web Console
Partition Starter Find out what disk partitioning is, state key features, find a diagram and give an example.
Virtualization Dr. S. R. Ahmed.
Presentation transcript:

Linux Virtualization Kir Kolyshkin OpenVZ project manager

2 What is virtualization? Virtualization is a technique for deploying technologies. Virtualization creates a level of indirection or an abstraction layer between a physical object and the managing or using application. Virtualization is a framework or methodology of dividing the resources of a computer into multiple execution environments... A key benefit of the virtualization is the ability to run multiple operating systems on a single physical server and share the underlying hardware resources – known as partitioning.

3 Ways to Virtualize ● Hardware Emulation ● Para-Virtualization ● Virtualization on the OS level ● Multi-server virtualization

4 Hardware Emulation a.k.a. VM (Virtual Machine) – VMware – QEmu – Bochs Pros: ● Can run arbitrary OS, unmodified Cons: ● Low density/scalability ● Slow/complex management ● Low performance

5 Para-virtualization Xen UML (User Mode Linux) Multiple (modified) OSs run under a hypervisor (a.k.a. Virtual Machine Monitor), which shares the hardware resources between guests. Pros: ● Better performance Cons: ● Needs modified guest OS ● Static resource allocation, bad scalability, bad manageability

6 OS Level Virtualization OpenVZ FreeBSD jails Linux-VServer Solaris Zones Pros: ● Native performance ● Dynamic resource allocation, best scalability Cons: ● Single (same) kernel per physical server Most applications running on a server can easily share a machine with others, if they could be isolated and secured. OS Virtualization provides the required isolation and security to run multiple applications or copies of the same OS on the same server. (OS == kernel)

7 OSs evolution ● Multitask many processes ● Multiuser many users ● Multiple execution environments many Virtual Private Servers (VPSs, containers, guests, partitions...)

8 OpenVZ design approach

9 OpenVZ: components  Kernel – Isolation – Virtualization – Resource Management  Tools – vzctl: Virtual Private Server (VPS) control utility – vzpkg: VPS software package management  Templates – precreated VPS images for fast VPS creation

10 Kernel: Virtualization & Isolation Each VPS has its own ● Files System libraries, applications, virtualized /proc and /sys, virtualized locks etc. ● Process tree Featuring virtualized PIDs, so that the init PID is 1 ● Network Virtual network device, its own IP addresses, set of netfilter and routing rules ● Devices If needed, any VPS can be granted access to real devices like network interfaces, serial ports, disk partitions, etc. ● IPC objects shared memory, semaphores, messages ● …

11 Kernel: Resource Management Managed resource sharing and limiting. ● User Beancounters is a set of per-VPS resource counters, limits, and guarantees (kernel memory, network buffers, phys pages, etc.) ● Fair CPU scheduler (SFQ with shares and hard limits) ● Two-level disk quota (first-level: per-VPS quota; second-level: ordinary user/group quota inside a VPS) Resource management is what makes OpenVZ different from other technologies.

12 Tools: VPS control # vzctl create ostemplate fedora-core-4 # vzctl set ipadd save # vzctl start 101 # vzctl exec 101 ps ax PID TTY STAT TIME COMMAND 1 ? Ss 0:00 init ? Ss 0:00 syslogd -m ? Ss 0:00 /usr/sbin/sshd ? Ss 0:00 xinetd -stayalive -pidfile ? Ss 0:00 sendmail: accepting connections ? Ss 0:00 sendmail: Queue ? Ss 0:00 /usr/sbin/httpd ? S 0:00 \_ /usr/sbin/httpd ? S 0:00 \_ /usr/sbin/httpd 6416 ? Rs 0:00 ps axf # vzctl enter 101 bash# logout # vzctl stop 101 # vzctl destroy 101

13 Tools: Templates # vzpkgls fedora-core-4-i386-default centos-x86_64-minimal # vzpkgcache (creates templates from metadata/updates existing templates) # vzyum 101 install gcc (installs gcc and its deps to VPS 101)

Live Migration ● A VPS can be migrated between physical servers ● No need to shutdown ● Network connections are preserved ● Users will not notice the migration ● No special hardware requirements: works with non-shared storage, normal NICs

15 Scalability 768 (¾) MB RAM - up to 120 VPSs 2GB RAM - up to 320 VPSs

16 Users Feedback

17 Usage Scenarios ● Server Consolidation ● Hosting ● Development and Testing ● Security ● Educational

18 Server Consolidation A bunch of servers: ● harder to manage ● upgrade is a pain ● eats up rack space ● high electricity bills A bunch of VPSs: ● uniform management ● easily upgradeable and scalable ● fast migration

19 Hosting ● Web server serving hundreds of virtual hosts ● Users see each other processes etc ● DoS attacks ● Unable to change/upgrade hardware ● Users are isolated from each other ● VPS is like a real server, just cheap ● Much easier to admin

20 Development & Testing ● A lot of hardware ● Zoo: many different Linux distros ● Frequent reinstalls take much time ● Fast provisioning ● Different distros can co-exist on one box ● Cloning, snapshots, rollbacks ● VPS is a sandbox – work and play, no fear

21 Security ● Several network services are running ● One of them has a hole ● Cracker gets through ● Whoops...”all your base are belong to us” ● Put each service into a separate VPS ● OpenVZ creates walls between applications ● Added benefit: dynamic resource management

22 Educational ● No root access ● Frequent reinstalls ● DoS attacks ● Everybody and his dog can have a root access ● Different Linux distros ● No need for a lot of hardware

23 Future plans ● Inject into Linux distros: Novell, Red Hat, Debian etc. ● IP v6 support ● Merge into mainstream kernel

24 OpenVZ Project Role ● Freely distribute and offer support to make virtualization technology accessible ● Serve the needs of the community developers, testers, documentation experts, and other technology enthusiasts who wish to participate in and accelerate the technology development process ● We hope many, many users will benefit from OpenVZ software technology, which helps increase server utilization ● The OpenVZ website is an open door to operating system virtualization software built on Linux

25 Your role ● Use OpenVZ ● Contribute to OpenVZ, be a part of community: – Programmer ● fixes ● enhancements ● new functionality – Non-programmer ● bug reports ● documentation, how-tos ● answer support questions

26 One example Web Control Panel for OpenVZ

27 Project Links ● Main site: ● Downloads: ● GIT source repo: ● Forum: ● Bug Tracking: ● Blog: ● Mailing lists: