Zuletzt überprüft: Mai 2026
Erstellen Sie die AWS-Dienste der DP-600-Prüfung mit reinem Terraform — ein Block nach dem anderen, jeweils abgestimmt auf eine Prüfungsdomäne. Derselbe Code funktioniert auch mit OpenTofu.
Am Ende dieses Labs haben Sie mit einfachem Terraform die Microsoft Fabric-Kapazität bereitgestellt, die jeder Fabric-Workload zugrunde liegt – eine F-SKU-Kapazität für die Entwicklung (F2), ein ADLS Gen2-Speicherkonto für OneLake-Verknüpfungsziele, einen Log Analytics-Arbeitsbereich für Kapazitätsdiagnosen und die Rollenzuweisungen, die alles mit Ihrem Terraform-Principal verbinden. Fabric-Arbeitsbereiche (Lakehouses, Warehouses, Notebooks) werden innerhalb der Kapazität über das Fabric-Portal oder die REST-API erstellt – das liegt heute nicht im Aufgabenbereich von Terraform.
Fügen Sie die Snippets in eine einzelne main.tf ein, führen Sie terraform init aus und anschließend terraform apply Schritt für Schritt.
>= 1.5 oder OpenTofu >= 1.6.az login).Fabric-Kapazität ist der größte Kostenfaktor in diesem Lab:
terraform destroy oder über das Portal).Die DP-600-Frage zum Kosten-Anti-Muster lautet zu 100 % der Zeit: „Warum beträgt meine Fabric-Rechnung 262 $, obwohl niemand sie nutzt?“ – weil die Kapazität rund um die Uhr abgerechnet wird, es sei denn, sie wird pausiert. Zerstören oder pausieren Sie immer, wenn Sie sie nicht aktiv nutzen.
Standard-Azure-Einleitung. Fabric-Kapazitäten sind regionsgebunden – wählen Sie eine Region, in der sich Ihre Datenquellen befinden, um regionsübergreifende Übertragungskosten zu vermeiden (Fabric liest von OneLake, das physisch in der Region der Kapazität liegt).
terraform {
required_version = ">= 1.5"
required_providers {
azurerm = { source = "hashicorp/azurerm", version = "~> 4.0" }
random = { source = "hashicorp/random", version = "~> 3.6" }
}
}
provider "azurerm" {
features {}
}
resource "random_id" "suffix" {
byte_length = 3
}
data "azurerm_client_config" "current" {}
locals {
tags = {
Project = "certlabpro-dp-600"
ManagedBy = "terraform"
}
}
resource "azurerm_resource_group" "main" {
name = "certlabpro-dp-600-rg"
location = "eastus"
tags = local.tags
}Die OneLake-Funktion von Microsoft Fabric bietet einen einheitlichen Data Lake über alle Fabric-Arbeitsbereiche hinweg. Fabric-Elemente (Lakehouses, Warehouses) speichern ihre Daten physisch in OneLake – Fabric unterstützt aber auch Verknüpfungen, die auf Daten in externem Speicher (ADLS Gen2, S3, GCS, Dataverse) verweisen, als ob sie in OneLake lägen. Das Verknüpfungsmuster ist das DP-600-Kernthema für Implementieren und Verwalten einer Datenanalyselösung – Föderieren ohne Kopieren.
Wir stellen hier ein ADLS Gen2-Konto mit aktiviertem hierarchischen Namespace bereit (die erforderliche Einstellung für OneLake-Verknüpfungen). Die eigentliche Verknüpfung würden Sie nach dessen Bestehen im Fabric-Portal erstellen und auf dieses Konto verweisen lassen.
resource "azurerm_storage_account" "lake" {
name = "dp600lake${random_id.suffix.hex}"
resource_group_name = azurerm_resource_group.main.name
location = azurerm_resource_group.main.location
account_tier = "Standard"
account_replication_type = "LRS"
account_kind = "StorageV2"
is_hns_enabled = true # required for OneLake shortcuts
https_traffic_only_enabled = true
min_tls_version = "TLS1_2"
allow_nested_items_to_be_public = false
tags = local.tags
}
resource "azurerm_storage_container" "bronze" {
name = "bronze"
storage_account_id = azurerm_storage_account.lake.id
container_access_type = "private"
}
resource "azurerm_storage_container" "silver" {
name = "silver"
storage_account_id = azurerm_storage_account.lake.id
container_access_type = "private"
}
resource "azurerm_storage_container" "gold" {
name = "gold"
storage_account_id = azurerm_storage_account.lake.id
container_access_type = "private"
}Die Fabric-Kapazität ist die Abrechnungseinheit für alle Fabric-Workloads. Arbeitsbereiche im Fabric-Portal werden einer Kapazität zugeordnet, und das bestimmt Preise und Kontingente.
Wir stellen die kleinste produktionsreife Kapazität (F2) bereit. Die Liste administration_members benennt, wer die Kapazität im Fabric-Administratorportal verwalten kann – für das Lab verwenden wir den aktuellen Terraform-Principal. Die Administratorrolle ist getrennt von Berechtigungen auf Arbeitsbereichsebene; Kapazitätsadministratoren kontrollieren Abrechnung, kapazitätsweite Einstellungen und welche Arbeitsbereiche sie nutzen können.
DP-600 testet die Kapazitätsdimensionierung als Thema der Kostenoptimierung: Wählen Sie die kleinste SKU, die den RU/s-Anforderungen Ihrer Workload entspricht, skalieren Sie für Spitzenzeiten hoch, skalieren Sie außerhalb der Geschäftszeiten herunter oder pausieren Sie. F-SKUs sind Pay-as-you-go (stündliche Abrechnung); die älteren P-SKUs von Power BI Premium sind reservierte Kapazitäten (jährliche Verpflichtung).
resource "azurerm_fabric_capacity" "main" {
name = "fab-dp600-${random_id.suffix.hex}"
resource_group_name = azurerm_resource_group.main.name
location = azurerm_resource_group.main.location
administration_members = [
data.azurerm_client_config.current.object_id,
]
sku {
name = "F2" # smallest Fabric SKU; F-series is pay-as-you-go
tier = "Fabric"
}
tags = local.tags
}Der Bereich Wartung und Optimierung von Analyse-Lösungen von DP-600 testet die Überwachung der Kapazitätsintegrität als primäre Diagnoseoberfläche – Kapazitätsdrosselung, Spitzen bei der Abfragedauer, Aktualisierungsfehler werden alle als Log Analytics-Signale angezeigt. Wir stellen den Arbeitsbereich und eine Diagnoseeinstellung für die Fabric-Kapazität bereit, die jede Metrik- und Protokollkategorie dorthin sendet.
Mit diesem letzten Teil ist die Fabric-Grundlage vollständig: Kapazität, die für die Workload dimensioniert ist, ADLS Gen2 als Verknüpfungsziel bereit, Kapazitätsdiagnosen fließen zu Log Analytics. Fabric-Arbeitsbereiche, Lakehouses, Warehouses, semantische Modelle und Notebooks werden alle innerhalb der Kapazität über das Fabric-Portal oder die REST-API erstellt – das ist die Anwendungsschicht, die dieses Lab nicht in Terraform abbilden kann.
resource "azurerm_log_analytics_workspace" "main" {
name = "log-dp600"
resource_group_name = azurerm_resource_group.main.name
location = azurerm_resource_group.main.location
sku = "PerGB2018"
retention_in_days = 30
tags = local.tags
}
resource "azurerm_monitor_diagnostic_setting" "fabric" {
name = "diag"
target_resource_id = azurerm_fabric_capacity.main.id
log_analytics_workspace_id = azurerm_log_analytics_workspace.main.id
metric {
category = "AllMetrics"
enabled = true
}
}terraform destroy reißt alles ab. Wichtige Erinnerung: Die Fabric-Kapazität wird rund um die Uhr abgerechnet – selbst ein Tag, an dem F2 läuft, kostet ca. 8,70 $. Zerstören Sie umgehend. Alternative: Die Kapazität unterstützt einen Pause-/Fortsetzen-Vorgang über das Azure-Portal, der die Abrechnung stoppt, ohne die Ressource zu zerstören – nützlich, wenn Sie das Lab behalten, aber nur bezahlen möchten, wenn Sie es aktiv nutzen.
DP-600 deckt viele Fabric-Workloads ab, die dieses Lab nicht in einfachem Terraform abbilden kann – Lakehouses (von Fabric verwaltet, nicht über azurerm bereitstellbar), Warehouses, KQL-Datenbanken (Eventhouses), Notebooks, Datenpipelines (Data Factory innerhalb von Fabric), semantische Modelle (Power BI), Dataflows Gen2 und die Microsoft Fabric REST API für die Arbeitsbereichserstellung.
Die Fabric Workspace API beginnt, im fabric-Terraform-Provider (separat von azurerm) zu landen, ist aber noch in der Entwicklung. Für DP-600 Lab-Zwecke bringt Sie die oben genannte Kapazitätsbereitstellung an den Punkt, an dem Sie das Fabric-Portal öffnen, einen an diese Kapazität gebundenen Arbeitsbereich erstellen und darin Lakehouses + Notebooks + Warehouses erstellen können – auf dieselbe Weise, wie jeder DP-600-Kandidat übt.
Eine dienstspezifische Abdeckung finden Sie in den Abschnitten Durchsuchen und Editorial dieser Zertifizierungsseite.