Follow these steps to deploy the R2026a MATLAB Production Server reference architecture on Microsoft Azure. To deploy reference architectures for other releases, see Deploy Reference Architecture for Your Release.
Before deploying MATLAB Production within an existing virtual network, you must configure the virtual network to enable connectivity. For details, see How do I deploy to an existing virtual network? in the FAQ.
To deploy resources on Azure, click Deploy to Azure. The Azure Portal opens in your web browser.
MATLAB Release: R2026a
Creating resources on Azure can take at least 30 minutes.
Provide values for parameters in the custom deployment template on the Azure Portal:
| Parameter Name | Value |
|---|---|
| Subscription | Choose an Azure subscription to use for purchasing resources. Example: |
| Resource group | Choose a name for the resource group that will hold the resources. It is recommended you create a new resource group for each deployment. This allows all resources in a group to be deleted simultaneously. Example: |
| Region | Choose the region to start resources in. Ensure that you select a location which supports your requested instance types. To check which services are supported in each location, see Azure Region Services. MathWorks recommends using East US or East US 2. Example: |
| Location | Region to store resources in. All resources are deployed in the same region as the resource group. Examples: |
| Server VM Instance Size | Specify the size of the VM you plan on using for installing MATLAB Production Server. Ensure that the VM supports Hyper-V generation 2. Each MATLAB Production Server instance runs on a VM and each instance will run multiple workers. We recommend you choose a VM size where the number of cores on your VM matches the number of MATLAB workers per VM you plan on using. The template defaults to Standard_D4_v4. This configuration has 4 vCPUs and 16 GiB of Memory. For more information, see the Azure documentation.Examples: |
| Dashboard VM Size | Specify the size of the VM you plan on using for the MATLAB Production Server dashboard. The dashboard lets you configure server settings and manage deployed applications. In most cases, choosing the smallest VM size is adequate. The template defaults to Standard_D2_v4. For more information, see the Azure documentation. Example: |
| Instance Count | Number of VMs to run MATLAB Production Server instances. Each MATLAB Production Server instance runs on a VM and each instance runs multiple workers. Example: 6 If you have a standard 24 worker MATLAB Production Server license and select You can always underprovision the number of VMs, in which case you may end up using fewer workers than you are licensed for. |
| Admin Username | Specify the administrator username for all VMs. Use this username to log in to the MATLAB Production Server dashboard and Network License Manager. |
| Admin Password | Specify the administrator password for all VMs. Use this password to log in to the MATLAB Production Server dashboard and Network License Manager. |
| Allow connections from | Specify the IP address range that is allowed to connect to the MATLAB Production Server instance, the Network License Manager, and the dashboard that manages the server. The IP addresses you specify here are allowed to execute deployed MATLAB functions. If you deploy a new Network License Manager instance along with MATLAB Production Server, then only the specified addresses can access Network License Manager. If you use a previously deployed instance of Network License Manager, you can use the Azure Portal to specify additional IP address ranges that can access the storage account. To do so, in your storage account settings under Networking, add IP address ranges using the IP Address/Mask format. Example: Example:
|
| Create Azure Redis Cache | Choose whether you want to create an Azure Redis Cache service. Creating this service will allow you to use the persistence functionality of the server. Persistence provides a mechanism to cache data between calls to MATLAB code running on a server instance. |
| Use Public IP Addresses | Specify whether to assign a public IP address to the virtual machine hosting the server. This setting also controls which IP addresses are allowed to access the storage account.
|
| Platform | Choose the operating system for the server. Microsoft Windows and Linux are the only available options. |
| New or Existing Virtual Network | Select new to create a new virtual network for your deployment using the default values shown in the parameters after this one. Any changes to these parameter values are ignored. When deploying to a new virtual network, by default, the ports listed in the FAQ under Ports to Open in Existing Virtual Network are opened. Depending on your security requirements, you can choose to close ports 22 and 3389 after the deployment is complete. If you are deploying to an existing virtual network, you may need to configure the network before deployment. For details, see How do I deploy to an existing virtual network? in the FAQ. |
| Virtual Network Name | Specify the name of your existing virtual network or use the default value. |
| Virtual Network CIDR Range | Specify the IP address range of the virtual network in CIDR notation or use the default value. |
| Subnet 1 CIDR Range | Specify the IP address range of the first subnet in CIDR notation or use the default value. The first subnet hosts the dashboard and other resources. |
| Subnet 2 CIDR Range | Specify the IP address range of the second subnet in CIDR notation or use the default value. The second subnet hosts the application gateway. |
| Available Subnet 2 IP Address | Specify an unused IP address from Subnet 2 or use the default value. This IP address serves as the private IP of the application gateway. |
| Resource Group Name Of Virtual Network | Specify the resource group name of the virtual network or use the default value. |
| Deploy Network License Manager for MATLAB | Select whether you want to deploy the Network License Manager for MATLAB to manage your license files. Selecting Yes deploys the Network License Manager for the MATLAB reference architecture. Select No if you want to use an existing license server. |
| Certificate Input Type | Select how you want to specify the SSL certificate for the Azure application gateway to use. The Azure application gateway provides an HTTPS endpoint that you use to connect to server instances and the MATLAB Production Server dashboard. You must select one of these options:
Specify the certificate data for your selected option in the parameters that follow. |
If you set Certificate Input Type to 'KeyVault', specify these parameters:
| Parameter Name | Value |
|---|---|
| Key Vault Certificate Secret ID | Enter the secret ID of the SSL certificate present in the Key Vault. To create a Key Vault and add a certificate, see Add a certificate to Key Vault (Azure). |
| Managed Identity Resource ID for Key Vault | Enter the resource ID of the user-assigned managed identity that has permission to access the Key Vault. If your managed identity does not have access to the Key Vault, the deployment fails.
|
If you set Certificate Input Type to 'Base64-encoded PFX Certificate', specify these parameters:
| Parameter Name | Value |
|---|---|
| Base64Encoded PFX Certificate Data | Enter a string that is a base64-encoded value of an SSL certificate in PFX format. |
| Password For Base64Encoded PFX Certificate | If the certificate requires a password, enter it here. Otherwise, leave the parameter blank. |
Click Create to begin the deployment. This can take up to 40 minutes.
The Network License Manager for MATLAB manages the MATLAB Production Server license file. The MATLAB Production Server deployment template provides an option to deploy the license manager or use an existing license manager. For more information about the Network License Manager for MATLAB, see Network License Manager for MATLAB. The following steps show how to upload the license file using the Network License Manager for MATLAB dashboard:
Note: You must provide a fixed license server MAC address to get a license file from the MathWorks License Center. For more information, see Configure MATLAB Production Server License for Use on the Cloud.
- In the Azure Portal, click Resource groups and select the resource group containing your cluster resources.
- Select Deployments from the left pane and click Microsoft.Template.
- Click Outputs. Copy the parameter value for networkLicenseManagerURL and paste it in a browser.
- Log in using the administrator username and password that you specified in the Configure Cloud Resources step of the deployment process.
- Follow the instructions in the Network License Manager for MATLAB dashboard to upload your MATLAB Production Server license.
The MALAB Production Server dashboard provides a web-based interface to configure and manage server instances on the cloud. If your solution uses private IP addresses, you can connect to the dashboard from a VM that belongs to the same virtual network as the VM that hosts the dashboard.
Note: Complete these steps only after your resource group has been successfully created.
Note: The Internet Explorer web browser is not supported for interacting with the dashboard.
- In the Azure Portal, click Resource groups and select the resource group you created for this deployment from the list.
- Select Deployments from the left pane and click Microsoft.Template.
- Click Outputs from the left pane. Copy the parameter value for dashboardURL and paste it in a browser.
- Log in using the administrator username and password that you specified in the Configure Cloud Resources step of the deployment process.
You are now ready to use MATLAB Production Server on Azure.
For more information on how to use the dashboard, see Manage MATLAB Production Server Using the Dashboard.
Configuring role-based access control for the dashboard is recommended. Role-based access control uses Azure AD to let you grant users the privileges to perform tasks on the dashboard and server, based on their role. For more information on how to configure role-based access control, see Dashboard Access Control.
To run applications on MATLAB Production Server, you will need to create applications using MATLAB Compiler SDK. For more information, see Create Deployable Archive for MATLAB Production Server.
