Create & Configure BizTalk Server 2013 VM in Windows Azure

1.        Overview

The objective of this document is to provide a step-by-step guidance for creating a new virtual machine using the BizTalk Server 2013 beta image available in Windows Azure platform images gallery and then using the same VM to configure single server BizTalk Server environment. Finally, the page provides step by step guide to create and test a simple message routing scenario using the same BizTalk Server environment.

2.        Pre-requisites

You need to have Windows Azure subscription for Windows Azure Virtual Machine (preview) features. You may sign-up for Virtual Machines & Virtual Networks preview feature through the signup options available on Windows Azure Website.

3.        Create BizTalk Server 2013 Virtual Machine

After signing up for Windows Azure subscription, login to the Windows Azure Management Portal.

  I.            In the command bar (at the bottom-left of the portal), select New -> Compute -> Virtual Machine -> From Gallery.

 

      II.            This brings up the Create Virtual Machine wizard. In the first step of the wizard, select Microsoft BizTalkServer 2013 Beta image from all images. Microsoft BizTalk Server 2013 Beta (64-bit) on Windows Server 2012 image contains the Beta version of BizTalk Server 2013.

 

Click Next (arrow icon on the bottom right of the wizard).

    III.            On the next page, provide virtual machine configuration details:

  • Virtual Machine Name: This is the name of the BizTalk Server virtual machine. You should consider using a name for the virtual machine that is descriptive enough to tell what it is used for, but short enough to make it easy to use e.g. BTS2013Demo.

The length of the name must be between 3 and 15 characters. The name can contain only letters, numbers, and hyphens. The name must start with a letter and must end with a letter or a number.

  • New User Name: This is the username with administrator privileges that will be used to connect to the virtual machine. You may not change the initial user name – Administrator. However, you could create additional login or service user accounts after the virtual machine is created.
  • Password: This is the password for the Administrator user account. It should be at least 8 characters.
  • Size: Virtual machine may be created with different sizes. Each size has an associated CPU cores, memory, disk space etc. For demonstration purpose, you may select the Small size which comes with 1 core and 1.75 GB memory.

 

Click Next.

    IV.            On the next page, provide virtual machine mode details:

In this lab, we will create a standalone virtual machine. However, it is possible to connect multiple virtual machines to balance the load of traffic to your application. For standalone virtual machine, provide following details:

  • DNS Name: Specify the name of the cloud service that will be created for the virtual machine. The DNS name can contain only letters, numbers and hyphens. The DNS name must start and end with a letter or a number.
  • Storage Account: Name of the Windows Azure storage account in the current subscription that will be used for storing the virtual machine image that gets created. You may specify to create a new storage account or select an existing one, if available.
  • Region/ Affinity Group/ Virtual Network: Select the name of the region, affinity group, virtual network where the virtual machine will be created.

 

Click Next.

      V.            On the next page, provide virtual machine options:

An availability set is a group of virtual machines that are deployed across fault domains and update domains. An availability set makes sure that your application is not affected by single points of failure, like the network switch or the power unit of a rack of servers.

For this scenario, leave the default selection – None for availability set.

 

Click Submit (Tick icon).

At this point, Windows Azure will start provisioning the virtual machine, as per the configuration details provided through the wizard.

Windows Azure Management Portal will show the status as Starting (Provisioning), as shown below:

 

Similarly, you would see the storage account status (based on whether you selected to create a new storage account or use an existing storage account

 

In roughly 4-5 minutes the virtual machine should be created. You would also see the virtual hard disk file created in the storage account (navigate to storage account -> Containers -> select container), as shown below:

 

    VI.            To start virtual machine select the virtual machine in Windows Azure Management Portal and click Start in the command bar on the bottom.

  VII.            To remote desktop into virtual machine, click Connect in the command bar on the bottom.

 

VIII.            Provide user name and password to connect to the virtual machine. You need to use same username (Administrator) and password that was provided in the wizard, during creation of virtual machine.

 Upon completion of this, you should now be connected to the newly created BizTalk Server virtual machine.

 4.        Configure BizTalk Server 2013

In this section, we will configure BizTalk Server environment on the single machine.

        I.            Open BizTalk Server Configuration wizard.

Tip: You may locate the BizTalk Server Configuration by searching for BizTalk in the sidebar on remote BizTalk Server.

 

      II.            Select Basic Configuration.

    III.            Provide Database server name - same as BizTalk Server machine as we are setting up single box environment, username and password. You may choose to use the same administrator account or create a local account with less-privileges to configure BizTalk Server, to avoid the following warning message. If selecting the administrator account, then select Yes to proceed ahead.

 

 

    IV.            Click Next. BizTalk Server will start configuring, as shown below.

 

Upon successful completion, you should see following features configured in your BizTalk Server machine.

 

Also following databases should be created on the SQL Server:

 

      V.            Open BizTalk Server Administrator Console .

  

    VI.            By default, the administrator console will not be connected to any BizTalk Server Group. Since we already have BizTalk Server configured, choose Connect to existing group.

 

  VII.            This will bring up the following dialog box. Specify the SQL Server name (local server name) and Database name as BizTalkMgmtDb. Click OK.

 

This would show the BizTalk Server artifacts, as shown in the figure below:

 

5.        Configure Receive and Send Ports

In this step, we will create and configure send and receive ports for a simple pass-thru message routing scenario.

I. Expand existing application – BizTalk Application 1. Right click Receive Ports and select New -> One-way Receive Port…

This brings up the Receive Port Properties dialog box.

ii.                   Provide receive port name as FileReceivePort.

iii.                  Select Receive Locations and click New.

This brings up Receive Location Properties dialog box.

iv.                 Specify receive location name as File Receive Location.

Select Transport Type as FILE.

Select Receive pipeline as PassThruReceive. This means that BizTalk Server will not do any processing on the incoming message and save the same into BizTalk MessageBox as-is.

 

v.                   Click Configure. This brings up File Transport Properties dialog box.

 

vi. Specify Receive Folder Path.

Make sure that receive folder exists on the server.

Also change the file mask to * so that BizTalk can pick up any file irrespective of the file extension type.

Click OK to save the changes and close the dialog boxes.

 vii.                To create a new send port, right click Send Ports. Select New -> Static One-way Send Port.

 viii.              Specify send port name as FileSendPort

Select Transport Type name as FILE.

Select Send pipeline as PassThruTransmit.

 

ix. Click Configure. This brings up File Transport Properties dialog box.

x. Specify Destination Folder path.

Make sure that the destination folder exists on the server. Also change the file name to %MessageID%.

Click OK.

xi.                 We will now specify the routing filter conditions on the send port.

Select Filters.

Select Property as BTS.ReceivePortName and Value as FileReceivePort.

This creates a BizTalk subscription so that every message that is picked up by the receive port named ‘FileReceivePort’ is sent to this send port.

 xii.                Click OK to save the changes and close the dialog boxes.

 6.        Start BizTalk Application

Although we have created and configured BizTalk receive and send ports, the subscriptions are not activated until the ports are enabled. You could enable the ports one-by-one or start the BizTalk application at once.

I. To start the BizTalk application, right click BizTalk Application 1 and select Start.

 This brings up Start ‘BizTalk Application 1’ Application dialog box.

 

ii.                   Click Options >> for more details. Click Start.

 

iii.                  Make sure that receive location, send port and host instance are enabled and started, as shown below:

 7.        Test Scenario

To test the scenario, drop a file in the receive location folder that you specified while creating the receive port/ location. The file can be of any type e.g. xml, txt, exe, etc. because it is a simple pass thru messaging scenario, where no message validation is performed by BizTalk server.

 

BizTalk Server should pick up the file you dropped and create a new file named as a unique identifier in the destination folder.

 

Summary: When considering IaaS, lot of focus has to be on architecting and designing for non-functional requirements such as security, integration mechanism with other systems that continue to remain on-premise, performance, reliability etc. Once we get this right, the development for cloud is not much different from the on-premises environment.