Tallan's Technology Blog

Tallan's Top Technologists Share Their Thoughts on Today's Technology Challenges

Provisioning BizTalk Server 2013 R2 environment on Microsoft Azure IaaS Platform

Rakesh Gunaseelan

Setting up a new BizTalk Server environment on the Azure IaaS with multiple Azure Virtual Machines (VM) involves a lot of steps and prerequisites. I have explained them in this blog.

Firstly, sign up for a new Azure subscription or add your Live ID as the co-admin in the Azure subscription if one already exists.

After the co-admin/sys admin privileges, you can choose to administer the Azure subscriptions in these ways:  a) Azure PowerShell cmdlets  b) Azure Management Portal.

I have used the Azure management portal for provisioning all cloud entities as it is more convenient and a time saver. Below is the architecture diagram that explains the BizTalk environment in Azure IaaS.

arch

BizTalk IaaS environment on Azure

Before provisioning the VM, perform the steps given below

  1. Create a new Azure Virtual Network (VNet) –The VNet and Subnet that the virtual machines will be joining. Use a suitable starting IP and subnet size. Refer the diagram given below
vnet

VNet and Subnet range

 

After creating the VNet, provision the Virtual Machines (VM) and use the Azure virtual image gallery for BizTalk and SQL VM images:

a)      Domain Controller (DC) VM – Create a new Windows Server VM from the image gallery and then assign the DC VM as the DNS server. It will be used to create the domain users and groups which are used in configuring the BizTalk Server. Also create a domain, <Azure Domain Name> using this VM.

b)      Two BizTalk server 2013 R2 VMs – make sure to place the two BizTalk VMs in the VNet/Subnet 1 created earlier.

gallery

Create a new VM from the image gallery

biztalk2013r2

Select the BizTalk server 2013 R2 Enterprise/Standard edition

vmconfig0

Type the name for the VM, select the size, chose the tier and type the username/password

vmconfig1

Configure the rest of the settings for the BizTalk VM

When creating the first BizTalk VM (BTS01) it automatically creates a new “cloud service”. A cloud service is a collection of VMs in the same region/affinity group. The cloud service is associated to an availability set which also gets created automatically.

While provisioning the second BizTalk VM (BTS02) it’s important to join that cloud service and that availability set. The benefit of having the two VMs in one availability is that at least one of the two VMs is available any time.

a)      One SQL Server 2012 VM – again make sure to place the SQL VM in the VNet /Subnet created earlier.

sqlimage

Select the SQL Server image gallery and configure the VM step-by-step.

After the BizTalk and SQL VMs are provisioned, RDP into the VM to join your Azure Domain <Azure Domain Name>. Just to make sure that everything was connecting with each other, I tried pinging the VMs after disabling the firewall on all three VMs, i.e. domain controller, BizTalk & the SQL VM.

 

After provisioning the VMs and ping is successful, create the below domain users & domain groups using the Active Directory of the Domain Controller:

  • BizTalk service account – Create the BizTalk service account as a domain user account, e.g. <Azure Domain Name>\<BizTalk Service Account Name>.
  • Domain groups – will be used in configuring the BizTalk server group.

 

Domain groups for configuring the BizTalk server Domain group names
BizTalk Application Users <Azure Domain Name>\BizTalk Application Users
BizTalk Isolated Host Users <Azure Domain Name>\BizTalk Isolated Host Users
SSO Administrators <Azure Domain Name>\SSO Administrators
SSO Affiliate Administrators <Azure Domain Name>\SSO Affiliate Administrators
BizTalk Operators <Azure Domain Name>\BizTalk Operators
BizTalk Administrators <Azure Domain Name>\BizTalk Administrators
AD

Create the domain users/groups in the Active Directory in the Domain Controller VM.

After creating the domain users and groups, configure the MSDTC and open the ports to connect BizTalk VM to the SQL VM & vice versa.

 

  1. Enabled local MSDTC to allow inbound/outbound.
  2. Allow Inbound/Outbound ports 5000-5100 in firewall.

 

So, these are the pre-requisite steps to configure the BizTalk environment on Azure IaaS. I have not   covered the topic “Configuring the BizTalk servers” because configuring the BizTalk servers group is done as it was done On-premise BizTalk.

The next step was to deploy a simple orchestration exposed as a web service (basic-http) in this BizTalk Azure environment which is consumed from a console application outside the Azure environment. I’ll cover that in my next blog coming soon.

3 Comments. Leave new

Andrew De Bruyne
December 24, 2014 2:26 am

Great post, thanks. Very clear step-by-step description!

Ram Kinkar Pandey
August 23, 2015 5:23 pm

Hello Rakesh,
I am doing same what you wanted to do in the article above with few exceptions
1. BizTalk boxes would have static reserved IP and all the call from BizTalk to my LOB must go from that IP only.

Any advise?

Rakesh Gunaseelan
August 28, 2015 11:49 am

@Ram: I am not sure why you need the IP to be static?
The IP address is something which will change ,DNS name will not change. So, if it is not a hard requirement then you should try to use the DNS name of the BizTalk server for all purposes.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>