August Penguin 2015 1
Virtualization Management
The oVirt way
Allon Mureinik
Supervisor, RHEV Storage
Red Hat
August Penguin, 07/08/2015
August Penguin 2015 2
Virtualization? Isn't that old news?
August Penguin 2015 3
The sad truth
August Penguin 2015 4
The sad truth
August Penguin 2015 5
Large scale, centralized
management for server and
desktop virtualization
Based on leading performance,
scalability and security
infrastructure technologies
Open source, all the way.
So what is oVirt?
August Penguin 2015 6
Committed to Open Source
“Early on in my tenure as CEO of Red Hat, we
acquired a company whose underlying technology
wasn’t entirely open source. But rewriting the code and
making it open source was going to mean months of
work, something I didn’t think we could afford. So, after
much debate and back-and-forth, I made the call to go
to market with the product as is. Big mistake.”
- Jim Whitehurst, Red Hat CEO, 2015
August Penguin 2015 7
Kernel-based Virtual Machine (KVM)
● Included in Linux kernel since 2006
● Runs Linux, Windows and other
operating system guests
● Advanced features
● Live migration
● Memory page sharing
● Thin provisioning
● PCI Pass-through
● KVM architecture provides high
“feature-velocity” – leverages the
power of Linux
August Penguin 2015 8
Using KVM
/usr/libexec/qemu-kvm -name vm-f16-buildmachine -S -M rhel6.4.0 -cpu
Westmere -enable-kvm -m 2048 -smp 2,sockets=2,cores=1,threads=1 -uuid a8ccdb60-8a42-44f5-
9669-d74c3b2eff43 -smbios type=1,manufacturer=Red Hat,product=RHEV
Hypervisor,version=6Server-6.4.0.4.el6,serial=30353036-3837-4247-3831-
30394635324C_78:e7:d1:22:46:d8,uuid=a8ccdb60-8a42-44f5-9669-d74c3b2eff43 -nodefconfig
-nodefaults -chardev socket,id=charmonitor,path=/var/lib/libvirt/qemu/vm-f16-
buildmachine.monitor,server,nowait -mon chardev=charmonitor,id=monitor,mode=control -rtc
base=2013-10-08T12:16:16,driftfix=slew -no-shutdown -device piix3-usb-
uhci,id=usb,bus=pci.0,addr=0x1.0x2 -device virtio-serial-pci,id=virtio-
serial0,bus=pci.0,addr=0x4 -drive if=none,media=cdrom,id=drive-ide0-1-
0,readonly=on,format=raw,serial= -device ide-drive,bus=ide.1,unit=0,drive=drive-ide0-1-
0,id=ide0-1-0 -drive file=/rhev/data-center/f79b0b28-c82f-11e0-8739-78e7d1e48c4c/5bab6470-
8825-4e3a-b408-ebcde93678b6/images/4c213cd2-c4d5-441b-a1ac-dfb1a6868699/11b3e132-50a5-481b-
b48b-e3b1f2879e69,if=none,id=drive-virtio-disk0,format=qcow2,serial=4c213cd2-c4d5-441b-a1ac-
dfb1a6868699,cache=none,werror=stop,rerror=stop,aio=native -device virtio-blk-
pci,scsi=off,bus=pci.0,addr=0x5,drive=drive-virtio-disk0,id=virtio-disk0,bootindex=1 -drive
file=/rhev/data-center/f79b0b28-c82f-11e0-8739-78e7d1e48c4c/5bab6470-8825-4e3a-b408-
ebcde93678b6/images/02330fa2-d1ff-48e0-a843-842c2376756f/5a283126-4d27-4eef-86dd-
fb538d8d08e4,if=none,id=drive-virtio-disk1,format=qcow2,serial=02330fa2-d1ff-48e0-a843-
842c2376756f,cache=none,werror=stop,rerror=stop,aio=native -device virtio-blk-
pci,scsi=off,bus=pci.0,addr=0x6,drive=drive-virtio-disk1,id=virtio-disk1 -netdev
tap,fd=31,id=hostnet0,vhost=on,vhostfd=32 -device virtio-net-
pci,netdev=hostnet0,id=net0,mac=00:1a:4a:23:12:13,bus=pci.0,addr=0x3,bootindex=2 -chardev
socket,id=charchannel0,path=/var/lib/libvirt/qemu/channels/vm-f16-
buildmachine.com.redhat.rhevm.vdsm,server,nowait -device virtserialport,bus=virtio-
serial0.0,nr=1,chardev=charchannel0,id=channel0,name=com.redhat.rhevm.vdsm -chardev
socket,id=charchannel1,path=/var/lib/libvirt/qemu/channels/vm-f16-
buildmachine.org.qemu.guest_agent.0,server,nowait -device virtserialport,bus=virtio-
serial0.0,nr=2,chardev=charchannel1,id=channel1,name=org.qemu.guest_agent.0 -chardev
spicevmc,id=charchannel2,name=vdagent -device virtserialport,bus=virtio-
serial0.0,nr=3,chardev=charchannel2,id=channel2,name=com.redhat.spice.0 -spice port=5904,tls-
port=5905,addr=10.35.16.4,x509-dir=/etc/pki/vdsm/libvirt-spice,tls-channel=main,tls-
channel=display,tls-channel=inputs,tls-channel=cursor,tls-channel=playback,tls-
channel=record,tls-channel=smartcard,tls-channel=usbredir,seamless-migration=on -k en-us -vga
qxl -global qxl-vga.ram_size=67108864 -global qxl-vga.vram_size=67108864
August Penguin 2015 9
But it's much more than KVM...
Live snapshot
ACPI support
SMP Guests
Live Migration
Over-commit
CPU, Memory, I/O
Hotpluging
I/O Throttling
SR-IOV
Live Storage Migration KSM
NUMASPICE
ballooning
Live Merge
sVirt
PCI pass through
DR
VEPA
Transparent huge pages
August Penguin 2015 10
Size does matter
August Penguin 2015 11
Eats workloads for breakfast
August Penguin 2015 12
Eats workloads for breakfast
● Some old news (oVirt 3.5):
● 4TB vRAM
● 160 vCPU
● >16K vDisks
August Penguin 2015 13
The three pillars of management
Stability DelegationSimplicity
August Penguin 2015 14
Stability
● Regular release schedule
● Well known release schedule
● Stabilization periods
● Community test days
● CI
● Involvement of big companies
● Red Hat's RHEV, obviously
● Contributions from IBM, Netapp, Cisco, etc.
● All of Open Source's inherit advantages
● Active users community
August Penguin 2015 15
Community is key
August Penguin 2015 16
Community is key
● Communication
● ~1500 distinct participants in the mailing lists
● ~300 distinct participants at #ovirt
● Issue tracking
● ~600 distinct reporters, from ~200 domains
● ~175 distinct assignees, from ~10 domains
● Code contribution
● 38 repositories
● ~270 contributors, from ~10 different companies
sources: http://www.ovirt.org/stats, http://bugzilla.redhat.com
August Penguin 2015 17
Proven User Base
source: http://www.ovirt.org/Category:Case_studies
August Penguin 2015 18
Simplicity
● Installation
● sudo yum install ­y ovirt­engine
● dnf in the next version...
● sudo engine­setup
● Varied user interaction mechanisms
● Intuitive web interface
● REST API
● CLI
● Python/Java SDKs available, Ruby bindings in
incubation
● oVirt Node
August Penguin 2015 19
How Does It Look?
August Penguin 2015 20
Functionality
August Penguin 2015 21
Search Auto Complete
August Penguin 2015 22
Search Results
August Penguin 2015 23
Add Host As Simple As
August Penguin 2015 24
Power Management
August Penguin 2015 25
Configure Networks
August Penguin 2015 26
Or Bonds
August Penguin 2015 27
Without Scripts or Config Files
August Penguin 2015 28
Configure Storage Once for Entire Cluster
August Penguin 2015 29
Extend with More LUNs as Needed
August Penguin 2015 30
Add Servers or Desktops
August Penguin 2015 31
Even Windows via Sysprep
August Penguin 2015 32
SPICE or VNC
August Penguin 2015 33
Migratable or Not
August Penguin 2015 34
Highly Available?
August Penguin 2015 35
Control Allocated Resources (Disk, Memory)
August Penguin 2015 36
Boot Devices
August Penguin 2015 37
Advanced Options via Custom Properties
August Penguin 2015 38
Assign Permissions to Objects by Roles
August Penguin 2015 39
Define Your Own Roles
August Penguin 2015 40
Delegation
August Penguin 2015 41
Delegation
August Penguin 2015 42
User Resource View
August Penguin 2015 43
Help Wanted!
August Penguin 2015 44
Get Involved
http://ovirt.org
devel@ovirt.org
users@ovirt.org
#ovirt @ OFTC
August Penguin 2015 45
THANK YOU!
amureini@redhat.com
https://www.linkedin.com/in/mureinik
@mureinik

Virtualization Management The oVirt Way (August Penguin 2015)

  • 1.
    August Penguin 20151 Virtualization Management The oVirt way Allon Mureinik Supervisor, RHEV Storage Red Hat August Penguin, 07/08/2015
  • 2.
    August Penguin 20152 Virtualization? Isn't that old news?
  • 3.
    August Penguin 20153 The sad truth
  • 4.
    August Penguin 20154 The sad truth
  • 5.
    August Penguin 20155 Large scale, centralized management for server and desktop virtualization Based on leading performance, scalability and security infrastructure technologies Open source, all the way. So what is oVirt?
  • 6.
    August Penguin 20156 Committed to Open Source “Early on in my tenure as CEO of Red Hat, we acquired a company whose underlying technology wasn’t entirely open source. But rewriting the code and making it open source was going to mean months of work, something I didn’t think we could afford. So, after much debate and back-and-forth, I made the call to go to market with the product as is. Big mistake.” - Jim Whitehurst, Red Hat CEO, 2015
  • 7.
    August Penguin 20157 Kernel-based Virtual Machine (KVM) ● Included in Linux kernel since 2006 ● Runs Linux, Windows and other operating system guests ● Advanced features ● Live migration ● Memory page sharing ● Thin provisioning ● PCI Pass-through ● KVM architecture provides high “feature-velocity” – leverages the power of Linux
  • 8.
    August Penguin 20158 Using KVM /usr/libexec/qemu-kvm -name vm-f16-buildmachine -S -M rhel6.4.0 -cpu Westmere -enable-kvm -m 2048 -smp 2,sockets=2,cores=1,threads=1 -uuid a8ccdb60-8a42-44f5- 9669-d74c3b2eff43 -smbios type=1,manufacturer=Red Hat,product=RHEV Hypervisor,version=6Server-6.4.0.4.el6,serial=30353036-3837-4247-3831- 30394635324C_78:e7:d1:22:46:d8,uuid=a8ccdb60-8a42-44f5-9669-d74c3b2eff43 -nodefconfig -nodefaults -chardev socket,id=charmonitor,path=/var/lib/libvirt/qemu/vm-f16- buildmachine.monitor,server,nowait -mon chardev=charmonitor,id=monitor,mode=control -rtc base=2013-10-08T12:16:16,driftfix=slew -no-shutdown -device piix3-usb- uhci,id=usb,bus=pci.0,addr=0x1.0x2 -device virtio-serial-pci,id=virtio- serial0,bus=pci.0,addr=0x4 -drive if=none,media=cdrom,id=drive-ide0-1- 0,readonly=on,format=raw,serial= -device ide-drive,bus=ide.1,unit=0,drive=drive-ide0-1- 0,id=ide0-1-0 -drive file=/rhev/data-center/f79b0b28-c82f-11e0-8739-78e7d1e48c4c/5bab6470- 8825-4e3a-b408-ebcde93678b6/images/4c213cd2-c4d5-441b-a1ac-dfb1a6868699/11b3e132-50a5-481b- b48b-e3b1f2879e69,if=none,id=drive-virtio-disk0,format=qcow2,serial=4c213cd2-c4d5-441b-a1ac- dfb1a6868699,cache=none,werror=stop,rerror=stop,aio=native -device virtio-blk- pci,scsi=off,bus=pci.0,addr=0x5,drive=drive-virtio-disk0,id=virtio-disk0,bootindex=1 -drive file=/rhev/data-center/f79b0b28-c82f-11e0-8739-78e7d1e48c4c/5bab6470-8825-4e3a-b408- ebcde93678b6/images/02330fa2-d1ff-48e0-a843-842c2376756f/5a283126-4d27-4eef-86dd- fb538d8d08e4,if=none,id=drive-virtio-disk1,format=qcow2,serial=02330fa2-d1ff-48e0-a843- 842c2376756f,cache=none,werror=stop,rerror=stop,aio=native -device virtio-blk- pci,scsi=off,bus=pci.0,addr=0x6,drive=drive-virtio-disk1,id=virtio-disk1 -netdev tap,fd=31,id=hostnet0,vhost=on,vhostfd=32 -device virtio-net- pci,netdev=hostnet0,id=net0,mac=00:1a:4a:23:12:13,bus=pci.0,addr=0x3,bootindex=2 -chardev socket,id=charchannel0,path=/var/lib/libvirt/qemu/channels/vm-f16- buildmachine.com.redhat.rhevm.vdsm,server,nowait -device virtserialport,bus=virtio- serial0.0,nr=1,chardev=charchannel0,id=channel0,name=com.redhat.rhevm.vdsm -chardev socket,id=charchannel1,path=/var/lib/libvirt/qemu/channels/vm-f16- buildmachine.org.qemu.guest_agent.0,server,nowait -device virtserialport,bus=virtio- serial0.0,nr=2,chardev=charchannel1,id=channel1,name=org.qemu.guest_agent.0 -chardev spicevmc,id=charchannel2,name=vdagent -device virtserialport,bus=virtio- serial0.0,nr=3,chardev=charchannel2,id=channel2,name=com.redhat.spice.0 -spice port=5904,tls- port=5905,addr=10.35.16.4,x509-dir=/etc/pki/vdsm/libvirt-spice,tls-channel=main,tls- channel=display,tls-channel=inputs,tls-channel=cursor,tls-channel=playback,tls- channel=record,tls-channel=smartcard,tls-channel=usbredir,seamless-migration=on -k en-us -vga qxl -global qxl-vga.ram_size=67108864 -global qxl-vga.vram_size=67108864
  • 9.
    August Penguin 20159 But it's much more than KVM... Live snapshot ACPI support SMP Guests Live Migration Over-commit CPU, Memory, I/O Hotpluging I/O Throttling SR-IOV Live Storage Migration KSM NUMASPICE ballooning Live Merge sVirt PCI pass through DR VEPA Transparent huge pages
  • 10.
    August Penguin 201510 Size does matter
  • 11.
    August Penguin 201511 Eats workloads for breakfast
  • 12.
    August Penguin 201512 Eats workloads for breakfast ● Some old news (oVirt 3.5): ● 4TB vRAM ● 160 vCPU ● >16K vDisks
  • 13.
    August Penguin 201513 The three pillars of management Stability DelegationSimplicity
  • 14.
    August Penguin 201514 Stability ● Regular release schedule ● Well known release schedule ● Stabilization periods ● Community test days ● CI ● Involvement of big companies ● Red Hat's RHEV, obviously ● Contributions from IBM, Netapp, Cisco, etc. ● All of Open Source's inherit advantages ● Active users community
  • 15.
    August Penguin 201515 Community is key
  • 16.
    August Penguin 201516 Community is key ● Communication ● ~1500 distinct participants in the mailing lists ● ~300 distinct participants at #ovirt ● Issue tracking ● ~600 distinct reporters, from ~200 domains ● ~175 distinct assignees, from ~10 domains ● Code contribution ● 38 repositories ● ~270 contributors, from ~10 different companies sources: http://www.ovirt.org/stats, http://bugzilla.redhat.com
  • 17.
    August Penguin 201517 Proven User Base source: http://www.ovirt.org/Category:Case_studies
  • 18.
    August Penguin 201518 Simplicity ● Installation ● sudo yum install ­y ovirt­engine ● dnf in the next version... ● sudo engine­setup ● Varied user interaction mechanisms ● Intuitive web interface ● REST API ● CLI ● Python/Java SDKs available, Ruby bindings in incubation ● oVirt Node
  • 19.
    August Penguin 201519 How Does It Look?
  • 20.
    August Penguin 201520 Functionality
  • 21.
    August Penguin 201521 Search Auto Complete
  • 22.
    August Penguin 201522 Search Results
  • 23.
    August Penguin 201523 Add Host As Simple As
  • 24.
    August Penguin 201524 Power Management
  • 25.
    August Penguin 201525 Configure Networks
  • 26.
  • 27.
    August Penguin 201527 Without Scripts or Config Files
  • 28.
    August Penguin 201528 Configure Storage Once for Entire Cluster
  • 29.
    August Penguin 201529 Extend with More LUNs as Needed
  • 30.
    August Penguin 201530 Add Servers or Desktops
  • 31.
    August Penguin 201531 Even Windows via Sysprep
  • 32.
    August Penguin 201532 SPICE or VNC
  • 33.
    August Penguin 201533 Migratable or Not
  • 34.
    August Penguin 201534 Highly Available?
  • 35.
    August Penguin 201535 Control Allocated Resources (Disk, Memory)
  • 36.
    August Penguin 201536 Boot Devices
  • 37.
    August Penguin 201537 Advanced Options via Custom Properties
  • 38.
    August Penguin 201538 Assign Permissions to Objects by Roles
  • 39.
    August Penguin 201539 Define Your Own Roles
  • 40.
    August Penguin 201540 Delegation
  • 41.
    August Penguin 201541 Delegation
  • 42.
    August Penguin 201542 User Resource View
  • 43.
    August Penguin 201543 Help Wanted!
  • 44.
    August Penguin 201544 Get Involved http://ovirt.org devel@ovirt.org users@ovirt.org #ovirt @ OFTC
  • 45.
    August Penguin 201545 THANK YOU! amureini@redhat.com https://www.linkedin.com/in/mureinik @mureinik