[mythtv-users] Mythbacked on ESXi 5.0
raymond at wagnerrp.com
Mon Oct 24 15:27:50 UTC 2011
On 10/24/2011 04:29, Tom Hill wrote:
> On Sun, 2011-10-23 at 20:55 -0700, Govindarajan wrote:
>> I am trying to comprehend the advantages of such a set up but I am not
>> getting convinced. One could just run Mythtv (front and backend) on a
>> physical box. Running more than just backend VMs or multiple backends
>> on the same physical box could be one. Could you explain the other
>> advantages please?
> People running separate file storage, router/firewall applications can
> have them all on the same hardware.
> m0n0wall, Vyatta, pfSense, FreeNAS, openfiler, etc. will all run very
> happily in a virtualised environment.
But the question is _why_ would you want to? One has to seriously
question the sanity of the person who uses virtual machines so they can
run half a dozen border firewalls on the same machine.
You completely misunderstand the entire purpose for virtual machines to
exist. Modern operating systems have this wondrous technique called
preemptive multitasking, that allows them to run multiple applications
on the same image just fine. You don't need to employ a virtual machine
to achieve that. You don't even need a virtual machine to provide
isolation between applications for convenience and manageability. A
simple chroot provides most of the benefits as a VM in that regards, and
para-virtualization techniques such as jails, containers, and vservers
can pick up much of the rest, like isolated memory space, dedicated
network stack, and cpu/memory quotas.
There are really four specific cases to run a virtual machines:
You use a virtual machine because you need to run multiple independent
kernels. Para-virtualization doesn't require the same environment, but
it does require everything be run on the same kernel. If you've got
some applications that need Linux, other that need Windows, and still
others that only run some ancient blend of HPUX or some such, full
virtualization is your only option. Well, that or just running multiple
You use a virtual machine because you're using software with a licensing
scheme written by a panel of proctologists. I'm looking at you,
TACOMA. The software grabs all sorts of identifying information about
the hardware, and the license key is subsequently written to only
operate off that single machine. The virtual machine looks like the
same hardware regardless of where it's running. Rather than having to
deal with technical support any time you need to change hardware, you
throw it on a virtual machine and ignore it.
You use a virtual machine for development work. Either you need to run
a completely different architecture, or maybe you just simply want to
isolate development work from your workstation so its not disruptive
against other applications you've got open.
Finally the big one, you are running a number of "mission critical"
server applications for a business, and they absolutely, positively,
must not go down. You could perform an analysis on the various
softwares, and make sure they aren't running any calls that could
potentially take out the shared kernel and other servers on a
para-virtualization system. You could rewrite your application with a
synchronization mechanism to allow another instance on another machine
to take up where it left off. You could rewrite your application with a
clustered, redundant approach, where loss of any one machine does not
significantly affect the whole. All of these cost time and money.
Virtualization is not a "good" approach, but the industry has determined
that it is the "good enough" approach. It is the ugly, brute force
sledge hammer, but the alternative is a ton of man-hours writing the
elegant application. At the end of the day, the quick and ugly approach
has a lower total cost, and is the better solution for business.
So where does this get you with MythTV? The home user isn't doing
anything that is going to be bothered too much by the occasional crash.
The home user isn't going to have hot spare systems to fail over to in
the event of a hardware failure (and the free ESXi doesn't allow such
anyway). With all its runtime information stored in the database,
MythTV is already fairly close to the "elegant solution". Change the IP
address of the master backend, and with a few keystrokes, a slave
backend gets promoted to master and you can start back up.
There is a time and place to run VM software, but like Govindarajan, I
don't see a home user running MythTV to be one of them. If you find it
fun and amusing, or even just good practice for a career, have at it. I
just don't see how it can make management and operation an easier task.
More information about the mythtv-users