Link to home
Start Free TrialLog in
Avatar of carlkelley
carlkelley

asked on

Whether/How to install MS Small Business Server 2003 inside MS Virtual Server 2005 on a Windows Server 2003 R2 x64?

We are replacing an x32 Windows 2000 server with a x64 dual-core AMD Opteron server.  This Internet-accessible server is a staging platform for ASP.NET 1.1 and 2.0 applications that we develop for clients.  It also supports MS Exchange 2000 which we want to migrate to Exchange 2003 or 2007.

At the moment, my clients have 32-bit machines.  For one client, We are maintaining an ASP.NET 1.1 application and the test site runs on my server.  The .NET 1.1 Framework is 32-bit only.  We develop all of our apps on a 32-bit Windows PCs.
 
According to [How to switch between the 32-bit versions of ASP.NET 1.1 and the 64-bit version of ASP.NET 2.0 on a 64-bit version of Windows] at http://support.microsoft.com/kb/894435:
 
"IIS 6.0 supports both the 32-bit mode and the 64-bit mode. However IIS 6.0 does not support running both modes at the same time on a 64-bit version of Windows. ASP.NET 1.1 runs only in 32-bit mode. ASP.NET 2.0 runs in 32-bit mode or in 64-bit mode. Therefore, if you want to run ASP.NET 1.1 and ASP.NET 2.0 at the same time, you must run IIS in 32-bit mode.
Note If you have Microsoft Exchange Server 2007 installed on the computer, use the instructions for ASP.NET 2.0, 64-bit version."

I considered backing down to Exchange 2003, but according to http://bink.nu/Article4994.bink:
 
"Microsoft doesn't support Exchange 2003 on Windows 2003 x64 Editions and is unlikely to do so in the future. The current release of Exchange 2003 won't even run on the Windows 32onWindows-64 (WOW64) subsystem, which allows many other 32-bit applications to run on 64-bit systems.  I know you're probably disappointed to learn this news, but a sound technical reason exists. Exchange 2003 and Exchange 2000 Server depend on the Exchange Installable File System (ExIFS) driver, a 32-bit piece of code that runs in kernel mode. For Windows 2003 x64 Editions, all kernel-mode code must be native 64-bit. ExIFS isn't, and Microsoft isn't planning to spend the necessary resources to make it so. . . ."
 
For me, this is a catch-22.  We need to run IIS in 32-mode for our clients, but Exchange 2007 requires IIS to run in 64-bit only mode.  I believe our options are as follows:
 
1.  Move Exchange to the new server and leave the web sites on the old server.  
- This would take away one of the primary benefits of the new server: to reduce energy consumption.
 
2.  Wipe the server and install Windows Server 2003 R2 x32 and Exchange 2003.  
- We would not have an easy migration path to an x64 platform and we would not be exploiting the power of the new server.
 
3.  Create a Virtual Machine on the new server that would run x32 Windows Server 2003 to support our web sites.  Everything else: Exchange 2007 and SQL Server would run under the x64 bit host.
+  This gives me the best of both worlds and the ability to deploy both x32 and x64 apps in the future.
+  We could hide the PDC on the x64 side for better security.

4.  Create a Virtual Machine on the new server that would run x32 Microsoft® Windows® Small Business Server 2003 Premium Edition.  SBS Exchange 2003 x32 would replace Exchange 2007 x64.
+  This gives me the best of both worlds and the ability to deploy both x32 and x64 apps in the future.
+  We could hide the PDC on the x64 side for better security.
+  I save at least $700 in license fees whle adding licenses for Sharepoint and SQL Server 2005 Workgroup.

I like #4 the best and I believe that We are prepared to deploy it.  I have downloaded [Virtual Server 2005 R2 SP1 x64] from http://www.microsoft.com/technet/virtualserver/default.mspx.  Windows 2003 requires less than 8GB and there is 59GB free space on the new server.  Its a dual core AMD Opteron x64 CPU with 4GB RAM.  It has two NIC ports that can have separate IP addresses.  I also have a copy of Windows Server 2003 R2 x32.

I'm asking for a list of do's and don'ts from anyone who has installed Windows Small Business Server 2003 R2 x32 inside Virtual Server 2005 on a Windows Server 2003 R2 x64 box successfully OR advice to the contrary.
Avatar of Sembee
Sembee
Flag of United Kingdom of Great Britain and Northern Ireland image

I wouldn't do Exchange on a virtual machine. I certainly wouldn't do SBS. SBS is hard on hardware anyway once you get above more than a dozen users.
For a staging post for development applications I would be looking to deploy virtual machines. That is the best thing for them.

Don't take this the wrong way, but you are thinking like a developer. That is why pure IT admins don't like developers.
You should not be mixing production services like email, domain controllers etc with development services. Where I have built sites for developers they have had no access to the production site. While your code may be good, one small error and you could wipe out the machine that has all of your email on it.

I am also not a fan of putting everything on one box. You haven't said how many users you have, but if you are deploying something like SBS or Exchange then it should be a dedicated machine. Something else would run virtual machines and all of the development work.

Simon.
Oh and I forgot to mention - Exchange is not supported in virtual machines. Exchange 2007 VM support is a grey area at this time. I do it for development work, but production Exchange is on real hardware.

Simon.
Avatar of carlkelley
carlkelley

ASKER

Well, Sembee, you might be right.  But, your advice is hard to swallow and I'm going to hold out for a few other opininions.  Basically, I've got one x64 AMD dual-core Opteron server with plenty of RAM and disk and I need to configure it to support x32 ASP.NET apps, Exchange and SQL Server 200x.  Which of the four options open to me do you like the best?
Sembee,
You inadvertently suggested another option: running only Exchange 2007 under Virtual Server.  We do not have many mailboxes nor do we have a ton of email traffic.  You say that it is not supported, but what problems have you had with it?
Sembee,
Here is article that explains how to install Exchange 2007 under Virtual Server 2005:
http://www.windowsitpro.com/articles/print.cfm?articleid=53901

Here's blog that echoes your assertion that that Microsoft won't support Exchange 2007 x64 runing under Virtual Server 2005 because the Virtual Machines only support x32 OS as guests:
http://www.aspdeveloper.net/Virtual_Server_2005/rn-738-15981_Virtualized_Exchange_2007.aspx

Nevertheless, Microsoft offers its [Microsoft Exchange Server 2007 VHD - 32-bit version] for download at: http://www.microsoft.com/downloads/details.aspx?FamilyID=692a6e3c-81c9-4d8a-93fa-266d651735dc&DisplayLang=en  This is perplexing because I've read elsewhere that Exchange 2007 is x64 only.

I don't need articles on how to install Exchange 2007 in to virtual machines. I am an Exchange MVP and I have been working with Exchange 2007 since BETA 1, all of it in virtual machines.

The Microsoft VHD that you have pointed to is a demo version. It is not designed for production use. All 32 bit version of Exchange 2007 are demo/eval versions and are not supported.

Trying to get everything on to a single box is simply asking for problems. It is a single point of failure. Doesn't matter how much RAM or processing power it has.
Again don't take this the wrong way, but it seems that you have purchased a machine and are now trying to fit tasks to the machine, rather than trying to decide what you needed from the software and then purchasing hardware to fit.
What I would purchase for running large numbers of virtual machines on is different to an Exchange machine.

You can wait for other opinions if you like, but the way this site works, I wouldn't hold out for any more. Once a question has gone from the first page in the high traffic zones (and your question is in three of the busiest) no one looks at the older questions.

Simon.
Sembee,

I respect your expertise and am grateful for your attention.  Your advice is no doubt good but not useful to me because we cannot afford another server.   Besides, we have been supporting our x32 ASP.NET apps, Exchange 2000 and SQL Server 2000 on a single Windows 2000 Server without any problems for several years.

I admit that I purchased x64 hardware and an x64 OS before I knew all the x32 vs. x64 gotchas:
1.  IIS cannot run both x32 ASP.NET apps and x64 apps.
2.  ASP.NET 1.1 is x32 only
3.  Exchange 2007 is only x64
4.  Exchange 2003 is only x32
5.  Virtual Server 2005 is only x32

Now I have to be creative and it looks like I have two choices:

A. Run Exchange 2003 on Windows Server 2003 x32 Guest inside Virtual Server on the Host Windows Server 2003 x64 OS and run my x32 ASP.NET apps on the host in x32 compatibility mode.  The performance of our x32 apps is far more important than Exchange.

B.  Run Exchange 2007 on the Host and run my x32 ASP.NET apps inside a VM Guest.

Which would you choose if, god forbid, you were me?
I cannot answer your question, because I wouldn't have got myself in to the point of having to answer it. I have been working in IT for 12 years, with Exchange for five. I have learnt how to buy hardware.

With IT, previous behaviour that worked, is not an indication that it was the correct way to do things, or that it will work correctly in the future. So while you got away with Exchange 2000, SQL 2000 on a single box in the past, does not mean you will do so in the future.
The closest you would get is to use SBS, but SBS is a special case and should be treated as an appliance. I wouldn't dream of doing any kind of development work on an SBS, unless it was an application for SBS, due to the way that everything is wrapped together. With SBS you can easily screw up the entire server.

I am unable to answer your question, because there is no solution that is acceptable.
You are going to be operating in an unsupported environment, with data at risk no matter what you do.

Simon.
Simon,

If I understand you correctly, you do not recommend running ANY production services inside Virtual Server 2005 on a guest Window Server 2003 x32 OS on a Windows Server 2003 x64 Host server.  You wouldn't recommend the practices even if the database for the Guest application services is running on the Host.   Correct?
ASKER CERTIFIED SOLUTION
Avatar of Sembee
Sembee
Flag of United Kingdom of Great Britain and Northern Ireland image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Sembee:  What I ended up doing is installing Exchange 2007, as you advised, directly under Win2003R2x64.  To support my x32 ASP.NET apps on the same server, I installed VMware Server and Windows2003SP2 Web Edition inside that.  Performance is good and my electric bill has been slashed :-)