Skip to main content

Azure Provisioning

Deployment Steps

Pre-requisites:

  • You have received an invite link to Predibase.
  • Typically an Azure owner role is required to create the service principal and resource group.

There are three main steps to deploy Predibase into your Azure environment:

  1. Create a resource group in your Azure account
  2. Create a Service Principal with scoped permissions to the resource group.
  3. Launch provisioning of the data plane

Creating resources in your Azure account

  1. Click the invite link in your email to create your Predibase user account

  2. Once you’ve created a user account, click on "Azure" and your preferred region on the Select your Cloud page.

  3. Click on "Setup Authorization" button.

  4. Download and install the Azure CLI by following these instructions.

  5. In a terminal window, log into the Azure CLI by running

az login
  1. Next, find the default subscription ID and store it into a local variable.
# Fetch the subscription ID
export AZ_SUBSCRIPTION_ID="$(az account list --query "[?isDefault].id" -o tsv)"

#NOTE: If you'd like to use a different subscription ID, uncomment the line below and export that ID instead.
#export AZ_SUBSCRIPTION_ID="YOUR_ID"

# View the subscription ID
echo $AZ_SUBSCRIPTION_ID
  1. Paste the subscription ID value into the input form field.

  2. Create a new resource group where Predibase will provision resources

# Set the resource group name
export RESOURCE_GROUP_NAME="predibase-env-579b93"

# Create the resource group
az group create --name $RESOURCE_GROUP_NAME --location westus2 --subscription $AZ_SUBSCRIPTION_ID

⚠️ If you would like to use an existing resource group, export the env variable with that value instead

  1. Paste the Resource Group name (if changed) into the input form field.

  2. Create a new service principal with scoped access to the newly created resource group.

# Set the permissions scope to be limited to the predibase resource group
export USER_SCOPE="/subscriptions/$AZ_SUBSCRIPTION_ID/resourceGroups/$RESOURCE_GROUP_NAME"

# Create the service principal
az ad sp create-for-rbac --name predibase-env-579b93 --role Contributor --scopes $USER_SCOPE > creds.json

# View the credentials JSON
cat creds.json
  1. Paste the "appId", "password", and "tenant" value from the JSON output into the input form fields.

  2. Click "Validate Azure Credentials", and proceed with provisioning if everything looks correct.

Launch Provisioning of the Data Plane

Once you’ve confirmed the Service Principal credentials, Predibase will automatically begin to deploy the Predibase dataplane in your environment.

Feel free to navigate away while this provisioning process is in progress. On average, it takes around 20-30 minutes but exact times can vary. We’ll send you an email with the login link once the provisioning process is complete.

danger

DO NOT DELETE the service principal after your environment has finished provisioning.

Deprovision your environment first to avoid incurring unwanted costs.

Expected Costs

There are two types of costs to expect with a VPC environment:

  • Base Setup Cost: The estimated base cost for running a VPC in Azure West US 2 is around $300/month, which covers the full cost to spin up the dataplane in your environment, including an AKS cluster and Storage Account containers.
  • Compute Usage Cost: Compute costs incurred by using CPU or GPU engines in the platform. A rough estimate for 2 weeks is ~$15-30, but exact amount may vary.

Both of these costs will be billed directly via Azure and appear on the Azure Portal.

Increase Azure Quotas

Since the compute will run in your Azure account, you will need to ensure that your Azure quotas are sufficient to run the Predibase Controlplane.

Based on your requirements, an increase may be necessary if you require more GPUs for large training jobs.

For more info, see this.