Bereitstellen eines Azure Databricks-Arbeitsbereichs mit Terraform

In der folgenden Beispielkonfiguration wird der azurerm-Terraform-Anbieter verwendet, um einen Azure Databricks-Arbeitsbereich bereitzustellen. Es wird davon ausgegangen, dass Sie sich mit einem Azure-Benutzer, der über az login-Rechte für Ihr Abonnement verfügt, bei Azure (Contributor) auf Ihrem lokalen Computer angemeldet haben.

Weitere Informationen zum azurerm-Terraform-Plug-In für Databricks finden Sie unter azurerm_databricks_workspace.

Einfache Einrichtung

terraform {
  required_providers {
    azurerm =  "~> 2.33"
    random = "~> 2.2"
  }
}

provider "azurerm" {
  features {}
}

variable "region" {
  type = string
  default = "westeurope"
}

resource "random_string" "naming" {
  special = false
  upper   = false
  length  = 6
}

data "azurerm_client_config" "current" {
}

data "external" "me" {
  program = ["az", "account", "show", "--query", "user"]
}

locals {
  prefix = "databricksdemo${random_string.naming.result}"
  tags = {
    Environment = "Demo"
    Owner       = lookup(data.external.me.result, "name")
  }
}

resource "azurerm_resource_group" "this" {
  name     = "${local.prefix}-rg"
  location = var.region
  tags     = local.tags
}

resource "azurerm_databricks_workspace" "this" {
  name                        = "${local.prefix}-workspace"
  resource_group_name         = azurerm_resource_group.this.name
  location                    = azurerm_resource_group.this.location
  sku                         = "premium"
  managed_resource_group_name = "${local.prefix}-workspace-rg"
  tags                        = local.tags
}

output "databricks_host" {
  value = "https://${azurerm_databricks_workspace.this.workspace_url}/"
}

Providerkonfiguration

Verwenden Sie unter Databricks-Arbeitsbereiche mit Terraform verwalten die speziellen Konfigurationen für Azure:

provider "databricks" {
  host = azurerm_databricks_workspace.this.workspace_url
}