Virtual BizTalk Server Infrastructure
A few months ago we started a developement project for a business process management solution based on Microsoft BizTalk Server 2006 R2 (BTS). Currently we want to test the Enterprise Single Sign-On possibilities of a BTS environment to work out the Identity Management, Authentication and Authorization for the security concept.
To test Enterprise Single Sign-On (ESSO) we need a complete network infrastructure:
- DNS / Active Driectory Server
- BizTalk Server
- SQL Server
- ESSO
- Exchange Server
- Web Server
All these servers will be hosted on a VMware ESX Server (V3.5.0) without VirtualCenter.
Setting up the Server VMs
I started the setup of the different servers by preparing a Windows Server 2003 and Windows Server 2008 Virtual Machine. After finishing the installation, update and configuration I ran sysprep.exe so I could clone the VMs afterwards. You can find some instruction here:
- Configuring a virtual test lab on a budget
- Building a Windows Server 2008 virtual test lab
- SysPrep Guide
To clone the VMs on the ESX Server without VirtualCenter I followed the instrucitons here using VMware Converter. Since I used SysPrep on the “template” VM I did not do “13. Choose to install VMWare Tools & Customize the identity” to “19. Uncheck Power On VM after creation”. You should take care not to start your Template-VMs (they can not be protected without VirtualCenter) or you would have to SysPrep them again (I took a snapshot of the VM after SysPrep shut down).
Windows Server configuration
Windows Server 2003 Standard Edition
Memory: 1024MB (To save disk space shrink the pagefile to 700MB.)
Disk: 8GB
Windows Server 2008 Standard Edition
Memory: 1024MB
Disk: 12GB
Turn off hibernation on the command line (frees up 1.5GB disk space!):
powercfg.exe /hibernate off
We changed the Windows Disk type from basic to dynamic. This allows to allocate more space to the VM by changing the VM disk size in the VM settings and afterwards allocating it in Windows.
- Edit Virtaul Machine Properties; Hard Disk 1; Capacity
- In Windows: Computer Management -> Storage -> Disk Management
- Right-click on “Disk 0″; Convert to Dynamic Disk
- Right-click on partition “(C:)”; Extend Volume…
Installing SQL Server 2005 on Windows Server 2008
We run into some problems installing SQL Server 2005 (Standard Edition) x86 on Windows Server 2008 (Standard Edition) x64. In order to install the SQL Reporting Services we had to:
- Install the IIS 6 compatibility features in IIS 7 (see here).
- Run:
cscript %SystemDrive%\inetpub\AdminScripts\adsutil.vbs set w3svc/AppPools/Enable32bitAppOnWin64 1(see here).
To be able to access the SQL Server from another VM we had to specify the TCP Port in the “SQL Server Configuration Manager”:
- SQL Server 2005 Network Configuration
- Protocols for ServerName
- Right-Click TCP/IP; Properties
- IP Addresses Tab
- Set TCP Port to 1433 (SQL default port)
Installing BizTalk Server 2006 R2
We used the installation instructions from Microsoft (download here): “Installing and Configuring BizTalk Server in a Multicomputer Environment.doc”.
Make sure to follow the instructions under “Considerations for Using Distributed Transaction Coordinator” carefully and test if MSDTC works! We overlooked it and had a hard time to figure out the correct Microsoft Distributed Transaction Coordinator settings.
Attention: SysPrep.exe on Windows Server 2008 nulled the UID of MSDTC but did not create a new one! So we had to run
msdtc -uninstall
msdtc -install
to generate a new one (reboot might be required inbetween).
If you work with Named Instances on the SQL Server, you have to specify them in the Server Name for the Data stores in the BizTalk Server Configuration Group (eg: sqlservername\instancename).





