Skip to content

analytics/databricks_workspace

Overview

This page documents the Terraform module implementation, key configuration surfaces, and how it integrates with CAF.

Dependency diagram (Mermaid)

graph TD azurecaf_name.wp["azurecaf_name.wp"] azurerm_databricks_workspace.ws["azurerm_databricks_workspace.ws"] azurerm_databricks_workspace_root_dbfs_customer_managed_key.root_dbfs["azurerm_databricks_workspace_root_dbfs_customer_managed_key.root_dbfs"] module.diagnostics["module.diagnostics"] module.private_endpoint["module.private_endpoint"] azurerm_databricks_workspace.ws --> azurecaf_name.wp azurerm_databricks_workspace_root_dbfs_customer_managed_key.root_dbfs --> azurerm_databricks_workspace.ws module.diagnostics --> azurerm_databricks_workspace.ws module.private_endpoint --> azurerm_databricks_workspace.ws

Module Reference

Category: analytics
Path: modules/analytics/databricks_workspace
Azure Resources: azurecaf_name, azurerm_databricks_workspace, azurerm_databricks_workspace_root_dbfs_customer_managed_key

Inputs

Name Description Type Required Default Validation
"settings" "<<DESCRIPTION Settings for an Azure Databricks workspace. - name - (Required) Workspace name. - sku - (Optional) sta... object({name = string, sku = optional... yes - "sku must be standard, premium, or trial."; "Customer-managed keys, infrastructure encryption, and enhanced security compliance require sku = \"premium\"."; "network_security_group_rules_required must be set when public_network_access_enabled is false."; "network_security_group_rules_required must be AllRules, NoAzureDatabricksRules, or NoAzureServiceRules."; "compliance_security_profile_enabled requires automatic_cluster_update_enabled and enhanced_security_monitoring_enabled to be true."; "compliance_security_profile_standards can only be set when compliance_security_profile_enabled is true."; "compliance_security_profile_standards contains an unsupported standard."
"global_settings" "Global settings object (see module README.md)" any yes - -
"client_config" "Client configuration object (see module README.md)." any yes - -
"vnets" "Virtual networks objects - contains all virtual networks that could potentially be used by the module." any yes - -
"aml" "Azure Machine Learning objects - contains all AML workspaces that could potentially be used by the module." any yes - -
"diagnostics" "(Required) Diagnostics object with the definitions and destination services" any yes - -
"private_endpoints" any no {} -
"resource_groups" any no {} -
"private_dns" any no {} -
"remote_objects" "Remote CAF objects used to resolve Key Vault keys and Databricks Access Connectors." any no {} -
"location" "location of the resource if different from the resource group." string no - -
"resource_group_name" "Resource group object to deploy the Azure resource" string no - -
"resource_group" "Resource group object to deploy the Azure resource" any yes - -
"base_tags" "Base tags for the resource to be inherited from the resource group." bool yes - -

Outputs

Name Description Sensitive Value
"id" "The ID of the Databricks Workspace in the Azure management plane." - azurerm_databricks_workspace.ws.id
"managed_resource_group_id" "The ID of the Managed Resource Group created by the Databricks Workspace." - azurerm_databricks_workspace.ws.managed_resource_group_id
"workspace_url" "The workspace URL which is of the format 'adb-{workspaceId}.{random}.azuredatabricks.net'" - azurerm_databricks_workspace.ws.workspace_url
"workspace_id" "The unique identifier of the databricks workspace in Databricks control plane." - azurerm_databricks_workspace.ws.workspace_id
"disk_encryption_set_id" "The ID of the managed disk encryption set created by the Databricks workspace." - azurerm_databricks_workspace.ws.disk_encryption_set_id
"managed_disk_identity" "The managed disk identity used by the Databricks workspace for customer-managed keys." - try(azurerm_databricks_workspace.ws.managed_disk_identity[0], null)
"storage_account_identity" "The storage account identity used by the Databricks workspace for customer-managed keys." - try(azurerm_databricks_workspace.ws.storage_account_identity[0], null)
"root_dbfs_customer_managed_key_id" "The ID of the optional root DBFS customer-managed key configuration." - try(azurerm_databricks_workspace_root_dbfs_customer_managed_key.root_dbfs["root_dbfs"].id, null)

Sources

  • modules/analytics/databricks_workspace/diagnostics.tf
  • modules/analytics/databricks_workspace/locals.tf
  • modules/analytics/databricks_workspace/main.tf
  • modules/analytics/databricks_workspace/outputs.tf
  • modules/analytics/databricks_workspace/private_endpoint.tf
  • modules/analytics/databricks_workspace/root_dbfs_customer_managed_key.tf
  • modules/analytics/databricks_workspace/variables.tf
  • modules/analytics/databricks_workspace/workspace.tf