Microsoft BizTalk ESB Toolkit 2.0 released to web yesterday evening, and if you have not been following the earlier CTPs, now is a great time to get on board. The name has been changed, a support model has been introduced, and official MSDN forums for the Toolkit have been made available.

Since there are not any VMs that you can simply download and get up and running with quickly, I decided to put together a quick and dirty installation guide for installing the Toolkit on a single server in a 32-bit virtualized environment for evaluation purposes. What follows are the steps to get you from 0 to ESB with all of the sample applications.

  1. Install the Pre-Requisite Components
  2. Install the main MSIs (Docs/Toolkit x86)
    • Currently available for download here.
  3. Import/Install C:\Program Files\Microsoft BizTalk ESB Toolkit 2.0\Microsoft.Practices.ESB.ExceptionHandling.msi
  4. Import/Install C:\Program Files\Microsoft BizTalk ESB Toolkit 2.0\Microsoft.Practices.ESB.CORE.msi
  5. Give SQL Service account permissions to all of the BAM related databases
  6. Using the bm.exe tool, deploy the BAM Activities located at C:\Program Files\Microsoft BizTalk ESB Toolkit 2.0\Bam
    • bm deploy-all -DefinitionFile:"C:\Program Files\Microsoft BizTalk ESB Toolkit 2.0\Bam\Microsoft.BizTalk.ESB.BAM.Exceptions.xml"
    • bm deploy-all -DefinitionFile:"C:\Program Files\Microsoft BizTalk ESB Toolkit 2.0\Bam\Microsoft.BizTalk.ESB.BAM.Itinerary.xml"
  7. Run C:\Program Files\Microsoft BizTalk ESB Toolkit 2.0\Bin\ESBConfigurationTool.exe
    • You have to apply settings on each page before continuing to the next page
  8. Run C:\Program Files\Microsoft BizTalk ESB Toolkit 2.0\Bin\Microsoft.Practices.ESB.UDDIPublisher.exe
    • If errors, uncheck Require SSL setting in UDDI3 MMC
  9. Extract C:\Program Files\Microsoft BizTalk ESB Toolkit 2.0\ to C:\Projects\Microsoft.Practices.ESB\
  10. Create snk at C:\Projects\Microsoft.Practices.ESB\Keys\ [command below requires Visual Studio Command Prompt]
    • sn -k Microsoft.Practices.ESB.snk
  11. Mark C:\Projects\Microsoft.Practices.ESB\ as NOT read-only
  12. Run the command below
    • powershell Set-ExecutionPolicy unrestricted
  13. Run the command below
    • C:\Projects\Microsoft.Practices.ESB\Source\Samples\DynamicResolution\Install\Scripts\Setup_bin.cmd
  14. Run the command below
    • C:\Projects\Microsoft.Practices.ESB\Source\Samples\Itinerary\Install\Scripts\Setup_bin.cmd
  15. Run the command below
    • C:\Projects\Microsoft.Practices.ESB\Source\Samples\MultipleWebServices\Install\Scripts\Setup_bin.cmd
  16. Repeat for remaining samples (setup_bin.cmd or SampleName_Install.cmd for each)
  17. Open the Visual Studio solution named ESB.Portal.sln from the C:\Projects\Microsoft.Practices.ESB\Source\Samples\Management Portal\ESB.Portal folder, and then make sure that the section of the Web.config file contains the correct connection strings for the ESBAdmin database.
  18. Open C:\Projects\Microsoft.Practices.ESB\Source\Samples\Management Portal\ESB.AlertService\ESB.AlertService.sln, and change TargetPlatform property of the Setup project to x86.
  19. Build C:\Projects\Microsoft.Practices.ESB\Source\Samples\Management Portal\ESB.AlertService\ESB.AlertService.sln
  20. Build C:\Projects\Microsoft.Practices.ESB\Source\Samples\Management Portal\ESB.UDDI.PublisherService\ESB.UDDI.PublisherService.sln
  21. Run C:\Projects\Microsoft.Practices.ESB\Source\Samples\Management Portal\ESB.AlertService.Install\Debug\setup.exe
  22. Run C:\Projects\Microsoft.Practices.ESB\Source\Samples\Management Portal\ESB.UDDI.PublisherService.Install\Debug\setup.exe
  23. Use the My Settings page in the portal to configure the main portal settings
    • Default URL: http://localhost/ESB.Portal/PortalSettings.aspx
  24. Configure the settings on the Fault Settings page in the portal
    • Default URL: http://localhost/ESB.Portal/Admin/Configuration.aspx
  25. Configure the settings on the Registry Settings page in the portal
    • Default URL: http://localhost/ESB.Portal/Uddi/UDDIAdmin.aspx

Once you have the BizTalk ESB Toolkit 2.0 installed, I would recommend you read the following documents (in order) in the official documentation to give you a tour of what all is there, and even get fairly deep into the inner-workings of the Toolkit, and extensibility opportunities:

  1. Overview of the BizTalk ESB Toolkit
  2. Architecture of the BizTalk ESB Toolkit
  3. Itinerary-Based Routing
  4. BizTalk ESB Toolkit Message Life Cycle
  5. The ESB Management Portal and Fault Message Viewer
  6. Prerequisites for the Development Activities
  7. Development Activities
  8. Running the Itinerary On-Ramp Sample
  9. Installing and Running the Scatter-Gather Sample
  10. Installing and Running the Multiple Web Services Sample
  11. The ESB Itinerary Selector Component
  12. The ESB Itinerary Forwarder Component
  13. The ESB Dispatcher Component [Most of the magic of ESB happens here]
  14. Implementing Design Patterns in Itineraries
  15. Creating a Custom Itinerary Service