integrating - events.static.linuxfound.org · cloudopen 2015 agenda introducing open-source...
TRANSCRIPT
CloudOpen 2015
Integrating oVirt, Foreman And Katello
To Empower YourData-Center Utilization
Yaniv BronhaimSenior Software Engineer, Maintainer @ RHEV
Red Hat IL, RaananaAugust 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 server and desktop virtualization
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
Storage
Linux Hypervisors
Guests \ VMs
Network
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 cloud
CloudOpen 2015
Data Centers
Storage
Linux Hypervisors
Guests \ VMs
Network
CloudOpen 2015
oVirt Engine Redhat Enterprise Virtualization
http://www.ovirt.org/Quick_Start_Guide
CloudOpen 2015
CloudOpen 2015
Host DeployThe Basic Of Utilizing The Hypervisor
Client (Web Portal)Engine
CloudOpen 2015
Deploy Host Flow
Client (web portals)Engine
CloudOpen 2015
Deploy
(Configure)
New Host
CloudOpen 2015
Host DeploymentThe process of preparing an operating systemenvironment 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.
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=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
CloudOpen 2015
CloudOpen 2015
Prepare Virtual Environment
21CloudOpen 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
22CloudOpen 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
23CloudOpen 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
CloudOpen 2015
CloudOpen 2015
CloudOpen 2015
CloudOpen 2015
Live snapshot
Task ManagementAsync Operations
Live Migration
OvercommitCPU, Memory, I/O
Hotplug
Thirdparty Integration
Hosted Engine
Live Storage Migration
KSMKernel Same-Page
Mering
NUMA
SPICEMemory
Ballooning
OS supportsVirt
PCI pass through
QuotaLimit Resources
Import Storage Domain
VIRT V2V & P2V
MoM
AAA
Progress Live Processes
Iscsi , NFSManagement
Network InterfacesManagement
Cinder Templates
Node Registration
Events
User Roles
Kdump fencingPPC Support
Discovery Hosts Provisioning
UpgradeManagement
Expose PackagesInformation
CloudOpen 2015
Live snapshot
Task ManagementAsync Operations
Live Migration
OvercommitCPU, Memory, I/O
Hotplug
Thirdparty Integration
Hosted Engine
Live Storage Migration
KSMKernel Same-Page
Mering
NUMA
SPICEMemory
Ballooning
OS supportsVirt
PCI pass through
QuotaLimit Resources
Import Storage Domain
VIRT V2V & P2V
MoM
AAA
Progress Live Processes
Iscsi , NFSManagement
Network InterfacesManagement
Cinder Templates
Node Registration
Events
User Roles
Kdump fencingPPC Support
Discovery Hosts Provisioning
UpgradeManagement
Expose PackagesInformation
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
Foreman
Provision
Foreman
Configurator
Foreman
Management
How it's being done by Foreman
CloudOpen 2015
Fedora
CentOS
RHEL
Ubunto
PXE Boot
Foreman
Provision
Foreman
Configurator
Foreman
Management
Smart Proxy
DNSDHCPTFTP
CloudOpen 2015
Puppet
Chef
Reports
PasswordsKeysUsers
Services
Foreman
Provision
Foreman
Configurator
Foreman
Management
Configuration Management
Provision templates
Host groups
Puppet classes
Parameters
CloudOpen 2015
Foreman
Provision
Foreman
Configurator
Foreman
Management
Interface
UI, API, Cli
Rest API
Web Interface
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
Connect
Your Data Center
CloudOpen 2015
S1-A = 00:11:22:33:44:23S2-A = 0A:1B:C2:CC:44:55C8-E = A3:AA:C7:92:12:32C4-E = A3:BB:D7:92:42:32
C8-E
C7-E
C6-E
C5-E
C5-F = A3:EB:F4:92:12:32D5-E = A3:BC:D7:92:12:22
B5-E = A3:BB:D7:92:12:12
Configure
CloudOpen 2015
Install OS
Manual Provision Process
CloudOpen 2015
Initial Setup
Configure
CloudOpen 2015
Monitor And Update –
Drift Management
5Monitor
CloudOpen 2015
Bare Metal Provisioning Feature
Client (web portals)Foreman
CloudOpen 2015
Client (web portals)Foreman
CloudOpen 2015
Client (web portals)Foreman
CloudOpen 2015
Client (web portals)Foreman
CloudOpen 2015
CloudOpen 2015
CloudOpen 2015
● Create, organize, and manage local yum 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
Host Lifecycle
Management
Host Content Management
Provision Bare-Metal
Host
Gather Content
Information
ERRATA Info
Deploy Hypervisor
CloudOpen 2015
How does Provisioning integrate with oVirt ?Host
Lifecycle Management
Provision Bare-Metal
Host
Deploy Hypervisor
CloudOpen 2015
Provision
CloudOpen 2015
serv1.bob.redhat.com
New Host
Going Back To Adding New Installed Host Using Host Deploy
CloudOpen 2015
New Host
serv1.bob.redhat.com
CloudOpen 2015
Deploy
(Configure)
New Host
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
Engine
00:11:22:33:44:55
0A:1B:C2:CC:44:55
A3:AA:C7:92:12:32
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 Hostnewbob.redhat.com
CloudOpen 2015
Provision
Provision Host 192.168.1.53
CloudOpen 2015
Deploy
(Configure)API Request to deploy host
oVirt Provision Plugin
CloudOpen 2015
Provision is Done!
CloudOpen 2015
Host Content Management
Gather Content
Information
ERRATA Info
How does Content Management integrate with oVirt ?
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 StatusBy Using Katello Agent
CloudOpen 2015
#2 : Host Content Information
ErrataReports
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
cluster level Polling for yum\dnf update info
CloudOpen 2015
Notify For Upgrade Availability
CloudOpen 2015
CloudOpen 2015
oVirt Host MgmtProcess
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
http://ovirt.org
● Overall Projects
http://gerrit.ovirt.org
● Mails lists
● #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