다음을 통해 공유


Azure PowerShell을 사용하여 Azure Managed Disks 복원

이 문서에서는 Azure Backup에서 만든 복원 지점에서 Azure Managed Disks 를 복원하는 방법을 설명합니다. Azure Portal, Azure CLI, REST API를 사용하여 Managed Disk를 복원할 수도 있습니다.

현재, 백업을 수행한 기존 원본 디스크를 교체하여 복원하는 OLR(원래 위치 복구) 옵션은 지원되지 않습니다. 복구 지점에서 복원하여 백업을 수행한 원본 디스크와 동일한 리소스 그룹이나 다른 리소스 그룹에 새 디스크를 만들 수 있습니다. 이를 ALR(대체 위치 복구)이라고 하며 이는 원본 디스크와 복원된 새 디스크를 모두 유지하는 데 도움이 됩니다.

이 문서에서는 다음을 수행하는 방법을 알아봅니다.

  • 새 디스크를 만드는 복원

  • 복원 작업 상태 추적

예제에서는 ‘testBkpVaultRG’ 리소스 그룹의 기존 백업 자격 증명 모음 ‘TestBkpVault’를 참조합니다.

$TestBkpVault = Get-AzDataProtectionBackupVault -VaultName TestBkpVault -ResourceGroupName "testBkpVaultRG"

새 디스크를 만드는 복원

권한 설정

백업 자격 증명 모음은 관리 ID를 사용하여 다른 Azure 리소스에 액세스합니다. 백업에서 복원하려면 백업 자격 증명 모음의 관리 ID에 디스크를 복원할 리소스 그룹에 대한 권한 집합이 필요합니다.

백업 자격 증명 모음에는 시스템 할당 관리 ID가 사용됩니다. 이 ID는 리소스당 하나로 제한되며 이 리소스의 수명 주기에 연결됩니다. Azure RBAC(역할 기반 액세스 제어)를 사용하여 관리 ID에 대한 권한을 부여할 수 있습니다. 관리 ID는 Azure 리소스에서만 사용할 수 있는 특수 유형의 서비스 주체입니다. 관리 ID에 대해 자세히 알아봅니다.

여기에 설명된 대로 디스크가 복원/생성될 대상 리소스 그룹 내 보관소의 시스템 할당 관리 ID에 적절한 권한을 할당합니다.

관련 복구 지점 가져오기

Get-AzDataProtectionBackupInstance 명령을 사용하여 모든 인스턴스를 가져오고 관련 인스턴스를 식별합니다.

$AllInstances = Get-AzDataProtectionBackupInstance -ResourceGroupName "testBkpVaultRG" -VaultName $TestBkpVault.Name

Az.ResourcegraphSearch-AzDataProtectionBackupInstanceInAzGraph 명령을 사용하여 여러 금고와 구독에서 인스턴스를 검색할 수도 있습니다.

$AllInstances = Search-AzDataProtectionBackupInstanceInAzGraph -ResourceGroupName "testBkpVaultRG" -VaultName $TestBkpVault.Name -DatasourceType AzureDisk -ProtectionStatus ProtectionConfigured

인스턴스가 식별되면 관련 복구 지점을 가져옵니다.

$rp = Get-AzDataProtectionRecoveryPoint -ResourceGroupName "testBkpVaultRG" -VaultName $TestBkpVault.Name -BackupInstanceName $AllInstances[2].BackupInstanceName

복원 요청 준비

위에서 설명한 대로 권한이 할당된 대상 리소스 그룹과 필요한 디스크 이름을 사용하여 만들 새 디스크의 ARM ID를 생성합니다. 예를 들어 다른 구독을 사용하는 리소스 그룹 targetrg에서 디스크의 이름을 PSTestDisk2로 지정할 수 있습니다.

$targetDiskId = /subscriptions/xxxxxxxx-xxxx-xxxx-xxxx/resourceGroups/targetrg/providers/Microsoft.Compute/disks/PSTestDisk2

Initialize-AzDataProtectionRestoreRequest 명령을 사용하여 모든 관련 세부 정보를 사용하여 복원 요청을 준비합니다.

$restorerequest = Initialize-AzDataProtectionRestoreRequest -DatasourceType AzureDisk -SourceDataStore OperationalStore -RestoreLocation $TestBkpVault.Location  -RestoreType AlternateLocation -TargetResourceId $targetDiskId -RecoveryPoint $rp[0].Name

복원 트리거

Start-AzDataProtectionBackupInstanceRestore 명령을 사용하여 위에서 준비한 요청으로 복원을 트리거합니다.

Start-AzDataProtectionBackupInstanceRestore -BackupInstanceName $AllInstances[2].BackupInstanceName -ResourceGroupName "testBkpVaultRG" -VaultName $TestBkpVault.Name -Parameter $restorerequest

작업 추적

Get-AzDataProtectionJob 명령을 사용하여 모든 작업을 추적합니다. 모든 작업을 나열하고 특정 작업 세부 정보를 가져올 수 있습니다.

Az.ResourceGraph를 사용하여 모든 백업 자격 모음에서 모든 작업을 추적할 수도 있습니다. Search-AzDataProtectionJobInAzGraph 명령을 사용하여 모든 백업 볼트에서 관련 작업을 조회합니다.

$job = Search-AzDataProtectionJobInAzGraph -Subscription $sub -ResourceGroupName "testBkpVaultRG" -Vault $TestBkpVault.Name -DatasourceType AzureDisk -Operation OnDemandBackup

다음 단계