The main concept of the Azure Stack extensibility feature is that a web service is called a resource provider. This concept makes the product itself quite easy to maintain and extend:
Regarding the logical design of Azure Stack shown in the preceding diagram, there are the following resource providers in the product today. The three main ones are as follows:
Storage Resource Provider (SRP)
Compute Resource Provider (CRP)
Network Resource Provider (NRP)
We need to differentiate between them and the following additional resource providers:
Fabric Resource Provider (FRP)
Health Resource Provider (HRP)
Update Resource Provider (URP)
Finally, we have the third-party resource providers. To make sure that each third-party resource provider acts as intended, there is a REST API and a certification for it with Azure Stack by Microsoft.