VM/VirtualBox Best Practices?

MarvynDT

Limp Gawd
Joined
Jan 4, 2003
Messages
504
The plan is to configure 2 separate boxes, one as a web application server and the other for file storage for my web design/development company. Both will be only for internal development and there are no foreseeable plans to open up any of the boxes to the outside world.

The intention with the web application server is to run VirtualBox to consolidate the need for both a Windows and Linux test environment. One question comes to mind:

1. Would it be ideal to use the host OS as part of our development environment? Or for each development environment required, a virtual environment should be set up? My thinking for the latter setup is that if the host OS gets hosed through some development screw up, then it would bring down the guest OS as well. Alternatively, if all development is done on virtual environments, then hosing one guest OS should have no effect on the other guest OS.

Question #1 spawns off a few different questions depending on what is the better practice:

1a. If it's acceptable to use the host OS as part of our development environment, then what is the ideal choice: Ubuntu as the host and Windows Server as the guest or vice versa? Nobody within the walls of this company is very Linux knowledgeable. And most development is done on Windows machines, but most projects require some flavor of Apache, PHP, and MySQL. We have tinkered with Ubuntu to see how it works and what it can do. So setting it up shouldn't be much of a problem. What is most sought after is stability.

1b. If it's better desired to have a virtual environment for each development environment, the question is what is the correct host OS to use? I have to assume any desktop OS is acceptable (Windows XP or Ubuntu desktop) as it sounds odd to have Windows Server have a virtual environment for Windows Server.
 
Regardless of what VM software you use (I'm not a terrible fan of VMWare Server, some of the OS/software configurations I use with it on a Linux host break, compared with running VMWare Server on a Windows host. However, I do use VMWare workstation a lot).

My basic set up with virtual machines is that I use the host OS as my development environment, and the virtualized instances are for testing.

So right now, at work:

Host OS = Debian or Red Hat running VMWare Workstation
Testing environments inside VMWare = Debian / RPL / CentOS4.5 / Windows Server 2003, and maybe Server 2008 in the future?

And the code I work with lives on a repository server.

For your host OS, I would use what you are most comfortable with, so if it's Windows, use Windows.

I have also done the separate development environments in each VM instance, but that got annoying because I develop for each OS with the same code base, so I just use a single development environment. Easier to maintain, IMO.
 
Back
Top