[mythtv-users] Back-end Virtualization

Alex Williamson alex.l.williamson at gmail.com
Tue May 15 14:46:50 UTC 2012


On Tue, May 15, 2012 at 12:55 AM, Jon Whitear <jon at whitear.org> wrote:
>
>>
>> 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'm interested. My host is a quad-core 2.8Ghz i5, so it's not really a problem for me, but I'd like to know how you've approached this. The storage for my VMs is on LVM on software RAID 1. Are you mounting that storage as NFS?

I'm also using LVM, but with software RAID6, so I've got even more
overhead.  Yes, I'm using NFS for recording storage, exported from the
host.  The VM itself runs on a virtio-blk disk, but without mysql and
with recordings stored on NFS, it does get heavy usage.  I have two
NICs on the Microserver, one built-in and one in a plugin slot.  The
builtin one is used exclusively by the host for NFS/iSCSI/CIFS out to
the rest of the network and has an IP address on the local LAN.  The
plugin NIC is tied to a software bridge with no IP on the local LAN.
All VMs attach to this bridge for network access.  That works great
and separates my traffic, but limits host<->guest performance to link
speed of the NIC.  So I also create a second bridge that's not tied to
any physical devices.  I assign the bridge an IP address in the host
and attach guests to it with a static IP.  I then specify the private
network IP of the host for things like NFS and mysql.  Even my little
underpowered server can hit ~5Gbps over this internal bridge, so NFS
performance is quite nice.  I could probably achieve similar
performance by giving the host an IP address on the first bridge, but
I like the isolation of using a separate bridge.

For mysql, I had terrible performance when I ran the server in the
guest with data on the virtio-blk device.  Since mysql is a nice self
contained stack, without specific version dependencies, it's easy to
move this service to the host and it seems to run an order of
magnitude faster there.

Otherwise, performance appears sufficient.  1G for the backend VM may
even be overkill as I intend to offload all the compute work to the
slave backend VM on my desktop.  Thanks,

Alex


More information about the mythtv-users mailing list