I am looking for suggestions on what virtualization solution to use for my small business server.

I am currently running a Head-less Proliant ML110 G5 [CentOS - Xeon 3056 Dual Core 2.33 Ghz| 3.5GB Ram] as:

  1. Simple File Server [Samba]

  2. Accounting Software Server [Cobol Program using SSH login 5-8 users] + Oracle 10g XE for business intelligence (Rarely Used)

I am thinking of using a VM solution to separate these two functions, since the Accounting software is periodically accessed by the vendor. And I am thinking of running Asterisk with the samba server. I am looking for some opinions on whether to use a bare metal solution (VMWARE esXi) or using something like (Virtual Box/VwWare Server/ or XEN virtualization). What would you suggest ?

ps. I am ordering an extra 4 GB or Ram. 1.


Older versions of asterisk indeed has problems with visualization. As long as you're using asterisk 1.6 and have a virtual machine that provides an accurate kernel RTC you can make it work. Alternatively, have you considered freeswitch? I've found it plays better in a VM than asterisk.

Similarly database apps can take a big performance hit if your virtual environment doesn't support features like nested paging and insufficient physical RAM.

As a preference, I have always liked the vmware line of products... but I do use virtualbox on my home machine & workstation. Xen typically has the most advanced features implemented in the hypervisor. I also must confess that I have no experience with KVM.

You also neglected to mention Microsoft's Hyper-V... which is probably a good thing to neglect to mention in this case. It works wonders with Microsoft OS's... but throw linux at it & it really doesn't play nice. Unfortunately, Microsoft didn't bother maintaining their linux hyper-v kernel support and so it's only available in a very limited number of kernel releases.

| improve this answer | |
  • Thanks I'll look into freeswitch. Which vm are you using it with ? I think i'll look into Xen and then opt between that and ESXi – DaveCol Sep 8 '10 at 17:28

Certainly the file server and accounting software can be easily virtualized, and while databases don't tend to perform nearly as well when virtualized - a rarely use database is a perfect candidate. The only one in the mix that might give you grief is Asterisk - and that depends entirely upon your needs. It can be problematic to get guest operating systems direct access to the specialized hardware attached to the PCI bus.

As far as using a VMWare vs. VirtualBox vs. Xen vs. KVM... I would say VirtualBox is probably the easiest to simply try on your existing CentOS host and on any desktop you might be using, though it can be slightly painful (though entirely possible) to manage headless. You might find ESXi more appealing and run the management client on a desktop.

| improve this answer | |
  • Thank you .. I will look more at ESXi .. and see where that gets me with a separate NIC for each. – DaveCol Sep 8 '10 at 17:30

As someone's mentioned some apps don't like running in a VM, and the clock can go wonky in a VM (especially if you suspend the guest to perform a backup).

So.. run a virtualisation tool that runs on top of your existing OS. I use VMWare server. Its an app that is installed and runs alongside any apps you want to keep on the non-virtualised OS. You'll have to compile the memory manager driver (painless) and install VMware using rpm (painless too), then you'll have the web interface to manage the guests (or the old Console interface if you prefer)(or the CLI interface that you can use to script the guests or connect via SSH)

| improve this answer | |

This will be blatantly biased, since I only run VMware; but I'd strongly consider ESXi if I were you solely based on it's merits within stability. It's a very mature hypervisor.

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.