[mythtv-users] Back-end Virtualization

Alex Williamson alex.l.williamson at gmail.com
Tue May 15 03:30:59 UTC 2012


On Wed, May 9, 2012 at 7:22 PM, Nathan Hawkins <nateh at thfcom.com> wrote:
> Is ‘Anyone’ virtualizing their backend?!

I've been setting up a new file/virt server with one of the goals
being to virtualize my backend.  I'd start deploying it if I could get
past the "Video buffering failed too many times" bug on the (non-virt)
frontends for live tv (hint, hint)

I chose the HP Microserver N40L as my platform because it's a nice
little package that can fit 5 disks, it's low power, and the processor
supports virtualization (also picked up the base unit for $180 on
sale).  It only supports 8G of ram, but that's more than enough to add
a 1G backend VM.  I'm running RHEL6.3 beta as the host OS (disclaimer,
I work for Red Hat), because it will be supported and it adds USB 2.0
passthrough.  This is KVM of course.  For encoders, I'm using HDPVRs
and HDHRs.  So far passing through the HDPVR works quite well and even
the blaster is working well.  I haven't setup, but don't expect any
problems with the HDHRs since they're network based.  For the backend
guest I'm using Mythbuntu 12.04 LTS.

I have had to switch a couple things around for performance (this is
only a 1.5GHz dual-core system with software RAID).  I run the mysql
server in the host and I've setup internal bridges so the guest can
get to storage over a paravirt NIC, which seems to work much better
and give me more flexibility than exposing it as a block device.  If
anyone is interested, I can provide more details.

I'll try not to feed the trolls, but there are lots of reasons to use
virtualization for this.  Probably my #1 initial reason was
consolidation and reduced power consumption.  I want to be able to
suspend the frontends when not in use and not have a system running
24/7 dedicated to nothing but mythtv.  #2 is probably separating my
application environments.  The frontends and backends all need to be
running the same version of mythtv and since I have no interest in
rolling my own mythtv distro nor building everything from source, that
means they all need to run the same distro.  I do not want to tie the
features and supportability of my mythtv environment to that of all
the other things this server does.  #3, is that I can basically add
compute power on demand.  I run a slave backend VM on my desktop that
does nothing but offload commercial detection from the master backend.
 Once again, the slave is fully self contained and I can drop a distro
on it that's completely independent of my desktop OS.  That's probably
just the tip of the iceberg.  If Raymond disagrees, I don't care.

Finally, for all of those in this thread trying to do PCI device
assignment on KVM (I kind of work on that), why isn't it working?  I'd
certainly expect problems with finding out your system really doesn't
have the hardware support for it or it's not enabled in the BIOS.  I
can also imagine getting the device on an exclusive interrupt can be
challenging if it doesn't support MSI/MSI-X, but that's fixed upstream
now so long as your tuner card supports PCI 2.3 interrupt disable.
It'll be in qemu-kvm 1.1.  What else?  Thanks,

Alex


More information about the mythtv-users mailing list