oVirt is a pretty cool system. I had it running for a while on a single CPU host without that many VMs, I can't claim much knowledge on the system, but from my perspective it works pretty well that said not everything is rosy either.
I experienced a few issues, namely the hosted engine crashing (for reasons that I never really got to the bottom of) and some issues with my gluster volumes. None of those were big problems, but for some reason it was hard to figure out what the exact problem was, from my experience the logfiles were cluttered with useless debug information and not that easy to find. But if you chose to use oVirt YMMW, I did not exactly spend a lot of time trying to solve these issues
For the record, I got bored waiting for oVirt to implement PCI passthrough functionality (it is to be implemented in oVirt 3.6, which is in RC1 at the moment) and have decided to see if I can make plain old virt-manager (yay for simplicity) do the trick perhaps with a few extra additions such as LXD and openvswitch. I may yet revert my decision and go back to oVirt when 3.6 has been released though.
I am trying to get an all in one setup going but so far not alot of success. It maybe me, or the non standard setup (I have only one server, and am trying to do a hosted engine install) but lots and lots of issues. To the point that I am almost ready to drop all and try esxi or xen server. My main problem whith any setup is that I want to use btrfs pools on the same server for data store. Proxmox or ovirt is the only two I know thay have support for that.
I was able to setup an ovirt system using this guide:
Up and Running with oVirt 3.5 | Gluster Community Website
I see no reason why you shouldn't be able to modify it slightly with a btrfs filesystem underneath the local gluster storage.