Whether deploying a production instance or a free trial, the process is basically the same. The primary difference between the two is that production deployments should be reviewed together with Ravnur Support to ensure that the scaling rules for encoding and streaming match your expected workloads. Ravnur will also apply extra security settings and configuration to production deployments.
If you encounter any deployment failures or issues, you can submit a support ticket from the home page of this documentation site or contact Ravnur Support at support@ravnur.com.
Before you begin
To avoid a deployment failure, please ensure that the following prerequisites are fulfilled before starting your deployment.
1. Register resource providers in the subscription. Estimated time to complete: 5 minutes.
This article describes the process for registering resource providers. It also has a CloudShell script that automates the resource provider registration that can save you time. Your subscription must have the following resource providers registered for the deployment to succeed:
Microsoft.Insights
Microsoft.KeyVault
Microsoft.AAD
Microsoft.CDN
Microsoft.Storage
Microsoft.ServiceBus
Microsoft.ManagedIdentity
Microsoft.Compute
Microsoft.OperationalInsights
Microsoft.Web
Microsoft.App
Microsoft.SQL
Microsoft.ContainerInstance
Microsoft.CognitiveServices
Microsoft.Insights
Microsoft.ContainerService
Microsoft.EventGrid
Microsoft.Network
Microsoft.AlertsManagement
2. Verify availability of VMs and add VM core quota for the encoders. Estimated time to complete: 5 minutes.
The default VM for encoding uses F16s_v2 VMs that have 16 cores per VM. You need to have at least 160 cores in your quota for the Standard FSv2 Family in your selected deployment region for the deployment to succeed. Adding quota does not incur costs. The vCPU quota is needed to permit scaling. This article describes how to check the quota and increase it as needed.
3. Verify availability of VMs and add core quota for the API and streaming servers. Estimated time to complete: 5 minutes
The AKS node pools for the API and streaming servers use the D2as_v5 VMs with two cores each. Ensure that the Standard DASv5 family quota for the region where RMS is running has at least 20 cores. Adding quota does not incur costs. The vCPU quota is needed to permit scaling. This article describes how to check the quota and increase it as needed.
If you are deploying RMS to a subscription that already has an RMS instance (e.g. a non-production instance), you will need to consider the total amount of vCPU quota required by all RMS instances in the subscription/region. Please see this article for more details.
4. Ensure that the resource group region and the region where you deploy the resources are the same.
This is addressed in Step 1 below. If the regions don't match, the deployment will fail.
5. Know Issues that can cause a deployment to fail
If you deploy to West Europe, or select West Europe as a failover region, the deployment might fail because West Europe is oversubscribed for Azure SQL servers and the request to create one will most likely fail. If you do pick West Europe, try deploying early in the morning before the requests increase during the workday.
East Asia does not support Entra Workload Identity. Please do not deploy to East Asia. If you must, there is a manual workaround that Ravnur can implement using a workload identity in another region.
Deployment Instructions
Deploying RMS to your Azure tenant is a straightforward process that takes approximately one hour from start to finish. These instructions describe the process of deploying using a Private Plan that Ravnur created for you or the Public Standard Subscription offer. After the deployment is complete, you can retrieve the API access credentials from the application and begin using the RMS API.
Step 1 – Create Resource Group. (1 minute)
Step 2 – Find Ravnur Media Services in the Azure Marketplace. (1 minute)
Step 3 – Select the Ravnur Media Services Plan. (1 minute)
Step 4 – Configure the Deployment. (2 minutes)
Step 5 – Accept the Terms and Conditions. (1 minute)
Step 6 - Deploy the Application. (45 minutes)
Step 7 – Access the Management Console to Get the API Credentials. (<1 minute)
Step 8 – Copy the API Credentials. (<1 minute)
Step 1 – Create Resource Group
First, you need to create a resource group in the subscription where you will deploy the managed application package. Remember, West Europe and East Asia are regions where there is a high likelihood that the deployment will fail, avoid these regions.
Important: This resource group must be in the same region where you want to run the RMS application. If the resource group region and the region you select for resource deployment in Step 4 are not the same, the deployment will fail
Step 2 – Find Ravnur Media Services in the Azure Marketplace
Go to your newly created resource group and click on + Create as indicated on the image below.
This will open the Azure Marketplace. There are two types of RMS Free Trials available in the marketplace. One is a public offer, and the other is a Private Plan that Ravnur creates specifically for you to use.
1. If you are using a Private Plan, you will see an indication that you have a Private Plan available for you, and you can access it by clicking on the View private plans link or by clicking on Private Plans under My Marketplace in the left sidebar menu.
2. If you are using the publicly accessible offer, search for Ravnur Media Services - AMS Replacement.
Step 3 – Select the Ravnur Media Services Plan
Clicking on the tile for Ravnur Media Services opens the private plan page. Click on Create to begin the deployment.
Step 4 – Configure the Deployment
There are a few configuration entries that must be reviewed and updated as necessary.
1. Subscription. Ensure the correct subscription for the resource group is selected.
2. Resource group. The available resource groups will depend on the subscription you selected above.
3. Region. The region must match the resource group's region. It will default in a value that very often does not match the resource group you select. Change the region to match the resource group region or the deployment will fail.
4. Failover. (Optional) Select Enable SQL Failover and pick a region for the failover SQL database.
5. System pool
System pool VM size. The preferred VM is the D2as_v5. Ensure that the Standard DASv5 Family has sufficient vCPU quota in the resource group's region as described above in Before you begin.
System pool availability zones. The default is 0 for trial instances. Production instances should have two availability zones if permitted by the region
6. Encoding pool
Encoding pool VM size. This defaults to F16s_v2. Ensure that the Standard FSv2 Family has sufficient vCPU quota in the resource group's region as described above in Before you begin.
Encoding pool availability zones. The default is 0. This is only relevant if you choose to keep more than one encoder running 24/7. Otherwise, encoders are deprovisioned when not actively processing jobs.
7. Application name. Enter a name for the application, such as mycompanymediaservices.
8. Managed resource group. The managed resource group name is automatically created for you. You can change it, but that's not necessary.
9. Click on Review + create.
Step 5 – Accept the Terms and Conditions
Select the checkbox to accept the terms and conditions for the offer. The Terms and Conditions and Privacy Policy can be accessed on this page by clicking on the Terms of use and Privacy policy links located below the Price section.
Click on Create to start the deployment.
Step 6 - Deploy the Application
After clicking on Create, the deployment will begin. This process can take up to 45 minutes. IF you have errors, you can contact support@ravnur.com for help. Most errors result from missing resource providers, not enough quota or Azure Policies in place that block resource creation. We can let you know what needs to be done and then we can restart the deployment.
Step 7 – Access the Management Console to Copy the API Credentials
When the deployment is complete, click on Go to resource.
Click on the link to the managed resource group as shown by the red arrow below.
In the list of resources, click on the Azure Front Door resource as shown below.
Copy the Host Domain Endpoint as shown below. This URL forms the base of the management console URL
Paste the Host Domain Endpoint in the browser and append /console at the end so that the entire URL looks something like https://fd-shal3if73m.fh7sls39sozxxw2.azure.net/console
This will open the management console login page. Login using your Azure Entra credentials that you use to access the Azure Portal.
Currently only members of the Azure Entra directory will successfully authenticate. Guest users in the directory will not be able to authenticate.
Step 8 – Copy the API Credentials
To configure API access, you'll need to set the environment variables.
Access RMS Console > Api Key Management tab:
Below the code block, you'll find descriptions of each variable along with instructions on where to find or generate them.
set Ravnur__SubscriptionId=<RMS account subscription ID>
set Ravnur__ResourceGroupName=<RMS account resource group name>
set Ravnur__MediaServicesAccountName=<RMS account name>
set Ravnur__ApiEndpoint=<RMS instance API endpoint>
set Ravnur__ApiKey=<API KEY>
- Ravnur Subscription ID: The Azure subscription ID where RMS is deployed.
- Ravnur Resource Group Name: The name of the managed resource group for your RMS account.
- Ravnur Media Services Account Name: The name of your RMS account.
- Ravnur API Endpoint: The fully qualified domain name (FQDN) of the API URL.
- Ravnur API Key: This key is required for authentication. It is represented as <API KEY>. Use your actual API key value for this placeholder.
You are now ready to connect to the Azure Media Services Explorer for RMS (get it here), or update your SDK to connect to RMS (instructions here).
Alternatively, you can manage RMS using Ravnur Console, which provides a convenient user interface.