This shares the project plan and continues from on my previous post. Furthermore, this pulls together what I said before in the 3 presentations below;
- April 2019 http://www.integrationusergroup.com/migrating-biztalk-solutions-to-azure/
- August 2019: Integration Down Under- Migrating BizTalk Solutions to Azure
- April 2020: ACSUG – Migrating BizTalk Maps to Azure
Project plan goals
Previous presentations list the following strategic goals;
- Firstly, reuse as much from BizTalk Server in Azure as possible. As a result the migration this will be quicker than building all the integrations again.
- Secondly import BizTalk schemas, maps, AS2 agreements and certificates into an Integration account.
- Thirdly, use an Integration account with a logic app and or function app to encapsulate workflow equivalent to BizTalk Server.
- Fourthly, reuse a custom BTHub SQL database and migrate it to an Azure SQL database.
- Fifthly, Application Insights provides the monitoring and telemetry of the Azure solution.
- Sixthly, Azure DevOps provides continuous integration and development.
- Finally, use Service Bus Topics and Azure Storage. For the purpose of providing a point of persistence for retries in case of micro internet outages. As well as implementing a publish subscribe model to replace the same in BizTalk Server.
Most importantly migration can happen without touching any of the existing third-party applications because it is already agnostic of these. Furthermore , if ERP applications move to Azure or stay on-premise the Azure solutions and existing BizTalk solutions will still work. Additionally, there are no assumptions on where the third-party applications are hosted.
Project Plan implementation options
In the beginning when I wrote my original plan for migration, circa 2017 I was largely on my own. Thus what follows is what I thought at the time.
Before I move on to this, lets consider a modern alternative to rolling you own plan. A promising candidate is the BizTalk Migrator. The BizTalk Migrator is a command-line tool that helps migrate BizTalk applications to Azure Integration Services. I think this is worth a look if you are just starting but it was too late for me.
In contrast we chose to gradually move BizTalk interfaces into Azure components rather than a big bang approach. Thus, BizTalk Server and Azure Integration services will be running in tandem while the migration occurs. Over time more and more messages will go through Azure and eventually all messages will go through Azure. At that point the two BizTalk Server can be shut down.
The Migration plan
The migration includes
- Code creation
- Deployment to UAT
- Acceptance testing
- Deployment to production.
- Handover to BAU
Assuming that each interface will take on average 1 day to migrate and we have 200 interfaces I estimate this will take use 200 days to migrate.
The plan splits nicely into three patterns;
- Customer Stream delivered in Azure
- Supplier Stream in Azure
- Batch Extract Stream in Azure
Customer Stream delivered in Azure
This is an Orders and POA solution that I talked about in my August 2019 talk.
Supplier Stream in Azure
This is a AS2/EDIFACT solution that I talked about in my April 2019 talk.
Batch Extract Stream in Azure
This is a invoicing and credits solution that I talked about in my April 2020 talk.
In summary I shown my project plan which started my journey two years ago to migrate from a BizTalk Server to an Azure solution.