Breaking news from around the world
Get the Bing + MSN extension
Now Available in Community - MBAS 2019 Presentation Videos
Catch the most popular sessions on demand and learn how Dynamics 365, Power BI, PowerApps, Microsoft Flow, and Excel are powering major transformations around the globe. | View Gallery
2019 release wave 2 Discover the latest updates to Dynamics 365Release overview guides and videos Release Plan | Early Access Availability
Ace your Dynamics 365 deployment with packaged services delivered by expert consultants. | Explore service offerings
Connect with the ISV success team on the latest roadmap, developer tool for AppSource certification, and ISV community engagements | ISV self-service portal
The FastTrack program is designed to help you accelerate your Dynamics 365 deployment with confidence.
FastTrack Program | Finance TechTalks | Customer Engagement TechTalks | Talent TechTalks | Upcoming TechTalks
In this first post in the “Behind the scenes of a cloud service” series, we will give a high-level introduction to the overall service topology of Business Central in the cloud. Subsequent posts will dig deeper into specific parts or explore specific flows through the service, such as what happens when a user logs in, how upgrades are performed, etc.
At a very high level, we divide our services into 3 categories:
Let’s look at these in turn, starting from the data plane, which is where the traditional Dynamics NAV/BC processing takes place.
The concept of “data plane” is borrowed from the networking domain, and it refers to the part of the networking architecture that receives and forwards network packets according to routing tables etc. The network packets are the data, and the data plane processes this data by sending it to the right destination. In contrast, the “control plane” in a networking architecture contains information about the data plane, i.e., it defines the routing tables etc., but it doesn’t process the actual network traffic.
In Business Central, the “data plane” refers to the set of resources and services that process user requests, such as when a user presses “Post” on an invoice.
It consists of the well-known components
As shown, the data plane is also where customer data is persisted (in the databases).
The following picture shows the high-level architecture of a data plane cluster, and it should look familiar to most Dynamics NAV/BC partners:
A cluster consists of several VMs, each running the Web client and the NST, and there are the usual databases, both the App DB and the Customer DBs (aka tenant databases).
As more and more customers come to the service, we scale horizontally by adding more clusters (and databases):
Finally, for several reasons, such as to comply with legal requirements about data locality, we split the data plane into geographical regions, hence the name regional data planes. At the time of writing, we have 6 regional data planes, each containing several data plane clusters:
It is important to note that these 6 regions represent Business Central regions, not Azure regions. For example, at the time of writing, the Business Central West Europe region is utilizing the following Azure regions: West Europe, North Europe, UK South, UK West.
The names of the regions should also be taken with a grain of salt. They are in many cases named like they are for historical reasons, and the names don’t necessarily represent today’s situation. For example, the US region also manages Mexican customers, and the Asia region also covers parts of Africa.
Subsequent blog posts will go into much more detail about the data plane, but in this blog post we will now turn our attention to the control plane.
· Creating a new data plane cluster
· Creating a new tenant database
· Upgrading a tenant
· Installing an extension
· Deleting a tenant database
1. Authenticates the user to identify the customer (i.e., the AAD tenant that the user is a member of)
2. Finds the customer’s Business Central region
3. Finds the customer’s data plane cluster
4. Finds the customer’s tenant database
5. … and then starts talking directly to the Web client in the correct data plane cluster
Have you used any containers in that solutions ?
Business Applications communities