Why should you upgrade your BizTalk Platform?
People in the Integration space would always remember the BizTalk stickers that they receive from Sandro and here it is for BizTalk 2020.
If you want to download ithttps://github.com/sandroasp/BizTalk-Server-Logos-Stickers/tree/master/BTS2020/Lord-BizTalk-Darth-Vader https://aka.my/lyt
As the new version of BizTalk Server is released and you wanted to take advantage of the new features and improvements, you need to device the strategy for seamless migration. In this section, Sandro is explaining why you should upgrade your BizTalk platform in general.
Here are a few reasons:
- Lots of support
- If you are in an older version of BizTalk, then it’s time for you to migrate for continuous support especially the Enterprise clients.
- Environmental constraints
- BizTalk Server heavily depends on the performance of the Windows server and SQL server. It’s time to upgrade for better performance
- New features
- Every release of BizTalk comes with a bunch of exciting features for Hybrid Integration
- Support for TLS 1.2
- Support for XSLT 3.0 which is a feature asked for many years
- More privacy and security for GDPR
- Feature packs
- New features can be added through the feature packs, so you need not wait for 3 to 4 years for the new features
- Migrate to cloud
- Ability to run on Azure VM as IaaS in order to use advanced capabilities like Logic Apps, Service bus, storage account, etc.,
- Administrator and Developer productivity enhancements
- New Visual Studio console features, dot net component, Admin console features.
What are the migration options in general?
There are two options,
- Migrate to Azure
- Migrate to the new version (BizTalk Server 2020)
Migrate to Azure
Hosted Azure Servers
This is the easy option as most of them run BizTalk on the Azure VMs. There are options of high availability and, they can be hosted in various regions.
Migrating to Azure Services
This is completely moving out of BizTalk. All the BizTalk related artifacts will be migrated to the Azure services. It is a complete redesign of the Integration solution. For example, there will be no Message Box and therefore Service Bus needs to be used to persist the messages. It is a difficult option even with the new BizTalk Migration Tool.
BizTalk Server has a rapid release cadence of major versions every 2/3 years with radical changes. Azure is completely different. BizTalk server with the long release history is very stable. Eg: Features that are introduced in 2004 are being used as a core feature until the current version of BizTalk.
But the cases are completely different in Azure,
- There is a release for Azure every week and there are features get deprecated.
- There is no one to one mapping in Azure.
- Eg: There is an orchestration in the BizTalk solutions, and you need to migrate it to Logic Apps or Azure functions.
- There is a message box and you can run a Service Bus.
- The process on arrival needs to be improved in Azure on regular basis to improve the performance. (Eg Logic Apps, Azure Functions, API’s)
- There are some interesting options still missing in Azure like Business Rules.
BizTalk 2020 Migration
There are two options available to migrate to the latest version of BizTalk Server (2020)
- In-Place upgrade
- Migrate Solutions to New Environment
This is the first option and it’s too risky to do it directly in the production environment. And most of the integrations people won’t choose this option for the upgrade.
Eg: In the previous version BizTalk Server 2013 R2 they might be using the different OS (Windows Server 2012 R2,2012,8.1, 7 SP1), SQL Server but to migrate to the latest version needs an upgrade of that supported software’s as well mentioned in the below screenshot.
There are few constraints like the SQL Adapter that has been deprecated, TIBCO Enterprise Message Adapter has been removed and the RosettaNet has issues in BizTalk 202 for which the hotfix needs to be installed for smooth functioning.
Migrate to the brand-new environment
The AS-IS migration
This is migrating the solutions without any non-mandatory changes. The .Net framework needs to be changed, the deployment properties need to fix and the solution to be rebuilt.
Migrate and Improve
This needs to be done on the analysis of the business requirements and what needs to be improved on the solution side. This requires a more prolonged version of testing a lot of improvements would be added and for the integration between different teams.
With his experience of more than 16 years working in BizTalk, Sandro shares the statistics on the effort of different migration options. You can get all those different metrics and the amount of time it would take during the migration represented in the below screenshot.
The effort to Migrate artifacts/components for BizTalk Server
There are some pain points while migrating the BizTalk Server artifacts/components in the source code level.
- Mapping is the very difficult part because in version 2013 there is new mapping change and they are not 100% compatible.
- If you are migrating from 2016 it is seamless but in older versions are difficult to migrate.
- The main problem is for some problems you cannot check them directly in the build, but it needs to be corrected during the execution time.
- Eg: Change in Scripting Functiod Boolean parameter Behaviour (https://support.microsoft.com/en-us/help/2887564)
- Scripting functoid cannot return null out of an inline c# method
- Passing Null values around chain functiods in not simple anymore
- Helper classes used in maps cannot use overloading
- Only public methods may be called from xpath expressions
- Passing a node to a helper class as a XpathNodeIteraror now requires a Node.MoveNext to select the first node.
- SAP (BTS2006) and SQL (2016) adapters are removed. So, all generated schemas need to be recreated.
- EDI might have problems. Because of TPM, parties cannot be directly migrated. You will need to use the BizTalk Server Party Migration Tool
- BTDF is not available
- RFID and Human workflows are removed
- BRE is a simple export/import
How easy is the migration from the older versions?
In this section Sandro is explaining about how much migration effort it would take from different versions of BizTalk Server to latest version (2020).
BizTalk Server 2013 to 2016 – These are easy migrations.
BizTalk Server 2010 – Depending on the features and solutions it can give you some work. But normally, if everything is well done it is easy.
BizTalk Server 2009 to 2004 – It is little difficult. For the normal and basic stuffs it could be fine. It requires some work to do the EDI and Maps.
BizTalk Server 2002 to 2000 – All the stuffs need to re-write everything from the scratch. As a better option you can migrate to Logic Apps.
Hope the insights on the BizTalk Server 2020 gives a clear picture on the migration path. Sandro and Tom Canter are working on the book on the BizTalk2020 Migration which would be available soon.