Containers - Cloud Phoenix March Meetup

544 views

Published on

Containers - Cloud Phoenix March Meetup 2014

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
544
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
14
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Containers - Cloud Phoenix March Meetup

  1. 1. Linux Containers OpenVZ, LXC
  2. 2. Let’s do this • What are they? • And I can use them for? • How do they work? • OpenVZ • LXC • Container Management • Docker
  3. 3. Containers – What are they? “Is an operating system–level virtualization method for running multiple isolated Linux systems (containers) on a single control host.” … Wikipedia “Chroot with steroids” … Interwebs “OS-level Virtualization” … Interwebs It has been around for almost over a decade.
  4. 4. VM vs Container
  5. 5. And can I use them for? • Running multiple versions of software (centos 5 and centos 6 or ubuntu 10 and ubuntu 12) • Running many copies of applications configurations on the same host • Create sandbox environments for development and testing • Provide user environments whose resources are tightly controlled. • VPS and PaaS
  6. 6. How do they work? • OS Virtualization (Linux over Linux only… Sorry MS) • Share the same hardware (No HW virtualization) • Container has its own isolated namespaces • Network over bridge/NAT/tunnel
  7. 7. OpenVZ • Kernel features o Namespaces: virtualization and isolation o Cgroups: resource management o Checkpoint/restart: freeze and unfreeze • Tools o Vzctl - Containers control utility • Templates o Precreatedimages for fast provisioning • Each container has its own o Files (chroot) o Process tree (PID) o Network (net namespace) o Devices o IPC • Kernel 2.6 support • Production ready • Supported by CentOS, RHEL, Ubuntu, Debian • Used in many VPS • Biggest contributors to LXC
  8. 8. LXC • Kernel > 2.6.30 • Namespaces o Utsname o IPC o PID o User o Network o Devices • Control Groups o Namespace o Devices o Scheduler o CPU and memory • Most distros will support it but if not you can download it from https://github.com/lxc/l xc • Network available through bridge, NAT or vpn tunnel
  9. 9. Container Management • Some tools out there which are Open Source: o FOSVM o HyperVM o OpenVZ Web Panel
  10. 10. Docker for LXC • Open Source engine which allows you to deploy multiple containers over LXC • Created by dotCloud • Popular between devs that run ubuntu • Not production ready • Downside is that requires AUFS/LXC (bad luck RHEL/CentOS)
  11. 11. Let’s play DEMO
  12. 12. Questions? openvz.org Linuxcontainers.org www.docker.io https://wiki.archlinux.org/index.php/Linux_Containers https://help.ubuntu.com/lts/serverguide/lxc.html http://wiki.centos.org/HowTos/LXC-on-CentOS6
  13. 13. Thanks

×