<<

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

CloudOpen 2015 Large scale, centralized management for and desktop

Provide an open source alternative to vCenter/vSphere

Focus on KVM for best integration/performance

CloudOpen 2015 Focus #1 : Performance And Scalability Maintain a large amount of resources

Data Centers

Linux Hypervisors

Network Storage Guests \ VMs

CloudOpen 2015 Focus #2 : User Intuitive Different type of users and requirements

CloudOpen 2015 Focus #3 : Secure and Recoverable It hurts to lose your VM in the

CloudOpen 2015 Data Centers

Linux Hypervisors

Network Storage Guests \ VMs

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

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

Engine Client (Web Portal)

CloudOpen 2015 Deploy Host Flow

Engine Client (web portals)

CloudOpen 2015 New Host

Deploy (Configure) CloudOpen 2015 Host Deployment The process of preparing an environment suitable to host virtual machines and to be managed by the back-end

● VDSM packages are installed. ● Clock is 'soft' synchronized. ● Management bridge created. ● rules applied. ● SSH trust obtained. ● PKI trust obtained. ● VDSM certificate issued. ● Services' boot state set. ● Host tuned for virtualization.

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

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

CloudOpen 2015 CloudOpen 2015 Prepare Virtual Environment

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

CloudOpen 2015 21 • 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

CloudOpen 2015 22 • Dynamically balance System Scheduler 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

CloudOpen 2015 23 CloudOpen 2015 CloudOpen 2015 CloudOpen 2015 PPC Support Live snapshot Kdump fencing Cinder Templates

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

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

Initial Start Configure Monitor

CloudOpen 2015

CloudOpen 2015

CloudOpen 2015

CloudOpen 2015

CloudOpen 2015 How it's being done by Foreman

Foreman Foreman Foreman Provision Configurator Management

CloudOpen 2015 Foreman PXE Foreman Foreman Boot Provision Configurator Management

Ubunto RHEL Fedora DNS DHCP CentOS TFTP

Smart Proxy

CloudOpen 2015 Passwords Keys Users Services

Foreman Foreman Foreman Provision Configurator Management

Chef Provision templates Host groups Reports Puppet classes Parameters

CloudOpen 2015 Foreman Foreman Foreman Provision Configurator Management

Rest API

Web Interface Interface UI, API, Cli

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

CloudOpen 2015 Provision Your Data Center

Connect

CloudOpen 2015 Configure

C5-E

C6-E

C7-E

C8-E 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 C5-F = A3:EB:F4:92:12:32 D5-E = A3:BC:D7:92:12:22 B5-E = A3:BB:D7:92:12:12

CloudOpen 2015 Manual Provision Process

Install OS

CloudOpen 2015 Configure

Initial Setup

CloudOpen 2015 5 Monitor Monitor And Update – Drift Management

CloudOpen 2015 Bare Metal Provisioning Feature

Foreman Client (web portals)

CloudOpen 2015 Foreman Client (web portals)

CloudOpen 2015 Foreman Client (web portals)

CloudOpen 2015 Foreman Client (web portals)

CloudOpen 2015 CloudOpen 2015 CloudOpen 2015 ● Create, organize, and manage local and puppet repositories

● Sync remote repositories

● Create custom Content Views

● Install package and errata updates

CloudOpen 2015 CloudOpen 2015 CloudOpen 2015 CloudOpen 2015 Integrating to oVirt

Gather Deploy Provision Content Hypervisor Bare-Metal Information Host Host Host Content Lifecycle ERRATA Info Management Management

CloudOpen 2015 How does Provisioning integrate with oVirt ? Host Lifecycle Management

Deploy Hypervisor Provision Bare-Metal Host

CloudOpen 2015 Provision

CloudOpen 2015 Going Back To Adding New Installed Host Using Host Deploy

New Host

serv1.bob.redhat.com

CloudOpen 2015 New Host

serv1.bob.redhat.com

CloudOpen 2015 New Host

Deploy (Configure) CloudOpen 2015 Hypervisor

CloudOpen 2015 CloudOpen 2015 Adding External Provider - Foreman

Client (web portals)

CloudOpen 2015 Adding New Discovered Host

CloudOpen 2015 Engine

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

Engine

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

CloudOpen 2015 Engine

CloudOpen 2015 Engine

CloudOpen 2015 CloudOpen 2015 Engine

CloudOpen 2015 CloudOpen 2015 Provision

Provision Host newbob.redhat.com

CloudOpen 2015 Provision

Provision Host 192.168.1.53

CloudOpen 2015 oVirt Provision Plugin

Deploy

API Request to (Configure) deploy host

CloudOpen 2015 Provision is Done!

CloudOpen 2015 How does Content Management integrate with oVirt ?

Gather Content Information

Host Content ERRATA Info Management

CloudOpen 2015 Host Content Information

CloudOpen 2015 API Request To Gather Information About Host Or Virtiual Machine

CloudOpen 2015 Collecting Content Flow:

CloudOpen 2015 Reads And Reports Content Status By Using Katello Agent

CloudOpen 2015 #2 : Host Content Information

Errata Reports

CloudOpen 2015 Hosts and VMs Content Information

CloudOpen 2015 CloudOpen 2015 Engine Content

CloudOpen 2015 oVirt 3.6 Upgrade Manager For Hosts – Using Host Management

Gathering Main Packages Info and trigger an update

Mostly for upgrading Polling for cluster level yum\dnf update info

CloudOpen 2015 Notify For Upgrade Availability

CloudOpen 2015 CloudOpen 2015 oVirt Host Mgmt Process

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.

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

CloudOpen 2015 Future Plans:

● VM Provisioning ● Full Host Configuration Management Through oVirt ● Multiply Selection For Hosts Provisioning ● Upgrade Hosts by Katello API ● Cluster Upgrades

CloudOpen 2015 ● Homepage ● Homepage ● Homepage http://ovirt.org http://theforeman.org http://katello.org

● Overall Projects ● Overall Projects ● Overall Projects http://gerrit.ovirt.org Github.com/theforeman Github.com/Katello

● Mails lists ● #theforeman on freenode ● #katello on freenode [email protected] [email protected]

● #ovirt on OFTC

CloudOpen 2015 Questions?

Yaniv Bronhaim.

[email protected] [email protected]

CloudOpen 2015 THANK YOU !

Yaniv Bronhaim. http://www.ovirt.org [email protected]

CloudOpen 2015