What is one of the biggest problems with having to set up BizTalk in a new Environment? Creating all the Hosts, Host Instances, and assigning the Adapters to these new hosts. This process has been made much simpler with the help of the BizTalk Host Setup Tool.
This tool is fed by a configuration file to set up the Hosts, install Host Instances, and assign Adapters to those Hosts. This tool also has the ability to prompt for a user password and reset all the Adapters back to the default Host (this was used extensively when I was testing the tool).
This will allow one developer to create the solution host layout and easily distribute it to others!
How should you set up your Hosts? For starters, you should have a Receive Host, a Send Host, a Process Host, and a Tracking Host. Then, continue to build out the Hosts as needed. In general, it is best for each Adapter to run in its own Host. But I'm a big fan of not taking this to extremes - specifically on single or double server BizTalk installations.
This tool will help you design and build your solutions by making it easy to separate out your processes into multiple hosts even on your developer boxes. It will also make sure all your developers and environments are using Hosts with the same names - a total nightmare to manage.
You can find the download here.
Note: This is intended as a starting point and you are free to build off of it and customize it as needed. It is nothing exciting as I am just wrapping WMI calls with what I hope is more user friendly XML tags. Please remember this and all other code on BizTalkGurus.com is AS-IS and not intended for production use.
I have included two sample config files. The two samples are HostConfig-Demo.xml and HostConfig.xml. Both have comments that should make it easy to figure out what is going on.
I have not tested this tool with remote setups or on anything other than BizTalk 2006 R2 (but anything 2004 to present should work).
Here is a sample of the XML Configuration File:
<BizTalkHostConfig Version="1.0" defaultHost="BizTalkServerApplication" defaultIsoHost="BizTalkServerIsolatedHost"> <MakeHosts> <!-- Basic Sample to create a HOST <Host> <HostName>MyTestHost</HostName> Host Type: Isolated or InProcess <Type>InProcess</Type> <NTGroup>BizTalk Application Users</NTGroup> <AuthTrusted>false</AuthTrusted> Action: true to install or false to skip <InstallServers Action="false" /> Action: true to set adapters or false to skip <SetAdapters Action="false" /> AdapterName Type: Receive or Send </Host> Detailed sample to create a host, install it, and set up an adapter to use the new host <Host> <HostName>MyTestHost123</HostName> Host Type: Isolated or InProcess <Type>InProcess</Type> <NTGroup>BizTalk Application Users</NTGroup> <AuthTrusted>false</AuthTrusted> Action: true to install or false to skip <InstallServers Action="true"> <Server> Start: true to start host or false to not <ServerName Start="true">LPT154</ServerName> <UserName>SomeUserSomePassword</UserName> Prompt: true to get a pop up to end password or false to enter it here <Password Prompt="false">SomeUserSomePassword</Password> </Server> </InstallServers> Action: true to set adapters or false to skip <SetAdapters Action="true"> <Adapter> Type: Receive or Send <AdapterName Type="Receive">File</AdapterName> </Adapter> </SetAdapters> </Host> --></BizTalkHostConfig>
Cool Stuff, a while ago I created a similar tool to put each BizTalk application in its own host/host instance setup.
Details can be found at:
excellent, I found your post very interesting and helpful. I regularly use a pre-processing script to run some WMI scripts to add the correct hosts for all my projects. I am going to try to use your example instead now.
I am going to try to extend your example so that 1) you can copy the host configurations from an existing BTS for loading into another BTS and 2) make it possible to run the same as a pre-processing script in MSI's.
P.S. I had seen Saravana's example before but I have never used it. One of the other guys in our office has used it on one project. I'll compare notes with him once i am done.
Best of luck. Those would be some good enhancements.
It should probably be a console app too. Since I can't spell - I avoid console apps. :)
Stephen W. Thomas
You might want to change the title in the Read Me.txt in the ZIP file. It currently says "Dynamic Maps in Orchestration for BizTalk 2004"... :)
Nice program though. I was thinking of doing something similar in a BizTalk admin utility program we've build at work.
A BizTalk telepítőkészletekben a legtöbbször a BizTalk SDK-ban található VBScript-eket használjuk, pl
Great Work! This is going to come in handy for our migration to BizTalk 2009.
HI Stephen, I am looking for the tool which you have created but i guess the tool is no more available. I got this error - The post you requested cannot be found or no longer exists. The administrator or moderator may have deleted the post.
Please let me know how I can download this tool.
I've updated the link in the blog post. It's for download here - www.biztalkgurus.com/.../32449.aspx