Upgrade to Pro — share decks privately, control downloads, hide ads and more …

CloudOpen -Integrating oVirt, Foreman and Katello to Empower your Data-Center

CloudOpen -Integrating oVirt, Foreman and Katello to Empower your Data-Center

In those slides there is overview of oVirt, Foreman and Katello, then a dive into how oVirt integrates with Foreman and Katello to ease different flows in variant systems and data-centers. oVirt 3.5 integration with Foreman allows us to bring new bare-metal hardware to a fully operational hypervisor in one click. In oVirt 3.6 we introduce an integration with Katello to allow oVirt users to see available updates (ERRATA) on hosts and VMs that are managed by Foreman, and in addition on the oVirt engine machine itself. This gives oVirt users a wider view of the updates available for both the virtualized and infrastructure resources. The integration between the projects is still in progress and we plan add functionality to it for better management options for various entities in the data-center hardware - such as provision phase, package management, configurations control and upgrade flows.


Yaniv Bronhaim

November 10, 2015

Other Decks in Technology


  1. CloudOpen 2015 Integrating oVirt, Foreman And Katello To Empower Your

    Data-Center Utilization Yaniv Bronhaim Senior Software Engineer, Maintainer @ RHEV Red Hat IL, Raanana August 2015, CloudOpen Europe
  2. CloudOpen 2015 Agenda • Introducing Open-Source solutions • oVirt, Foreman

    and Katello • New third-party integration in oVirt 3.6 • Using Foreman for Bare-Metal Provisioning • Using Katello for displaying Errata (update) content information for hosts, Vms and Engine • oVirt 3.6 Upgrade Manager • oVirt 4.0 plans
  3. CloudOpen 2015 Large scale, centralized management for server and desktop

    virtualization Provide an open source alternative to vCenter/vSphere Focus on KVM for best integration/performance
  4. CloudOpen 2015 Focus #1 : Performance And Scalability Maintain a

    large amount of resources Data Centers Storage Linux Hypervisors Guests \ VMs Network
  5. CloudOpen 2015 Focus #2 : User Intuitive Different type of

    users and requirements
  6. CloudOpen 2015 Focus #3 : Secure and Recoverable It hurts

    to lose your VM in the cloud
  7. CloudOpen 2015 Data Centers Storage Linux Hypervisors Guests \ VMs

  8. CloudOpen 2015 oVirt Engine Redhat Enterprise Virtualization http://www.ovirt.org/Quick_Start_Guide

  9. CloudOpen 2015

  10. CloudOpen 2015 Host Deploy The Basic Of Utilizing The Hypervisor

    Client (Web Portal) Engine
  11. CloudOpen 2015 Deploy Host Flow Client (web portals) Engine

  12. CloudOpen 2015 Deploy (Configure) New Host

  13. CloudOpen 2015 Host Deployment The process of preparing an operating

    system environment suitable to host virtual machines and to be managed by the ovirt back-end • VDSM packages are installed. • Clock is 'soft' synchronized. • Management bridge created. • Firewall rules applied. • SSH trust obtained. • PKI trust obtained. • VDSM certificate issued. • Services' boot state set. • Host tuned for virtualization.
  14. CloudOpen 2015 oVirt Node • Standalone hypervisor – Small footprint

    < 100MB • Customized 'spin' of Fedora + KVM • 'Just enough' Fedora to run virtual machines • Runs on all RHEL hardware with Intel VT/AMD-V CPUs – Easy to install, configure and upgrade • PXE boot, USB boot, CD or Hard drive • Upcoming – Using Atomic
  15. CloudOpen 2015

  16. CloudOpen 2015 /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-,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=,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
  17. CloudOpen 2015

  18. CloudOpen 2015 Prepare Virtual Environment

  19. 21 CloudOpen 2015 Live Migration • Dynamically move virtual machines

    between hosts • No service interruption • Applications continue to run • Migrate even I/O intensive workloads such as databases • Perform hardware maintenance without application downtime • Dynamically balance workloads between host systems
  20. 22 CloudOpen 2015 • Build a highly available enterprise infrastructure

    • Continually monitor host systems and virtual machines • Automatically restart virtual machines in case of host failure • Restart virtual machine on another node in the cluster • Use live migration to “fail-back” a VM to it's original host when the server is restored High Availability
  21. 23 CloudOpen 2015 System Scheduler • Dynamically balance workloads in

    the data center. • Automatically live migrate virtual machines based on resources • Define custom policies for distribution of virtual machines • Define policies to optimize workload on a fewer number of servers during “off-peak” hours
  22. CloudOpen 2015

  23. CloudOpen 2015

  24. CloudOpen 2015

  25. CloudOpen 2015 Live snapshot Task Management Async Operations Live Migration

    Overcommit CPU, Memory, I/O Hotplug Thirdparty Integration Hosted Engine Live Storage Migration KSM Kernel Same-Page Mering NUMA SPICE Memory Ballooning OS support sVirt PCI pass through Quota Limit Resources Import Storage Domain VIRT V2V & P2V MoM AAA Progress Live Processes Iscsi , NFS Management Network Interfaces Management Cinder Templates Node Registration Events User Roles Kdump fencing PPC Support Discovery Hosts Provisioning Upgrade Management Expose Packages Information
  26. CloudOpen 2015 Live snapshot Task Management Async Operations Live Migration

    Overcommit CPU, Memory, I/O Hotplug Thirdparty Integration Hosted Engine Live Storage Migration KSM Kernel Same-Page Mering NUMA SPICE Memory Ballooning OS support sVirt PCI pass through Quota Limit Resources Import Storage Domain VIRT V2V & P2V MoM AAA Progress Live Processes Iscsi , NFS Management Network Interfaces Management Cinder Templates Node Registration Events User Roles Kdump fencing PPC Support Discovery Hosts Provisioning Upgrade Management Expose Packages Information
  27. CloudOpen 2015 Complete lifecycle management tool for physical and virtual

    servers. Initial Start Configure Monitor
  28. CloudOpen 2015

  29. CloudOpen 2015

  30. CloudOpen 2015

  31. CloudOpen 2015

  32. CloudOpen 2015 Foreman Provision Foreman Configurator Foreman Management How it's

    being done by Foreman
  33. CloudOpen 2015 Fedora CentOS RHEL Ubunto PXE Boot Foreman Provision

    Foreman Configurator Foreman Management Smart Proxy DNS DHCP TFTP
  34. CloudOpen 2015 Puppet Chef Reports Passwords Keys Users Services Foreman

    Provision Foreman Configurator Foreman Management Configuration Management Provision templates Host groups Puppet classes Parameters
  35. CloudOpen 2015 Foreman Provision Foreman Configurator Foreman Management Interface UI,

    API, Cli Rest API Web Interface
  36. CloudOpen 2015 Remote Management • Bare metal provisioning = Register

    servers to central management software • Ability to locate the physical hardware and know its specification • Configure and monitor the servers
  37. CloudOpen 2015 Provision Connect Your Data Center

  38. CloudOpen 2015 S1-A = 00:11:22:33:44:23 S2-A = 0A:1B:C2:CC:44:55 C8-E =

    A3:AA:C7:92:12:32 C4-E = A3:BB:D7:92:42:32 C8-E C7-E C6-E C5-E C5-F = A3:EB:F4:92:12:32 D5-E = A3:BC:D7:92:12:22 B5-E = A3:BB:D7:92:12:12 Configure
  39. CloudOpen 2015 Install OS Manual Provision Process

  40. CloudOpen 2015 Initial Setup Configure

  41. CloudOpen 2015 Monitor And Update – Drift Management 5 Monitor

  42. CloudOpen 2015 Bare Metal Provisioning Feature Client (web portals) Foreman

  43. CloudOpen 2015 Client (web portals) Foreman

  44. CloudOpen 2015 Client (web portals) Foreman

  45. CloudOpen 2015 Client (web portals) Foreman

  46. CloudOpen 2015

  47. CloudOpen 2015

  48. CloudOpen 2015 • Create, organize, and manage local yum and

    puppet repositories • Sync remote repositories • Create custom Content Views • Install package and errata updates
  49. CloudOpen 2015

  50. CloudOpen 2015

  51. CloudOpen 2015

  52. CloudOpen 2015 Integrating to oVirt Host Lifecycle Management Host Content

    Management Provision Bare-Metal Host Gather Content Information ERRATA Info Deploy Hypervisor
  53. CloudOpen 2015 How does Provisioning integrate with oVirt ? Host

    Lifecycle Management Provision Bare-Metal Host Deploy Hypervisor
  54. CloudOpen 2015 Provision

  55. CloudOpen 2015 serv1.bob.redhat.com New Host Going Back To Adding New

    Installed Host Using Host Deploy
  56. CloudOpen 2015 New Host serv1.bob.redhat.com

  57. CloudOpen 2015 Deploy (Configure) New Host

  58. CloudOpen 2015 Hypervisor

  59. CloudOpen 2015

  60. CloudOpen 2015 Adding External Provider - Foreman Client (web portals)

  61. CloudOpen 2015 Adding New Discovered Host

  62. CloudOpen 2015 Engine

  63. CloudOpen 2015 Engine 00:11:22:33:44:55 0A:1B:C2:CC:44:55 A3:AA:C7:92:12:32

  64. CloudOpen 2015

  65. CloudOpen 2015 00:11:22:33:44:55= 0A:1B:C2:CC:44:55= A3:AA:C7:92:12:32=

  66. CloudOpen 2015 Engine

  67. CloudOpen 2015 Engine

  68. CloudOpen 2015

  69. CloudOpen 2015 Engine

  70. CloudOpen 2015

  71. CloudOpen 2015 Provision Provision Host newbob.redhat.com

  72. CloudOpen 2015 Provision Provision Host

  73. CloudOpen 2015 Deploy (Configure) API Request to deploy host oVirt

    Provision Plugin
  74. CloudOpen 2015 Provision is Done!

  75. CloudOpen 2015 Host Content Management Gather Content Information ERRATA Info

    How does Content Management integrate with oVirt ?
  76. CloudOpen 2015 Host Content Information

  77. CloudOpen 2015 API Request To Gather Information About Host Or

    Virtiual Machine
  78. CloudOpen 2015 Collecting Content Flow:

  79. CloudOpen 2015 Reads And Reports Content Status By Using Katello

  80. CloudOpen 2015 #2 : Host Content Information Errata Reports

  81. CloudOpen 2015 Hosts and VMs Content Information

  82. CloudOpen 2015

  83. CloudOpen 2015 Engine Content

  84. CloudOpen 2015 oVirt 3.6 Upgrade Manager For Hosts – Using

    Host Management Gathering Main Packages Info and trigger an update Mostly for upgrading cluster level Polling for yum\dnf update info
  85. CloudOpen 2015 Notify For Upgrade Availability

  86. CloudOpen 2015

  87. CloudOpen 2015 oVirt Host Mgmt Process

  88. CloudOpen 2015 Host Management The process of upgrading content environment

    for suitable cluster (usually VDSM version upgrade) • Direct SSH trust obtained. • Allows to retrieve current installed packages information. • Perform YUM\DNF operations for specific virt packages.
  89. CloudOpen 2015 Summary • Katello, Foreman, oVirt • Discover new

    hosts and utilizing them • Manage content and cluster updates The feature pages: • http://www.ovirt.org/Features/ForemanIntegration • http://www.ovirt.org/Home/Features/KatelloIntegration • http://www.ovirt.org/Home/Features/UpgradeManager
  90. CloudOpen 2015 Future Plans: • VM Provisioning • Full Host

    Configuration Management Through oVirt • Multiply Selection For Hosts Provisioning • Upgrade Hosts by Katello API • Cluster Upgrades
  91. CloudOpen 2015 • Homepage http://ovirt.org • Overall Projects http://gerrit.ovirt.org •

    Mails lists users@ovirt.org devel@ovirt.org • #ovirt on OFTC • Homepage http://theforeman.org • Overall Projects Github.com/theforeman • #theforeman on freenode • Homepage http://katello.org • Overall Projects Github.com/Katello • #katello on freenode
  92. CloudOpen 2015 Questions? Yaniv Bronhaim. bronhaim@gmail.com ybronhei@redhat.com

  93. CloudOpen 2015 THANK YOU ! Yaniv Bronhaim. http://www.ovirt.org ybronhei@redhat.com