BizTalk Server 2006 Virtual Multi-Box Install

 

Introduction

One of the great improvements in BizTalk Server 2006 was the ease of the installation and configuration of a developer machine install. Whilst single box installs are now relatively simple, there is still quite a challenge in installing BizTalk Server in a multi-server environment. This article will run through a basic multi server installation of BizTalk Server 2006 using Virtual PC to host the servers.

It’s worth running through a multi server installation using Virtual PC before trying it with real hardware. Using undo disks across multiple virtual machines means you can roll back and try again if the configuration fails, which is a definite time saver. If you want to try this at home, you’ll need basic knowledge of BizTalk 2004 or 2006 single box installation, along with installing all the other server products that go with it. A basic knowledge of creating an Active Directory domain, and creating domain users and groups is good to have too.

I have bullet pointed a few of the setup tasks, but as this is a BizTalk lab, not an Active Directory, IIS, or Windows Server lab, so you’ll have to forgive me for not detailing these too well (there’s plenty of documentation out there for these tasks anyway, right?).

Simplified Install

This lab will focus on the installation of the core BizTalk Server components:

  • Enterprise SSO
  • BizTalk Group
  • BizTalk Runtime
  • MSMQT
  • Business Rules Engine

Software Used for this Lab

For this lab, I used the software listed below.

  • Microsoft Virtual PC 2004 with SP1
  • Windows Server 2003 Standard Edition with SP1
  • SQL Server 2005 Developer Edition
  • BizTalk Server 2006 Developer Edition

I found the best option was to download the ISO files for these from MSDN, which saves swapping CDs.

Using Microsoft Virtual PC

I used Microsoft Virtual PC to host the virtual machines for this setup, it works well, and it’s now free to use. Virtual Server or other products may also work fine.

Cunning Use of Undo Disks

If your first BizTalk multi-box install goes anything like my first attempt, you will be glad of the ability to create undo disks in Virtual PC. For the configuration stages, I usually set undo disks on all the VPC images, then run the configuration, and skip changes if anything went wrong. It’s much easier to run the configuration from a clean setup than to have to manually delete all the databases.

Virtual Machine Settings, RAM and HD Requirements

If you have a gig of ram, you should just be able to have three virtual machines running at the same time, provided you set the ram for each VM accordingly. I’ve found using two gigs of RAM gives much better results.

Here’s a rough guide to how you should set the VM ram.

If you have…

Then…

2 GB

Use 512 MB for each virtual machine

1 GB

Use 256 MB for each virtual machine

Less than 1 GB

Buy more RAM

 

I ran this lab with 2 gig ram, and used 512 for each VM. This meant the VMs were running pretty slowly, but it was fine for functionally testing the install.

You’ll also need about 10 - 15 GB hard disk space for the virtual machines. I found that using an external USB2 hard drive gave me more performance than using the internal drive on my laptop.

Local Only Networking

As we are creating a domain for the BizTalk server group, it’s best to work with local only networking on all the VMs. This means it’s easy to set a static IP address for the domain controller VM, and have the other servers use it for DNS and DHCP.

Multi-Box Install Overview

In this lab, I went for the simplest option of a three server configuration, one for Active Directory, SQL Server, and SSO Master Secret Server, and two BizTalk boxes.

ServerName

Description

ADSQL

Active directory server hosting the BizTalk domain user accounts and groups, also hosts SQL server and the SSO Master Secret Server.

BizTalk1

First BizTalk Server to be installed, the Create Group configuration is run on this server.

BizTalk2

Second BizTalk server to be installed, the Join Group configuration is run here.

 

I placed the SSO Master Secret Serve on the ADSQL Server, as the latest documentation is recommending that in small deployments (where you don’t have a separate cluster for the Master Secret Server), you can have it installed on the same cluster that is hosting the SQL Server.

Creating a Base Image

To save some time installing Windows Server three times, I created a base image that I could copy, SysPrep, and use for the other server installs. To create a base image:

  • Install Windows Server 2003 With SP1
  • Install Virtual Machine Additions

We can now SysPrep this image to create our servers.

Using SysPrep

The SysPrep tool is used to rename the virtual machine, and ensure that all the security identifiers are replaced in the operating system. If we just rename the machine in the computer properties, we may well run into DTC problems when we attempt to create the BizTalk group using the BizTalk configuration wizard.

The file sysprep.exe is located in the CAB file DEPLOY.CAB in the SUPPORT"TOOLS folder of the windows install disk.

Run SysPrep on the base image to seal it:

  • Create a folder C:"Install"Sysprep on the VPC installation
  • Copy the contents of DEPLOY.CAB to C:"Install"Sysprep
  • Run sysprep.exe
  • In the main dialog box, click Reseal

You can then create your servers for the multi-box install starting from this image. Note that you have to enter the key for Windows Server 2003 so keep it handy.

I’ve also tried using the NewSid tool to rename VPCs, but this tends to cause problems with DTC when configuring the BizTalk Servers.

Installing the AD/SQL Server

The first server to install is the Active Directory and SQL Server. This will host the BizTalk domain user accounts and groups, and also the BizTalk Server databases. As this server would be a SQL Server cluster in the real world, the Enterprise Single Sign on Master Secret Server will also be hosted on this server.

Create and Activate the VM

  • Make a copy of the base image hard disk file (VHD), rename it to ADSQL Hard Disk.vhd.
  • Create a Virtual Machine named ADSQL which uses this drive, set the RAM according to the RAM on your host machine.
  • Set the Networking property to Local Only
  • Start the Virtual Machine

When the VM starts, it will enter Mini Setup, you will have to enter your key, set the password, and set the time zone. Accept all the other settings as default.

Install Active Directory

When the image starts, you are ready to install Active Directory. The following procedure will install Active Directory, DHCP, and DNS.

  • Set the VM to have a static IP address of 192.168.0.1 (Control panel, Network Connections, Local Area Connection, Properties, TCP/IP, Properties, Use 192.168.0.1 for the IP address, and the DNS server).
  • Run Manage Your Server, and click Add or Remove a Server Role
  • Select Typical configuration for a first server, and enter biztalk.local as the domain name
  • Accept all the defaults, selecting No, do not forward queries for the DNS page
  • When the install is almost complete, the VM will restart and finish the install

Install SQL Server 2005

Perform a basic installation of SQL Server 2005, selecting SQL Server Database Services and Workstation components, Books Online and Development tools. Use the Local System account as the Service Account, and select SQL Server Agent to start at the end of the setup. This will take a while, and you will be prompted to change discs half way through the process.

Whilst the SQL Install is running, you can also:

  • Configure the domain users and groups
  • Create, activate, and install BizTalk1
  • Create, activate, and install BizTalk2

The BizTalk configuration requires SQL Server to be running.

Configure SQL Server for Remote Connections

In order for the BizTalk servers to connect to SQL Server, remote connections need to be enabled.

  • Run SQL Server Surface Area Configuration
  • Select Surface Area Configuration for Services and Connections
  • On the Database Engine, enable local and remote connections for both protocols
  • Restart the database engine

Creating the BizTalk Domain Users and Groups

As we are working in a multi-box environment, we will need to create the active directory users and groups. We will also need to create memberships for some of the accounts in the relevant groups.

Use the Active Directory Users and Computers tool for these tasks; it’s in Administrative Tools on the start menu.

Create a BizTalk Organizational Unit

To keep things tidy, we will place all the BizTalk users and groups in an ou (Organizational Unit).

  • Create a new Organizational Unit named biztalk to the biztalk.local domain.

Create the Users

The users are required for the various BizTalk services. I used the same password for all the users, and kept it in a txt file on the desktop so I could copy-paste it when I needed to. (Not good to do in production though). I also copy-pasted the user and group names, you can do this from this article.

Create an organizational unit (ou) names biztalk, and the users and groups in this ou.

For each user:

  • Paste the username into FirstName, and User logon name
  • Paste the password in both password boxes
  • Uncheck User must change password…, check User cannot change password, and Password never expires

User

Description

SsoService

Enterprise Single Sign-On service account

BizTalkHost

BizTalk Server host service account

BizTalkIsoHost

BizTalk Server isolated host account

ReuService

The Business Rules Engine update Service

 

Create the Groups

  • Copy-paste the group names to create the following groups in the biztalk ou.
  • Add the relevant users to the groups.

Group

Members

Description

SSO Administrators

Administrator

SsoService

Group for administrating SSO

SSO Affiliate Administrators

 

Group for administrating SSO

BizTalk Server Administrators

Administrator

BizTalk administration users

BizTalk Server Operators

 

BizTalk operation users

BizTalk Application Users

BizTalkHost

BizTalk in process host instances

BizTalk Isolated Host Users

BizTalkIsoHost

BizTalk out of process host instances

 

These groups will be used for the security configuration of the BizTalk Server databases.

 

Configure DTC

In order for BizTalk to run against the databases on a remote SQL server, you will need to configure the DTC options.

  • In the Add or Remove Programs section of the control panel, select Add/Remove Windows Components
  • Select Enable network COM+ access and Enable network DTC access
  • Restart the server

 

 

Install and Configure Enterprise Single Sign-On Master Secret Server          

The SSO Master Secret server will be installed on the ADSQL Server. In a production environment, the SQL Server would probably be hosted on a clustered server, it is also possible to host the Master Secret Server in the same cluster as the SQL Server hosting the BizTalk databases.

  • Run the BizTalk Server Installation
  • On the Installation options, select ESSO Administration module and ESSO Master Secret Server only
  • After the installation, launch Configuration, and select Custom Configuration
  • Configure the SSO Service to create a new SSO System
  • Use the SSO Service domain account (BIZTALK"SsoService)
  • Set the SSO groups to BIZTALK"SSO Administrators and BIZTALK"SSO Affiliate Administrators respectively
  • Set a password and reminder for the Master Secret backup
  • Apply the configuration
  • Use Event Viewer to verify the ENTSSO service has started successfully

 

Install the First BizTalk Server

  • Make a copy of the base image hard disk file (VHD), rename it to BizTalk1 Hard Disk.vhd.
  • Create a Virtual Machine named BizTalk1 which uses this drive, set the RAM according to the RAM on your host machine.
  • Set the Networking property to Local Only
  • Start the Virtual Machine
  • Complete the mini-setup, using BIZTALK1 as the computer name

 

Install BizTalk Server 2006

As we are using local networking, we will need to download the BtsRedistXpEN32.cab file in order to install the BizTalk prerequisites. To save a bit of drive space I created a compressed folder named Install, and copied the Bts Install files and the CAB file into it.

These are the options I selected:

  • Documentation
  • Server Runtime (without Base EDI Adapter)
  • Administration Tools
  • Additional Software / Business Rules Components

 

Copy the Image to create BizTalk2

We can now make a copy of BizTalk1 Hard Disk.vhd, and rename it to BizTalk2 Hard Disk.vhd, this will allow us to SysPrep this image to create BizTalk2.

  • Shut down BizTalk1
  • Make a copy of BizTalk1 Hard Disk.vhd
  • Rename the copy BizTalk2 Hard Disk.vhd

 

Join the biztalk Domain

Use My Computer – Properties – Computer Name to join the biztalk domain.

Configure DTC

In order for BizTalk to run against the databases on a remote SQL server, you will need to configure the DTC options.

  • In the Add or Remove Programs section of the control panel, select Add/Remove Windows Components
  • Select Enable network COM+ access and Enable network DTC access
  • Restart the server

Creating the BizTalk Group

 

Set Undo Disks

Now it the time to use the undo disks, if things go bad, it’s great to be able to roll back to how things were before, and have another try.

  • Shut down VMSQL and BIZTALK1
  • Enable undo disks on both VMs
  • Start VMSQL
  • Start BIZTALK1
  • Logon to BizTalk1 as the BIZTALK domain administrator (BIZTALK"Administrator).

Configure BizTalk1

In order to access the domain accounts, you will need to logon to BizTalk1 as the BizTalk domain administrator (BIZTALK"Administrator).

Run Configuration from the BizTalk 2006 menu, and select Custom configuration.

Configure BizTalk as follows:

Section

Tasks

Enterprise SSO

Enable ESSO

Join an existing SSO system

Database Server Name – ADSQL

Set the account name to BIZTALK"SsoService

Enterprise SSO Secret Backup

No changes

Group

Enable BizTalk Server Group on this computer

Create a new BizTalk Group

Database Server Name – ADSQL (3 databases)

Set the group names to BIZTALK"BizTalk Server Administrators and BIZTALK"BizTalk Server Operators

BizTalk Runtime

Register BizTalk Server runtime components

Create BizTalk In-Process Host and Host Instance

Create BizTalk Isolated Host and Host Instance

Set the account names to BIZTALK"BizTalkHost and BIZTALK"BizTalkIsoHost)

Set the group names to BIZTALK"BizTalk Application Users and BIZTALK"BizTalk Isolated Host Users

MSMQT

No changes

Business Rule Engine

Enable Business Rules Engine on this computer

Database Server Name – ADSQL

Set the account name to BIZTALK"ReuService

 

HWS Runtime

No changes

BAM Tools

No changes

BAM Alerts

No changes

 

Export Configuration

BizTalk 2004 provided the option to save the configuration file after completing the Wizard. BizTalk 2006 allows you to export, and import configuration files, which means you can re-use your create group configuration settings for using when you join the group on the second server. Better still, you can leave the passwords out of the configuration, meaning configuration files can be distributed without them containing sensitive information. This allows an administrator to import the configuration, set the passwords, and then configure the server, ensuring that the users, groups, and database settings are consistent.

 

Apply configuration

Apply the configuration. This is the most likely point of failure in this lab (hence the undo disks). If things go bad, take a while to look at the problem, and check that you have completed the setup of the servers correctly.

Checklist

DTC Settings Enabled

Verify Configuration

Check the Application section of the Windows Event log, there should be lots of Information entries, and no errors or warnings relating to BizTalk or ESSO.

Start the BizTalk Server administration console and verify the BizTalk Server host instance is started.

Try stopping and starting the host instance.

Configure the BizTalk2

The second BizTalk server will be configured with the “Join Group” option.

Activate the Image and Join the Domain

  • Create a Virtual Machine based on BizTalk2 Hard Disk.vhd, ensure that you have selected Local Only networking
  • Start the VM, and then run SysPrep.
  • Start the VM again, and complete the mini-setup, using BIZTALK2 as the computer name.
  • Join BizTalk2 to the BIZTALK domain
  • Restart BizTalk2, and log on as the BIZTALK domain administrator (BIZTALK"Administrator).

Configure BizTalk2

As you have already configured BizTalk1, and exported the configuration file, you can use this file for the basic settings of the BizTalk2 configuration. When you import this configuration file, you will need to set some of the options, and set the passwords for the accounts.

  • Ensure you are logged on as the BIZTALK domain administrator (BIZTALK"Administrator).
  • Copy the configuration file to BizTalk2
  • Start the BizTalk Configuration application
  • Import the configuration file
  • Use the “Join Group” option in the configuration section

The configuration for BizTalk2 will run much faster than for BizTalk1, as the BizTalk databases have already been created on ADSQL.

Troubleshooting

Hopefully I’ve covered all the important points to get up and running with a multi-box install. But there are bound to be issues that people will hit. Some of the common ones are:

  • DTC Configuration Issues – Check the settings. Sometimes it may help configure the servers as application servers, (adds IIS and DTC functionality), as this seems to set the correct DTC settings.
  • SID Conflicts – If the virtual images are not sys-prepped, the SIDs can cause conflicts with the DTC configuration.
  • Security Issues – Make sure you are logged on as Domain Admin when you configure the BizTalk servers.
  • Databases Already Exist – If a configuration fails, you will need to delete the existing BizTalk databases before you run config again. I find it’s easiest to use undo disks, and skip changes if there’s an error.

Testing the Installation

Once you have the multi-server environment setup, there’s quite a few things you can test on it.

  • Creating a multi server deployment package for a BizTalk application. I usually setup a file share on ADSQL when using the file adapter.
  • Stop the SSO Master Secret Server on ADSQL, and see how the BizTalk Servers react.
  • Shut down one of the BizTalk Servers when processing a batch of messages and check out the recoverability. I usually use PerfMon on ADSQL to monitor the BizTalk servers using the BizTalk perf counters.
posted @ 2009-04-30 09:42  阿新  阅读(1086)  评论(0编辑  收藏  举报