Tuesday, October 12, 2021

Compute Platform Versions for Azure API management service

Background Information: 

 

For Azure API Management (APIM) service users, you may notice that we've been upgrading the API Management compute platform version - the Azure compute resources that host the service - for instance in several service tiers, in order to enhance service capabilities. 

 

This article gives you context about the upgrade from platform version stv1 to stv2, and the major differences between these compute platforms.  The following parts will be explained:

  • Available Compute Platform Versions
  • For APIM already in use, how to find the platform version in use? 
  • For newly created APIM, how to specify the platform version you want (stv1 or stv2)? 
  • Difference between stv1 and stv2 

 

 

Available Compute Platform Versions 

 

Currently, there are 3 platform versions: stv1, stv2, and mtv1.  

 

For consumption tier APIM, the architecture uses App service, and the platform version will be mtv1 only. 

For other tiers (Developer, Basic, Standard, and Premium), there are stv1 and stv2 platform versions. Version stv2 uses Virtual machine scale sets , while stv1 uses Cloud Service (classic). 

 

Version 

Description 

Architecture 

API Management tiers 

stv2 

Single-tenant v2 

Virtual machine scale sets 

Developer, Basic, Standard, and Premium 

stv1 

Single-tenant v1 

Cloud Service (classic) 

Developer, Basic, Standard, and Premium 

mtv1 

Multi-tenant v1 

App service 

Consumption 

 

Reference to Compute platform architecture: https://docs.microsoft.com/en-us/azure/api-management/compute-infrastructure 

 

 

For APIM already in use, how to find the platform version in use? 

 

Starting with API version 2021-04-01-preview, the API Management instance has a read-only PlatformVersion property that shows this platform information.   

 

Example API link: https://docs.microsoft.com/en-us/rest/api/apimanagement/2021-04-01-preview/api-management-service/get#apimanagementservicegetservice 

 

hailey_ding_0-1634027559644.png

 

 

For newly created APIM, how to specify the platform version you want (stv1 or stv2)? 

 

To better clarify all the scenarios, you can refer to the flow chart below: 

 

hailey_ding_1-1634027559696.png

 

 

Based on the above chart:

 

1. If you create an APIM without Virtual Networkthe newly created APIM would be VMSS based, which is stv2 PlatformVersion. 

 

2. If you create an APIM within Virtual Network, you can only create a VMSS based APIM(stv2) when all the below requirements have been met: 

  • create the new APIM service using Azure portal, or specifying API version 2021-01-01-preview or later (using Azure REST API, ARM template, etc.) 

3. Otherwise, the newly created APIM would be Cloud Service based, which is stv1 version. 

 

 

Difference between stv1 and stv2 

 

There would be some key differences between stv1 and stv2 when your APIM is deployed in the Virtual Network.  

Version stv2 

Version stv1 

A virtual network  
and subnet in the same region and subscription as your API Management instance.  
The subnet may contain other Azure resources. 

A virtual network and subnet in the same region  
and subscription as your API Management instance.  
Also, the subnet must be dedicated to API Management instances.  

A Standard SKU public IPv4 address. 
The public IP address resource is required when setting up the virtual network for either external or internal access.  

Your own public IP address is  
not required 

Requires service endpoint of: 
1. Azure SQL 
2. Azure Storage 
3. Azure Event Hub 
4. Azure Key Vault 

Requires service endpoint of: 
1. Azure SQL 
2. Azure Storage 
3. Azure Event Hub 

Requires port 443 outbound 
to access Azure Key Vault  

Doesn't require access Azure Key Vault 

Refer to:

Posted at https://sl.advdat.com/3FzQsoB