views:

77

answers:

1

I am working on a large scale ASP.NET web app.

The system is large enough to warrant monitoring systems, build scripts, source control server, etc etc.

I now want to setup a proper development environment whereby I have a development server, QA and staging.

I am going to be setting up Windows Server 2008 Standard Edition x64 (I have 4gb RAM so want to see all of it).

Would I just have to setup a VM for each environment? But the question this raises is that at the moment all my software is on Vista. It'd be good for each VM to have only the software it needs (e.g. I won't need Visual Studio on staging as I shouldn't change code on there) but I guess this can't be done? Should src control be on a central location and not in one of the environments (e.g. dev)? So something like:

Source control server v v DEV v v QA v v Staging

And thus everything is decentralised.

How do you go about this?

A: 
  1. Your idea of using 4 VMs should work well.

  2. I don't see a database server of any type. I've found DBs do better on their own physical machine.

  3. ADD MORE MEMORY!!!!! You want each machine to have enough memory.

Brad Bruce
Is memory requirement dictated by the number of VMs I setup or the number of VMs I run concurrently?
dotnetdev
@Dotnetdev: Memory requirements are based on the number of concurrently running VMs. Note that 32-bit Windows is restricted to around 3.1-3.6GB (depending on hardware in your system). If the total memory needs for your concurrently-running VM's plus memory needs for the host OS are more than that, consider a 64-bit host OS.
Eric J.