Azure 관리 디스크용 고객 관리형 키 구성
컴퓨팅 평면의 Azure Databricks 컴퓨팅 워크로드는 Azure 관리 디스크에 임시 데이터를 저장합니다. 기본적으로 관리 디스크에 저장된 데이터는 Microsoft 관리형 키와 함께 서버 측 암호화를 사용하여 미사용 시 암호화됩니다. 이 문서에서는 관리되는 디스크 암호화에 사용할 Azure Databricks 작업 공간에 대해 Azure Key Vault 볼트의 고객 관리 키를 구성하는 방법을 설명합니다. Azure Key Vault HSM에서 키를 사용하는 방법에 대한 지침은 Azure 관리 디스크에 대한 HSM 고객 관리형 키 구성을 참조하세요.
Important
요구 사항
Azure Databricks 작업 영역은 프리미엄 플랜에 있어야 합니다.
Azure Key Vault 및 Azure Databricks 작업 영역은 동일한 지역 및 동일한 Microsoft Entra ID 테넌트에 있어야 합니다. 서로 다른 구독에 있을 수는 있습니다.
자동 회전을 사용하려면 2048비트, 3072비트 및 4096비트 크기의 소프트웨어 키와 HSM RSA만 지원됩니다.
이 기능은 FedRAMP 규정을 준수하는 작업 영역에서는 지원되지 않습니다. 더 자세한 내용은 Azure Databricks 계정 팀에 문의하세요.
이러한 작업에 Azure CLI를 사용하려면 Azure CLI 도구를 설치하고 Databricks 확장을 설치합니다.
az extension add --name databricks
이러한 작업에 Powershell을 사용하려면 Azure PowerShell을 설치하고 Databricks Powershell 모듈을 설치합니다. 또한 로그인해야 합니다.
Connect-AzAccount
사용자로 Azure 계정에 로그인하려면 Azure Databricks 사용자 계정으로 PowerShell 로그인을 참조하세요. Azure 계정에 서비스 주체로 로그인하려면 Microsoft Entra ID 서비스 주체를 사용하여 PowerShell 로그인을 참조하세요.
1단계: 주요 자격 증명 모음 만들기
Azure Portal, Azure CLI, Powershell 및 선택적으로 ARM 템플릿을 사용하는 등 다양한 방법으로 Key Vault를 만들 수 있습니다. 다음 섹션에서는 Azure CLI 및 Powershell 사용 절차에 대해 설명합니다. 다른 방법은 Microsoft 설명서를 참조하세요.
Azure CLI 사용
Key Vault 만들기:
az keyvault create --name <keyVaultName> --resource-group <resourceGroupName> --location <location> --sku <sku> --enable-purge-protection
자격 증명 모음 URI 가져오기:
az keyvault show --name <key-vault-name>
응답에서
vaultUri
값을 복사합니다.
PowerShell 사용
새 자격 증명 모음 만들기:
$keyVault = New-AzKeyVault -Name <key-vault-name> -ResourceGroupName <resource-group-name> -Location <location> -Sku <sku> -EnablePurgeProtection
기존 Key Vault 받기:
$keyVault = Get-AzKeyVault -VaultName <key-vault-name>
2단계: 키 준비
Azure Portal, Azure CLI, Powershell 및 선택적으로 ARM 템플릿을 사용하여 Azure Key Vault에 저장된 키를 만들거나 기존 키를 검색할 수 있습니다. 이 섹션에서는 Azure CLI 및 Powershell에 대한 절차를 제공합니다. 다른 방법은 Azure 키 설명서를 참조하세요.
Azure CLI 사용
키를 만들거나 기존 키를 검색할 수 있습니다.
키 만들기:
다음 명령을 실행합니다.
az keyvault key create \ --name <key-name> \ --vault-name <key-vault-name> \ --protection software
출력에서 다음 값을 기록해 둡니다.
- Key vault name: Key Vault의 이름
- Key name: 키의 이름
- Key version: 키의 버전
- Key vault resource group: Key Vault의 리소스 그룹
키 정보 가져오기:
az keyvault key show --vault-name <keyVaultName> --name <keyName>
키 ID인
kid
필드 값을 복사합니다.전체 키 ID의 형식은 일반적으로
https://<key-vault-name>.vault.azure.net/keys/<key-name>/<key-version>
입니다. 퍼블릭이 아닌 클라우드에 있는 Azure Key Vault 키의 형식은 다릅니다.
기존 키 검색:
다음 명령을 실행합니다.
az keyvault key show --name <key-name> --vault-name <key-vault-name>
기존 키에 대한 다음 세부 정보를 기록해 둡니다.
- Key vault name: Key Vault의 이름
- Key name: 키의 이름
- Key version: 키의 버전
- Key vault resource group: Key Vault의 리소스 그룹
키 정보 가져오기:
az keyvault key show --vault-name <keyVaultName> --name <keyName>
키 ID인
kid
필드 값을 복사합니다.전체 키 ID의 형식은 일반적으로
https://<key-vault-name>.vault.azure.net/keys/<key-name>/<key-version>
입니다. 퍼블릭이 아닌 클라우드에 있는 Azure Key Vault 키의 형식은 다릅니다.az keyvault key show --name <key name>
을 다시 실행하여 계속하기 전에 기존 키가 사용하도록 설정되어 있는지 확인합니다. 출력에"enabled": true
가 표시됩니다.
PowerShell 사용
키를 만들려는 경우 키 생성 방법과 시기에 따라 액세스 정책을 설정해야 할 수 있습니다. 예를 들어 최근에 PowerShell을 사용하여 Key Vault를 만든 경우 새 Key Vault에 키를 만드는 데 필요한 액세스 정책이 부족할 수 있습니다. 다음 예제에서는
EmailAddress
매개 변수를 사용하여 정책을 설정합니다. 관련 세부 정보는 Set-AzKeyVaultAccessPolicy에 대한 Microsoft 문서를 참조하세요.새 Key Vault에 대한 액세스 정책 설정:
Set-AzKeyVaultAccessPolicy \ -VaultName $keyVault.VaultName \ -PermissionsToKeys all \ -EmailAddress <email-address>
키를 만들거나 기존 키를 검색할 수 있습니다.
키 만들기:
$key = Add-AzKeyVaultKey \ -VaultName $keyVault.VaultName \ -Name <key-name> \ -Destination 'Software'
기존 키 검색:
$key = Get-AzKeyVaultKey \ -VaultName $keyVault.VaultName \ -Name <key-name>
3단계: 모든 컴퓨팅 리소스 중지
작업 영역에서 모든 컴퓨팅 리소스(클러스터, 풀 및 SQL Warehouse)를 종료합니다.
4단계: 작업 영역 만들기 또는 업데이트
관리 디스크에 대한 고객 관리형 키를 사용하여 작업 영역을 만들거나 업데이트하려면 다음 배포 전략 중 하나를 선택합니다.
Azure Portal 사용(템플릿 없음)
이 섹션에서는 Azure Portal을 사용하여 템플릿을 사용하지 않고 관리 디스크에 대한 고객 관리형 키를 사용하여 작업 영역을 만들거나 업데이트하는 방법을 설명합니다.
작업 영역 만들기 또는 업데이트 시작하기:
키를 사용하여 새 작업 영역을 만듭니다.
- Azure Portal 홈페이지로 이동하여 페이지 왼쪽 상단에 있는 리소스 만들기를 클릭합니다.
- 검색 창에서
Azure Databricks
를 입력하고 Azure Databricks을 클릭합니다. - Azure Databricks 위젯 내에서 만들기를 선택합니다.
- 기본 및 네트워킹 탭의 양식 필드에 값을 입력합니다.
- 암호화 탭의 Managed Disks 섹션에서 사용자 고유의 키 사용 확인란을 선택합니다.
처음에 기존 작업 영역에 키를 추가합니다.
- Azure Databricks에 대한 Azure Portal의 홈페이지로 이동합니다.
- 기존 Azure Databricks 작업 영역으로 이동합니다.
- 왼쪽 패널에서 암호화 탭을 엽니다.
- 고객 관리형 키 섹션에서 Managed Disks를 사용하도록 설정합니다.
암호화 필드를 설정합니다.
- 키 식별자 필드에 Azure Key Vault 키의 키 식별자를 붙여넣습니다.
- 구독 드롭다운에서 Azure Key Vault 키의 구독 이름을 입력합니다.
- 키의 자동 회전을 사용하도록 설정하려면 키 자동 회전을 사용하도록 설정합니다.
나머지 탭을 완료하고 검토 + 만들기(새 작업 영역의 경우) 또는 저장(작업 영역 업데이트의 경우)을 클릭합니다.
작업 영역이 배포된 후 새 Azure Databricks 작업 영역으로 이동합니다.
Azure Databricks 작업 영역의 개요 탭에서 관리되는 리소스 그룹을 클릭합니다.
관리되는 리소스 그룹의 개요 탭에서 이 리소스 그룹에서 만들어진 디스크 암호화 집합 형식의 개체를 찾습니다. 디스크 암호화 집합의 이름을 복사합니다.
Azure 포털에서 이 기능에 사용 중인 키를 구성하는 데 사용된 Azure Key Vault로 이동합니다.
왼쪽 패널에서 액세스 정책 탭을 엽니다. 탭이 열리면 페이지 맨 위에 있는 만들기를 클릭합니다.
권한 탭의 키 권한 섹션 아래에서 가져오기, 키 래핑 해제 및 키 래핑을 사용 설정합니다.
다음을 클릭합니다.
보안 주체 탭에서 검색 창에 Azure Databricks 작업 영역의 관리되는 리소스 그룹 내에 설정된 디스크 암호화 이름을 입력합니다. 결과를 선택하고 다음을 클릭합니다.
검토 + 만들기 탭을 클릭하고 만들기를 클릭합니다.
Azure CLI 사용(템플릿 없음)
새 작업 영역과 업데이트된 작업 영역 모두에 대해 다음 매개 변수를 명령에 추가합니다.
-
disk-key-name
: 키 이름입니다. -
disk-key-vault
: 자격 증명 모음의 이름 -
disk-key-version
: 키 버전입니다. 가 아닌latest
특정 키 버전을 사용합니다. -
disk-key-auto-rotation
: 키(true
또는false
)의 자동 회전을 사용하도록 설정합니다. 이 필드는 선택적 필드입니다. 기본값은false
입니다.
다음 명령에서는 <key-vault-uri>
대신 이전 단계의 응답에 있는 볼트 URI 값을 사용합니다. 또한 키 이름과 키 버전 값은 이전 단계의 응답에 있는 kid
값에서 찾을 수 있습니다.
작업 영역 만들기 또는 업데이트:
다음 관리 디스크 매개 변수를 사용하여 작업 영역을 만드는 예제:
az databricks workspace create --name <workspace-name> \ --resource-group <resource-group-name> \ --location <location> \ --sku premium --disk-key-name <key-name> \ --disk-key-vault <key-vault-uri> \ --disk-key-version <key-version> \ --disk-key-auto-rotation <true-or-false>
다음 관리 디스크 매개 변수를 사용하여 작업 영역을 업데이트하는 예제:
az databricks workspace update \ --name <workspace-name> \ --resource-group <resource-group-name> \ --disk-key-name <key-name> \ --disk-key-vault <key-vault-uri> \ --disk-key-version <key-version> \ --disk-key-auto-rotation <true-or-false>
이러한 명령의 출력에는
managedDiskIdentity
개체가 있습니다. 이 객체 내에principalId
속성 값을 저장합니다. 이는 이후 단계에서 보안 주체 ID로 사용됩니다.KeyVault에 대한 권한이 있는 액세스 정책 추가: 이전 단계의 자격 증명 모음 이름 및 보안 주체 ID를 사용합니다.
az keyvault set-policy \ --name <key-vault-name> \ --object-id <principal-id> \ --key-permissions get wrapKey unwrapKey
PowerShell 사용(템플릿 없음)
새 작업 영역과 업데이트된 작업 영역 모두에 대해 다음 매개 변수를 명령에 추가합니다.
-
location
: 작업 영역 위치 -
ManagedDiskKeyVaultPropertiesKeyName
: 키 이름 -
ManagedDiskKeyVaultPropertiesKeyVaultUri
: Key Vault URI -
ManagedDiskKeyVaultPropertiesKeyVersion
: 키 버전입니다. 가 아닌latest
특정 키 버전을 사용합니다. -
ManagedDiskRotationToLatestKeyVersionEnabled
: 키(true
또는false
)의 자동 회전을 사용하도록 설정합니다. 이 필드는 선택적 필드입니다. 기본값은 false입니다.
작업 영역 만들기 또는 업데이트:
관리 디스크 매개 변수를 사용하여 작업 영역을 만드는 예제:
$workspace = New-AzDatabricksWorkspace -Name <workspace-name> \ -ResourceGroupName <resource-group-name> \ -location $keyVault.Location \ -Sku premium \ -ManagedDiskKeyVaultPropertiesKeyName $key.Name \ -ManagedDiskKeyVaultPropertiesKeyVaultUri $keyVault.VaultUri \ -ManagedDiskKeyVaultPropertiesKeyVersion $key.Version -ManagedDiskRotationToLatestKeyVersionEnabled
관리 디스크 매개 변수를 사용하여 작업 영역을 업데이트하는 예제:
$workspace = Update-AzDatabricksworkspace -Name <workspace-name> \ -ResourceGroupName <resource-group-name> \ -ManagedDiskKeyVaultPropertiesKeyName $key.Name \ -ManagedDiskKeyVaultPropertiesKeyVaultUri $keyVault.VaultUri \ -ManagedDiskKeyVaultPropertiesKeyVersion $key.Version -ManagedDiskRotationToLatestKeyVersionEnabled
KeyVault에 대한 키 권한이 있는 액세스 정책 추가:
Set-AzKeyVaultAccessPolicy -VaultName $keyVault.VaultName \ -ObjectId $workspace.ManagedDiskIdentityPrincipalId \ -PermissionsToKeys wrapkey,unwrapkey,get
Azure Portal 또는 ARM 템플릿을 사용합니다
Azure 설명서에서 Azure 빠른 시작 템플릿을 탐색할 수 있습니다. ARM 템플릿 배포 옵션 목록은 ARM 템플릿 설명서를 참조하세요.
작업 영역을 만들 때 디스크 암호화 집합 리소스도 작업 영역의 관리 리소스 그룹 내에 만들어집니다. Key Vault에 액세스하는 데 사용되도록 시스템이 할당한 관리 ID가 있습니다. Azure Databricks 컴퓨팅에서 이 키를 사용하여 데이터를 암호화하기 전에 먼저 디스크 암호화 집합의 보안 주체 ID를 검색한 다음 Key Vault에 대한 GET
, WRAP
및 UNWRAP
키 권한을 ID에 부여해야 합니다.
Databricks는 작업 영역을 만들거나 업데이트하고 동일한 템플릿 배포에서 Key Vault 권한을 부여하는 것을 권장합니다. 한 가지 예외를 제외하고 Key Vault 권한을 부여하기 전에 작업 영역을 만들거나 업데이트해야 합니다. 새 Key Vault에서 새 키를 사용하도록 기존 관리 디스크 고객 관리형 키 작업 영역을 업데이트하는 경우 새 Key Vault에 대한 액세스 권한을 기존 디스크 암호화 집합에 부여하고 작업 영역을 새 키 구성으로 업데이트해야 합니다.
이 섹션의 예제 템플릿은 다음 두 가지를 모두 수행합니다.
- 작업 영역을 만들거나 업데이트하여 관리 디스크 고객 관리형 키 설정을 추가
- Key Vault에 대한 디스크 암호화 집합 액세스 권한 부여
다음 예제 ARM 템플릿을 사용할 수 있습니다. 이 템플릿은 두 가지 작업을 수행합니다.
- 관리 디스크 고객 관리 키로 작업 영역을 만들거나 업데이트합니다.
- 키 액세스 정책을 만듭니다.
이미 ARM 템플릿을 사용하는 경우 예제 템플릿의 매개 변수, 리소스 및 출력을 기존 템플릿에 병합할 수 있습니다.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"workspaceName": {
"type": "string",
"metadata": {
"description": "The name of the Azure Databricks workspace to create"
}
},
"pricingTier": {
"type": "string",
"defaultValue": "premium",
"allowedValues": [
"premium"
],
"metadata": {
"description": "The pricing tier of workspace"
}
},
"apiVersion": {
"type": "string",
"defaultValue": "2023-02-01",
"allowedValues": [
"2023-02-01",
"2022-04-01-preview"
],
"metadata": {
"description": "The API version to use to create the workspace resources"
}
},
"keyVaultName": {
"type": "string",
"metadata": {
"description": "The Key Vault name used for CMK"
}
},
"keyName": {
"type": "string",
"metadata": {
"description": "The key name used for CMK"
}
},
"keyVersion": {
"type": "string",
"metadata": {
"description": "The key version used for CMK. Use the specific key version and not `latest`."
}
},
"keyVaultResourceGroupName": {
"type": "string",
"metadata": {
"description": "The resource group name of the Key Vault used for CMK"
}
},
"enableAutoRotation": {
"type": "bool",
"defaultValue": false,
"allowedValues": [
true,
false
],
"metadata": {
"description": "Whether managed disk picks up new key versions automatically"
}
}
},
"variables": {
"managedResourceGroupName": "[concat('databricks-rg-', parameters('workspaceName'), '-', uniqueString(parameters('workspaceName'), resourceGroup().id))]"
},
"resources": [
{
"type": "Microsoft.Databricks/workspaces",
"name": "[parameters('workspaceName')]",
"location": "[resourceGroup().location]",
"apiVersion": "[parameters('apiVersion')]",
"sku": {
"name": "[parameters('pricingTier')]"
},
"properties": {
"managedResourceGroupId": "[concat(subscription().id, '/resourceGroups/', variables('managedResourceGroupName'))]",
"encryption": {
"entities": {
"managedDisk": {
"keySource": "Microsoft.Keyvault",
"keyVaultProperties": {
"keyVaultUri": "[concat('https://', parameters('keyVaultName'), environment().suffixes.keyvaultDns)]",
"keyName": "[parameters('keyName')]",
"keyVersion": "[parameters('keyVersion')]"
},
"rotationToLatestKeyVersionEnabled": "[parameters('enableAutoRotation')]"
}
}
}
}
},
{
"type": "Microsoft.Resources/deployments",
"apiVersion": "2020-06-01",
"name": "addAccessPolicy",
"resourceGroup": "[parameters('keyVaultResourceGroupName')]",
"dependsOn": [
"[resourceId('Microsoft.Databricks/workspaces', parameters('workspaceName'))]"
],
"properties": {
"mode": "Incremental",
"template": {
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "0.9.0.0",
"resources": [
{
"type": "Microsoft.KeyVault/vaults/accessPolicies",
"apiVersion": "2019-09-01",
"name": "[concat(parameters('keyVaultName'), '/add')]",
"properties": {
"accessPolicies": [
{
"objectId": "[reference(resourceId('Microsoft.Databricks/workspaces', parameters('workspaceName')), '2023-02-01').managedDiskIdentity.principalId]",
"tenantId": "[reference(resourceId('Microsoft.Databricks/workspaces', parameters('workspaceName')), '2023-02-01').managedDiskIdentity.tenantId]",
"permissions": {
"keys": [
"get",
"wrapKey",
"unwrapKey"
]
}
}
]
}
}
]
}
}
}
],
"outputs": {
"workspace": {
"type": "object",
"value": "[reference(resourceId('Microsoft.Databricks/workspaces', parameters('workspaceName')))]"
}
}
}
Azure Portal, CLI 또는 기타 도구를 포함하여 원하는 도구와 함께 템플릿을 사용합니다. 다음 템플릿 배포 전략에 대한 세부 정보가 포함됩니다.
Azure Portal을 사용하는 ARM 템플릿
Azure Portal에서 ARM 템플릿을 사용하여 작업 영역을 만들거나 업데이트하려면 다음을 수행합니다.
Azure Portal에 로그인합니다.
리소스 만들기를 클릭하고, 템플릿 배포(사용자 지정 템플릿을 사용하여 배포)를 클릭합니다.
사용자 지정 배포 페이지에서 편집기에서 사용자 고유의 템플릿 빌드를 클릭합니다.
예제 템플릿의 콘텐츠를 편집기에 붙여넣습니다.
저장을 클릭합니다.
매개 변수 값을 입력합니다.
기존 작업 영역을 업데이트하려면 작업 영역을 만드는 데 사용한 것과 동일한 매개 변수를 사용합니다. 고객 관리 키를 처음으로 추가하려면 위 템플릿에 표시된 대로
resources.properties.encryption.entities.managedDisk
아래에 키 관련 매개변수를 추가합니다. 키를 회전하려면 키 관련 매개 변수의 일부 또는 전부를 변경합니다.Important
작업 영역을 업데이트하는 경우 템플릿의 리소스 그룹 이름과 작업 영역 이름이 기존 작업 영역의 리소스 그룹 이름 및 작업 영역 이름과 동일해야 합니다.
검토 + 만들기를 클릭합니다.
유효성 검사 문제를 해결한 다음 만들기를 클릭합니다.
Important
키를 회전하는 경우 작업 영역 업데이트가 완료될 때까지 이전 키를 삭제하지 마세요.
Azure CLI를 사용하여 ARM 템플릿 적용
이 섹션에서는 Azure CLI에서 ARM 템플릿을 사용하여 키로 작업 영역을 만들거나 업데이트하는 방법을 설명합니다.
템플릿에
resources.properties.encryption.entities.managedDisk
및 관련 매개변수keyvaultName
,keyName
,keyVersion
및keyVaultResourceGroupName
에 대한 섹션이 포함되어 있는지 확인합니다. 없는 경우 이 섹션의 앞부분에서 예제 템플릿을 참조하고 해당 섹션의 병합 및 매개 변수를 템플릿에 병합합니다.az deployment group create
명령을 실행합니다. 리소스 그룹 이름과 작업 영역 이름이 기존 작업 영역의 리소스 이름 및 작업 영역 이름과 동일한 경우 이 명령은 새 작업 영역을 만드는 대신 기존 작업 영역을 업데이트합니다. 기존 배포를 업데이트하는 경우 이전에 사용한 것과 동일한 리소스 그룹 및 작업 영역 이름을 사용해야 합니다.az deployment group create --resource-group <existing-resource-group-name> \ --template-file <file-name>.json \ --parameters workspaceName=<workspace-name> \ keyvaultName=<key-vault-name> \ keyName=<key-name> keyVersion=<key-version> \ keyVaultResourceGroupName=<key-vault-resource-group>
Important
키를 회전하는 경우 작업 영역 업데이트가 완료된 후에만 이전 키를 삭제할 수 있습니다.
5단계: 컴퓨팅 리소스에서 키를 사용하는지 확인(선택 사항)
작업 영역에 대해 관리 디스크 고객 관리 키 기능이 사용 설정되어 있는지 확인합니다.
다음 중 하나를 수행하여 Azure Databricks 작업 영역 세부 정보를 검색합니다.
Azure Portal
- Azure Portal에서 작업 영역을 클릭하고 작업 영역의 이름을 클릭합니다.
- 작업 영역 페이지에서 JSON 보기를 클릭합니다.
-
2022-04-01-preview
API 버전보다 높은 API 버전을 클릭합니다.
Azure CLI
다음 명령을 실행합니다.
az databricks workspace show --resource-group <resource group name> --name <workspace name>
관리 디스크 암호화 매개 변수는
properties
아래에 있습니다. 예시:"properties": { "encryption": { "entities": { "managedDisk": { "keySource": "Microsoft.Keyvault", "keyVaultProperties": { "keyVaultUri": "<key-vault-uri>", "keyName": "<key-name>", "keyVersion": "<key-version>" }, "rotationToLatestKeyVersionEnabled": "<rotation-enabled>" } } }
Powershell
Get-AzDatabricksWorkspace -Name <workspace-name> -ResourceGroupName <resource-group-name> | Select-Object -Property ManagedDiskKeySource, ManagedDiskKeyVaultPropertiesKeyVaultUri, ManagedServicesKeyVaultPropertiesKeyName, ManagedServicesKeyVaultPropertiesKeyVersion, ManagedDiskRotationToLatestKeyVersionEnabled
출력에서 반환되는 속성의 값을 검토합니다.
ManagedDiskKeySource : Microsoft.Keyvault ManagedDiskKeyVaultPropertiesKeyVaultUri : <key-vault-uri> ManagedServicesKeyVaultPropertiesKeyName : <key-name> ManagedServicesKeyVaultPropertiesKeyVersion : <key-version> ManagedDiskRotationToLatestKeyVersionEnabled : <rotation-enabled>
테스트에 사용할 작업 영역에 대한 컴퓨팅 리소스 만들기:
컴퓨팅 리소스가 성공적으로 시작되지 않는 경우, 일반적으로 디스크 암호화 세트에 키 볼트에 액세스할 수 있는 적절한 권한을 부여해야 하기 때문입니다.
Azure Portal에서 작업 영역을 클릭하고 작업 영역의 이름을 클릭합니다.
작업 영역 페이지에서 작업 영역이 속한 관리되는 리소스 그룹의 이름을 클릭합니다.
리소스 그룹 페이지의 리소스에서 가상 머신의 이름을 클릭합니다.
가상 머신 페이지의 왼쪽에 있는 설정에서 디스크를 클릭합니다.
디스크 페이지의 데이터 디스크 아래에서 디스크의 암호화 필드에 값이
SSE with CMK
로 설정되어 있는지 확인합니다.
6단계: 이전에 종료된 컴퓨팅 리소스 시작
- 작업 영역 업데이트가 완료되었는지 확인합니다. 키가 템플릿의 유일한 변경 사항인 경우 일반적으로 5분 이내에 완료됩니다. 그렇지 않으면 더 많은 시간이 걸릴 수 있습니다.
- 이전에 종료한 모든 컴퓨팅 리소스를 수동으로 시작합니다.
컴퓨팅 자원이 성공적으로 시작되지 않는 경우, 일반적으로 디스크 암호화 세트에 키 볼트에 액세스할 수 있는 권한을 부여해야 하기 때문입니다.
나중에 키 회전
기존 작업 영역에는 키가 이미 있는 두 가지 유형의 키 회전이 있습니다.
- 자동 순환:
rotationToLatestKeyVersionEnabled
가 작업 영역에 대해true
인 경우 디스크 암호화 집합은 키 버전 변경을 감지하고 최신 키 버전을 가리킵니다. - 수동 회전: 기존 관리 디스크 고객 관리형 키 작업 영역을 새 키로 업데이트할 수 있습니다. 기존 작업 영역에 키를 처음 추가하는 것처럼 위의 지침을 따릅니다.
문제 해결
클러스터가 KeyVaultAccessForbidden
로 실패함
문제는 클러스터가 다음 오류 와 함께 시작되지 않는다는 것입니다.
Cloud Provider Launch Failure: KeyVaultAccessForbidden
작업 영역의 관리되는 리소스 그룹에 만든 디스크 암호화 집합에 Key Vault에 액세스할 수 있는 권한을 부여합니다. 필요한 권한: GET
, WRAPKEY
, UNWRAPKEY
.
4단계: 배포 유형에 대한 작업 영억 만들기 또는 업데이트 의 하위 섹션을 다시 읽고, 특정 권한을 사용한 Key Vault 액세스 정책 업데이트에 특히 주의해야 합니다.
키 매개 변수가 없습니다.
관리 디스크 고객 관리 키 매개 변수가 누락되었습니다.
ARM 템플릿이 리소스에 대해 Microsoft.Databricks/workspaces
올바른 API 버전을 사용하는지 확인합니다. 관리 디스크 고객 관리형 키 기능은 API 버전 이상 2022-04-01-preview
에서만 사용할 수 있습니다. 다른 API 버전을 사용하는 경우 작업 영역이 만들어지거나 업데이트되지만 관리 디스크 매개 변수는 무시됩니다.
ApplicationUpdateFail
로 작업 영역 업데이트 실패
이 문제는 관리되는 디스크 사용 작업 영역에 대해 다음 오류와 함께 작업 영역 업데이트 또는 패치 작업이 실패하는 것입니다.
Failed to update application: `<workspace name>`, because patch resource group failure. (Code: ApplicationUpdateFail)
디스크 암호화 집합에 Key Vault에 대한 액세스 권한을 부여한 다음 태그 추가와 같이 작업 영역 업데이트 작업을 수행합니다.
액세스 정책이 없습니다.
문제는 다음과 같은 오류입니다.
ERROR CODE: BadRequest MESSAGE: Invalid value found at accessPolicies[14].ObjectId: <objectId>
위의 개체 ID가 있는 액세스 정책이 Key Vault에서 유효하지 않습니다. Key Vault에 새 액세스 정책을 추가하려면 제거해야 합니다.
분실한 키를 복구할 수 없음
분실한 키는 복구할 수 없습니다. 키를 분실하거나 해지하여 복구할 수 없는 경우 Azure Databricks 컴퓨팅 리소스가 더 이상 작동하지 않습니다. 작업 영역의 다른 기능은 영향을 받지 않습니다.
리소스
- Azure 설명서의 Azure 관리 디스크
- Azure 설명서의 Azure Disk Storage의 서버 측 암호화