9/30/2016 OpenVZ: Linux Containers Kir Kolyshkin LinuxCon 2009, Portland.

Slides:



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

Linux Virtualization Kir Kolyshkin OpenVZ project manager.
Profit from the cloud TM Parallels Dynamic Infrastructure AndOpenStack.
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.
VIRTUALIZATION WITH SOLARIS A.V.Bogdanov, PyaeSoneKoKo State Marine Technical University, St.petersburg.
Introduction to Virtualization
Operating Systems High Level View Chapter 1,2. Who is the User? End Users Application Programmers System Programmers Administrators.
INTRODUCTION OS/2 was initially designed to extend the capabilities of DOS by IBM and Microsoft Corporations. To create a single industry-standard operating.
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 access memory.
Virtualization for Cloud Computing
A Brief Introduction To Virtualization Technologies Yin Yunqiao HP.
LINUX Virtualization Running other code under LINUX.
Linux Virtualization Kir Kolyshkin OpenVZ project manager.
Virtualization A way To Begin with Virtual Reality… - Rahul Khanwani.
Methodologies, strategies and experiences Virtualization.
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.
Hosting Virtual Networks on Commodity Hardware VINI Summer Camp.
Virtualization Lab 3 – Virtualization Fall 2012 CSCI 6303 Principles of I.T.
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.
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.
Recent advances in the Linux kernel resource management Kir Kolyshkin, OpenVZ
Containers are the future of Cloud Pavel Odintsov CTO, FastVPS Eesti OU
 Virtual machine systems: simulators for multiple copies of a machine on itself.  Virtual machine (VM): the simulated machine.  Virtual machine monitor.
Introduction to virtualization
A. Frank - P. Weisberg Operating Systems Structure of Operating Systems.
Full and Para Virtualization
Docker and Container Technology
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.
1 Chapter 2: Operating-System Structures Services Interface provided to users & programmers –System calls (programmer access) –User level access to system.
Intro To Virtualization Mohammed Morsi
Linux Virtualization Kir Kolyshkin OpenVZ project manager.
Open Source Virtualization Andrey Meganov RHCA, RHCX Consultant / VDEL
Virtualization Neependra Khare
Linux Virtualization Kir Kolyshkin OpenVZ project manager.
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.
VM vs Container Xen, KVM, VMware, etc. ● Hardware emulation / paravirtualization ● Can run different OSs on the same box ● Dozens of instances ● OS sprawl.
Seven Problems of Linux Containers
Virtualization for Cloud Computing
A move towards Greener Planet
Virtualization in Grid Rock
Fundamentals Sunny Sharma Microsoft
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,
Lesson Objectives Aims Key Words
Building a Virtual Infrastructure
Linux Virtualization Kir Kolyshkin OpenVZ project manager.
Operating System Structure
Containers and Virtualisation
Virtualization overview
Oracle Solaris Zones Study Purpose Only
CIT 480: Securing Computer Systems
Overview Introduction VPS Understanding VPS Architecture
OS Virtualization.
HC Hyper-V Module GUI Portal VPS Templates Web Console
Intro. To Operating Systems
Lecture Topics: 11/1 General Operating System Concepts Processes
Prof. Leonardo Mostarda University of Camerino
Lecture9: Embedded Network Operating System: cisco IOS
Lecture9: Embedded Network Operating System: cisco IOS
CS 111 – Sept. 20 Operating Systems Commitment: definition origin
Presentation transcript:

9/30/2016 OpenVZ: Linux Containers Kir Kolyshkin LinuxCon 2009, Portland

2 Agenda Different approaches Containers, OpenVZ Usage scenarios Project past and future

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

4 Ways to Virtualize Hardware Emulation Para-Virtualization Containers-type Virtualization (a.k.a. OS-level Virtualization) Multi-server virtualization

5 Emulation/Paravirtualization VMware Parallels QEmu Bochs Xen UML (User Mode Linux) KVM

6 Containers OpenVZ / Parallels Containers FreeBSD jails Linux-VServer Solaris Containers/Zones IBM AIX6 WPARs (Workload Partitions)

7 Comparison Can run different OSs on the same box Low density/scalability Slow/complex management – OS sprawl problem Lower performance Single OS per box: easier to manage High density Dynamic resource allocation, best scalability Native performance: [almost] no overhead

8 OpenVZ vs. Xen from HP labs For all the configuration and workloads we have tested, Xen incurs higher virtualization overhead than OpenVZ does For all the cases tested, the virtualization overhead observed in OpenVZ is limited, and can be neglected in many scenarios Xen systems becomes overloaded when hosting four instances of RUBiS, while the OpenVZ system should be able to host at least six without being overloaded

9 Evolution of Operating Systems Multitask many processes Multiuser many users Multicontainer many containers (VEs, VPSs, guests, partitions...)

10 OpenVZ: components  Kernel  Virtualization and Isolation  Resource Management  Checkpointing  Tools  vzctl: containers control utility  vzpkg: container' software package management  Templates  precreated images for fast container creation

11 Kernel: Virtualization & Isolation Each container 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 Plus if needed, any VE can be granted access to real devices like network interfaces, serial ports, disk partitions, etc. IPC objects shared memory, semaphores, messages …

12 Kernel: Resource Management Managed resource sharing and limiting. User Beancounters is a set of per-CT resource counters, limits, and guarantees (kernel memory, network buffers, phys pages, etc.) Fair CPU scheduler (with shares and hard limits) Two-level disk quota (first-level: per-CT quota; second-level: ordinary user/group quota inside a CT) Disk I/O priority (also per-CT) Resource management is what makes OpenVZ different from other OS virtualization solutions.

13 Kernel: Checkpointing/Migration Complete CT state can be saved in a file  running processes  opened files  network connections, buffers, backlogs, etc.  memory segments CT state can be restored later CT can be restored on a different server

14 Tools: CT control # vzctl create ostemplate fedora-9 # 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

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

16 Density 768 (¾) MB RAM - up to 120 CTs

17 Users Feedback Hello all, just downloaded and installed OpenVZ, and i must say its a big improvement over other VPS systems that i have tested IMHO. I use virtuozzo in my day job and openvz is very much the same. Just no windows GUI which I hate using anyway! Virtuozzo and openvz are wonderful - I don't know why more people aren't using them. I hear a lot of hype for xen and usermode but virtuozzo/openvz is so great for many common needs. I'm very happy to be using openvz - very good for my side projects that I can't afford real virtuozzo for. Last week when we were in limbo about what to do, it was decided to try out XEN Virtualization. From what is written in the press the Xen system has alot of promise, but was far too complicated to get working in our configuration. OpenVZ was the only virtual server system that was simple to install and get working.

18 Usage Scenarios Server Consolidation Hosting Development and Testing Security Educational

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

20 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 CT is like a real server, just cheap Much easier to admin

21 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 CT is a sandbox – work and play, no fear

22 Security Several network services are running One of them has a hole Cracker gets through Put each service into a separate container OpenVZ creates walls between applications Added benefit: dynamic resource management

23 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

24 Mainstream kernel integration Collaborative community effort:  OpenVZ (Parallels), IBM (ex. Metacluster), Google, many individuals Current progress (as of linux ):  Namespace: PID, net, others  CGroups and [user] memory controller  Group-based fair CPU scheduler More to come – checkpointing – group-based I/O scheduler – More, more, more...

25 How can you help? Use OpenVZ Contribute to OpenVZ, be a part of community:  Programmer fixes enhancements new functionality  Non-programmer bug reports work with wiki answer support questions

26 To sum it up Platform-independent  as long as Linux supports it, we support it No problems with scalability or disk I/O  lots of memory, lots of CPUs no prob  native I/O speed Best possible performance Plays well with others (Xen, KVM, VMware)

27 Project Links Main site: Downloads: Sources: Forum: Bug Tracking: Blog: Mailing lists: