How to choose the right deployment model for your MuleSoft Applications?
If you have read my previous article, you will know that MuleSoft is a one-stop hub for your organizations’ data integration needs where data integration takes place via a ‘Three-layered API led connectivity architecture helping your organization to navigate efficiently along its path of digital transformation.
But before starting the process of data extraction, data orchestration, and data connectivity through a network of applications it would be wise to decide where exactly these applications will be deployed to run.
MuleSoft is a very flexible platform that provides varied deployment options to host your network of applications and you have to evaluate the right deployment model to make digital transformation seamless and glitch-free for your enterprise.
MuleSoft provides the following deployment options for enterprises to host their network of applications
The deployment can happen either in one of the above platforms or a combination of them.
Factors such as Security/compliance-related decision points, Jurisdiction related decision points, cost related decision points, Time-related decision points, Infrastructure related decision points, and Architecture related decision points will drive the way on how you would choose the right deployment model for your enterprise.
Now that you know the different deployment options provided by MuleSoft and the factors that influence the decision of arriving at the right model, the next big question is How to choose the right one for my enterprise?
Well, it’s not rocket science, arriving at this decision involves asking a few plain and simple questions, lets look at how we can go about making that decision.
The first step is to decide if you want
Are you planning for all your data to be moved to the cloud ie., complete cloud migration or do a step-by-step migration?
You might want to do step by step migration since legacy systems cannot be moved to the cloud, or you might have too many servers.
In such a scenario the new apps can be built and deployed on the cloud and the existing apps will be running on-premises.
So, the right deployment model, in this case, will be Hybrid Infrastructure and Solutions.
If you are still on the fence about complete cloud migration then it will be ideal to do a few more assessments before arriving at the final decision.
So, what are those assessments that will propel you to decide on either going with complete cloud migration or a partial one?
From the above assessments you have decided if you want a full cloud or hybrid or on-premises infrastructure and solutions, now what next?
If you have chosen Fully cloud Infrastructure and Solutions
There are three deployment models in this category they are
Recommended by LinkedIn
To arrive at one of the above categories the following assessments have to be done.
If your answer to all the above questions is a yes then you can choose the Fully MuleSoft-Hosted Deployment Model (Fully iPaaS) where both the control plane and runtime plane are hosted by MuleSoft.
Under Fully iPaaS you can choose either the Shared Worker Cloud or Private Worker Cloud based on your enterprise needs.
If you are planning to retain your infrastructure team and find out that maintaining a Fully iPaaS model is expensive then the Hybrid (MuleSoft-Hosted + Customer-Hosted) Deployment Model (iPaaS & IaaS) is the model for you where the control plane is hosted by MuleSoft and the runtime plane is hosted by customer.
You can choose Anypoint Runtime Fabric (RTF), Anypoint Pivotal Cloud Foundry (PCF), or Self-Maintained Mule Runtimes based on your enterprise needs.
If there are jurisdiction regulations governing data in your state but do not have a MuleSoft hosted control plane then you have to choose a Fully IaaS model that has both the Customer-Hosted Control Plane and Customer-Hosted Runtime Plane on the IaaS platform.
Again, you can choose Anypoint Runtime Fabric (RTF), Anypoint Pivotal Cloud Foundry (PCF), or Self-Maintained Mule Runtimes based on your enterprise needs.
If you have chosen Hybrid Infrastructure and Solutions
The first question to ask is if there are any jurisdiction regulations governing the data?
If there are no restrictions then you can easily select Hybrid (MuleSoft-Hosted + Customer-Hosted) Deployment Model (iPaaS & On-Premises)
If there are regulations then you have to check if there is a MuleSoft hosted control plane in your jurisdiction.
If there is no MuleSoft hosted control plane then there is no other option but to go with the Fully Customer-Hosted Deployment Model (Fully IaaS).
But if there is a MuleSoft hosted control plane then you can easily go with Hybrid (MuleSoft-Hosted + Customer-Hosted) Deployment Model (iPaaS & On-Premises)
In the Hybrid (MuleSoft-Hosted + Customer-Hosted) Deployment Model (iPaaS & On-Premises) you can choose Anypoint Runtime Fabric (RTF) to build an applications network or just Self-Maintained Mule Runtimes if you have no plans of building an applications network you have chosen Fully On-premises Infrastructure and Solutions
When using Fully On-premises Infrastructure and Solutions you can choose again between Anypoint Runtime Fabric (RTF) or Self-Maintained Mule Runtimes based on how you want your applications to be built.
Conclusion
It is extremely important to select the right deployment architecture to run its network of applications, and through this article, we hope we have given a comprehensive checklist to zero in on the right model for your enterprise.
Must have gratitude:
Thank a lot Prasad Pokala for your comprehensive guide and sharing your valueable experiences & Thanks for the inspiration.
Sr.Integration Architect at Relanto
1yGood Info about the factors that help to choose the right Deployment model