PowerShell を使用して Azure VM をバックアップおよび復元するBack up and restore Azure VMs with PowerShell

この記事では、PowerShell コマンドレットを使用して Azure Backup Recovery Services コンテナーの Azure VM をバックアップおよび復元する方法を説明します。This article explains how to back up and restore an Azure VM in an Azure Backup Recovery Services vault using PowerShell cmdlets.

この記事では、次の方法について説明します。In this article you learn how to:

  • Recovery Services のコンテナーを作成し、コンテナーのコンテキストを設定する。Create a Recovery Services vault and set the vault context.
  • バックアップ ポリシーを定義するDefine a backup policy
  • 複数の仮想マシンを保護するバックアップ ポリシーを適用するApply the backup policy to protect multiple virtual machines
  • 保護された仮想マシン用のオンデマンドのバックアップ ジョブをトリガーする 仮想マシンをバックアップ (または保護) する前に、前提条件をすべて満たして、VM を保護するための環境を準備する必要があります。Trigger an on-demand backup job for the protected virtual machines Before you can back up (or protect) a virtual machine, you must complete the prerequisites to prepare your environment for protecting your VMs.

開始する前にBefore you start

  • Recovery Services コンテナーについての詳細情報を確認します。Learn more about Recovery Services vaults.
  • Azure VM バックアップのアーキテクチャを確認して、バックアップ プロセスについて学び、サポート、制限、および前提条件を確認します。Review the architecture for Azure VM backup, learn about the backup process, and review support, limitations, and prerequisites.
  • Recovery Services の PowerShell オブジェクト階層を確認します。Review the PowerShell object hierarchy for Recovery Services.

Recovery Services オブジェクトの階層Recovery Services object hierarchy

オブジェクト階層の概要を次の図に示します。The object hierarchy is summarized in the following diagram.

Recovery Services オブジェクトの階層

Azure ライブラリの Az.RecoveryServices コマンドレット リファレンスのリファレンスを確認します。Review the Az.RecoveryServices cmdlet reference reference in the Azure library.

設定して登録するSet up and register

注意

この記事は、Azure Az PowerShell モジュールを使用するように更新されています。This article has been updated to use the Azure Az PowerShell module. Az PowerShell モジュールは、Azure と対話するために推奨される PowerShell モジュールです。The Az PowerShell module is the recommended PowerShell module for interacting with Azure. Az PowerShell モジュールの使用を開始するには、「Azure PowerShell をインストールする」を参照してください。To get started with the Az PowerShell module, see Install Azure PowerShell. Az PowerShell モジュールに移行する方法については、「AzureRM から Az への Azure PowerShell の移行」を参照してください。To learn how to migrate to the Az PowerShell module, see Migrate Azure PowerShell from AzureRM to Az.

開始するにはTo begin:

  1. 最新バージョンの PowerShell をダウンロードしますDownload the latest version of PowerShell

  2. 以下のコマンドを入力して、使用可能な Azure Backup の PowerShell コマンドレットを検索します。Find the Azure Backup PowerShell cmdlets available by typing the following command:

    Get-Command *azrecoveryservices*
    

    Azure Backup、Azure Site Recovery、Recovery Services コンテナーのエイリアスとコマンドレットが表示されます。The aliases and cmdlets for Azure Backup, Azure Site Recovery, and the Recovery Services vault appear. 次の画像は表示例です。The following image is an example of what you'll see. コマンドレットの完全な一覧ではありません。It isn't the complete list of cmdlets.

    Recovery Services の一覧

  3. Connect-AzAccount を使用して Azure アカウントにサインインします。Sign in to your Azure account using Connect-AzAccount. このコマンドレットを実行すると、アカウントの資格情報を入力する Web ページが表示されます。This cmdlet brings up a web page prompts you for your account credentials:

    • または、 -Credential パラメーターを使用して、Connect-AzAccount コマンドレットのパラメーターとしてアカウントの資格情報を含められます。Alternately, you can include your account credentials as a parameter in the Connect-AzAccount cmdlet, using the -Credential parameter.
    • CSP パートナーがテナントの代理として活動している場合は、tenantID またはテナントのプライマリ ドメイン名を使用して顧客をテナントとして指定します。If you're a CSP partner working on behalf of a tenant, specify the customer as a tenant, by using their tenantID or tenant primary domain name. 次に例を示します。Connect-AzAccount -Tenant "fabrikam.com"For example: Connect-AzAccount -Tenant "fabrikam.com"
  4. 1 つのアカウントが複数のサブスクリプションを持つことができるため、使用するサブスクリプションをアカウントに関連付けます。Associate the subscription you want to use with the account, since an account can have several subscriptions:

    Select-AzSubscription -SubscriptionName $SubscriptionName
    
  5. Azure Backup を初めて使用する場合、 Register-AzResourceProvider コマンドレットを使って Azure Recovery Services プロバイダーをサブスクリプションに登録する必要があります。If you're using Azure Backup for the first time, you must use the Register-AzResourceProvider cmdlet to register the Azure Recovery Service provider with your subscription.

    Register-AzResourceProvider -ProviderNamespace "Microsoft.RecoveryServices"
    
  6. 次のコマンドを使用して、プロバイダーが正しく登録されたことを確認できます。You can verify that the Providers registered successfully, using the following commands:

    Get-AzResourceProvider -ProviderNamespace "Microsoft.RecoveryServices"
    

    コマンドの出力では、RegistrationStateRegistered に変更されるはずです。In the command output, the RegistrationState should change to Registered. そうでない場合は、 Register-AzResourceProvider コマンドレットをもう一度実行してください。If not, just run the Register-AzResourceProvider cmdlet again.

Recovery Services コンテナーを作成するCreate a Recovery Services vault

次の手順では、Recovery Services コンテナーの作成について説明します。The following steps lead you through creating a Recovery Services vault. Recovery Services コンテナーは Backup コンテナーとは異なります。A Recovery Services vault is different than a Backup vault.

  1. Recovery Services コンテナーは Resource Manager リソースであるため、リソース グループ内に配置する必要があります。The Recovery Services vault is a Resource Manager resource, so you need to place it within a resource group. 既存のリソース グループを使用することも、 New-AzResourceGroup コマンドレットを使ってリソース グループを作成することもできます。You can use an existing resource group, or create a resource group with the New-AzResourceGroup cmdlet. 新しいリソース グループを作成するときは、リソース グループの名前と場所を指定します。When creating a resource group, specify the name and location for the resource group.

    New-AzResourceGroup -Name "test-rg" -Location "West US"
    
  2. New-AzRecoveryServicesVault コマンドレットを使用して Recovery Services コンテナーを作成します。Use the New-AzRecoveryServicesVault cmdlet to create the Recovery Services vault. リソース グループに使用したのと同じコンテナーの場所を指定してください。Be sure to specify the same location for the vault as was used for the resource group.

    New-AzRecoveryServicesVault -Name "testvault" -ResourceGroupName "test-rg" -Location "West US"
    
  3. 使用するストレージ冗長性の種類を指定します。Specify the type of storage redundancy to use. ローカル冗長ストレージ (LRS)geo 冗長ストレージ (GRS)、またはゾーン冗長ストレージ (ZRS) を使用できます。You can use Locally Redundant Storage (LRS), Geo-redundant Storage (GRS), or Zone-redundant storage (ZRS). 次に示す例では、testvault-BackupStorageRedundancy オプションが GeoRedundant に設定されています。The following example shows the -BackupStorageRedundancy option for testvault set to GeoRedundant.

    $vault1 = Get-AzRecoveryServicesVault -Name "testvault"
    Set-AzRecoveryServicesBackupProperty  -Vault $vault1 -BackupStorageRedundancy GeoRedundant
    

    ヒント

    Azure Backup コマンドレットの多くは、入力として Recovery Services コンテナー オブジェクトを必要としています。Many Azure Backup cmdlets require the Recovery Services vault object as an input. このため、Backup Recovery Services コンテナー オブジェクトを変数に格納すると便利です。For this reason, it's convenient to store the Backup Recovery Services vault object in a variable.

サブスクリプション内のコンテナーの表示View the vaults in a subscription

サブスクリプション内のコンテナーをすべて表示するには、Get-AzRecoveryServicesVault を使用します。To view all vaults in the subscription, use Get-AzRecoveryServicesVault:

Get-AzRecoveryServicesVault

出力は次のサンプルのようなものになります。関連する ResourceGroupName と Location が指定されていることに注目してください。The output is similar to the following example, notice the associated ResourceGroupName and Location are provided.

Name              : Contoso-vault
ID                : /subscriptions/1234
Type              : Microsoft.RecoveryServices/vaults
Location          : WestUS
ResourceGroupName : Contoso-docs-rg
SubscriptionId    : 1234-567f-8910-abc
Properties        : Microsoft.Azure.Commands.RecoveryServices.ARSVaultProperties

Azure VM のバックアップBack up Azure VMs

Recovery Services コンテナーを使用して仮想マシンを保護します。Use a Recovery Services vault to protect your virtual machines. 保護を適用する前に、資格情報コンテナーのコンテキスト (資格情報コンテナーで保護されているデータの種類) を設定し、保護ポリシーを確認します。Before you apply the protection, set the vault context (the type of data protected in the vault), and verify the protection policy. 保護ポリシーは、バックアップ ジョブが実行される時間と各バックアップ スナップショットの保持期間を設定するスケジュールです。The protection policy is the schedule when the backup jobs run, and how long each backup snapshot is retained.

コンテナーのコンテキストの設定Set vault context

VM 上の保護を有効にする前に、Set-AzRecoveryServicesVaultContext を使用してコンテナーのコンテキストを設定します。Before enabling protection on a VM, use Set-AzRecoveryServicesVaultContext to set the vault context. コンテナーのコンテキストを設定すると、後続のすべてのコマンドレットに適用されます。Once the vault context is set, it applies to all subsequent cmdlets. 次の例は、コンテナー testvault のコンテナーのコンテキストを設定します。The following example sets the vault context for the vault, testvault.

Get-AzRecoveryServicesVault -Name "testvault" -ResourceGroupName "Contoso-docs-rg" | Set-AzRecoveryServicesVaultContext

コンテナー ID をフェッチするFetch the vault ID

コンテナーのコンテキストの設定は、Azure PowerShell のガイドラインに従って廃止される予定です。We plan on deprecating the vault context setting in accordance with Azure PowerShell guidelines. 代わりに、次のようにコンテナー ID を格納またはフェッチし、関連するコマンドに渡すことができます。Instead, you can store or fetch the vault ID, and pass it to relevant commands. そのため、コンテナーのコンテキストを設定していない場合や、特定のコンテナーに対して実行するコマンドを指定する場合は、次のように関連するすべてのコマンドにコンテナー ID を "-vaultID" として渡します。So, if you haven't set the vault context or want to specify the command to run for a certain vault, pass the vault ID as "-vaultID" to all relevant command, as follows:

$targetVault = Get-AzRecoveryServicesVault -ResourceGroupName "Contoso-docs-rg" -Name "testvault"
$targetVault.ID

またはOr

$targetVaultID = Get-AzRecoveryServicesVault -ResourceGroupName "Contoso-docs-rg" -Name "testvault" | select -ExpandProperty ID

ストレージ レプリケーションの設定を変更するModifying storage replication settings

LRS/GRS に対するコンテナーのストレージ レプリケーションの構成を設定するには、Set-AzRecoveryServicesBackupProperty コマンドを使用します。Use Set-AzRecoveryServicesBackupProperty command to set the Storage replication configuration of the vault to LRS/GRS

Set-AzRecoveryServicesBackupProperty -Vault $targetVault -BackupStorageRedundancy GeoRedundant/LocallyRedundant

注意

記憶域冗長は、コンテナーに保護されているバックアップ項目がない場合にのみ変更できます。Storage Redundancy can be modified only if there are no backup items protected to the vault.

保護ポリシーの作成Create a protection policy

Recovery Services コンテナーの作成時に、既定の保護およびアイテム保持ポリシーも付属しています。When you create a Recovery Services vault, it comes with default protection and retention policies. 既定の保護ポリシーは、毎日指定した時刻にバックアップ ジョブをトリガーします。The default protection policy triggers a backup job each day at a specified time. 既定のアイテム保持ポリシーは、毎日の復旧ポイントを 30 日間保持します。The default retention policy retains the daily recovery point for 30 days. 既定のポリシーを使用すると、VM を迅速に保護することができ、後で異なる詳細な内容にポリシーを編集することもできます。You can use the default policy to quickly protect your VM and edit the policy later with different details.

Get-AzRecoveryServicesBackupProtectionPolicy を使用し、コンテナーで利用できる保護ポリシーを表示します。Use Get-AzRecoveryServicesBackupProtectionPolicy to view the protection policies available in the vault. このコマンドレットを使用して、特定のポリシーを取得したり、ワークロードの種類に関連付けられているポリシーを表示したりできます。You can use this cmdlet to get a specific policy, or to view the policies associated with a workload type. 次の例では、ワークロードの種類 AzureVM のポリシーを取得します。The following example gets policies for workload type, AzureVM.

Get-AzRecoveryServicesBackupProtectionPolicy -WorkloadType "AzureVM" -VaultId $targetVault.ID

出力は次の例のようになります。The output is similar to the following example:

Name                 WorkloadType       BackupManagementType BackupTime                DaysOfWeek
----                 ------------       -------------------- ----------                ----------
DefaultPolicy        AzureVM            AzureVM              4/14/2016 5:00:00 PM

注意

PowerShell の BackupTime フィールドのタイムゾーンは UTC です。The timezone of the BackupTime field in PowerShell is UTC. ただし、Azure ポータルにバックアップ時刻が表示されるとき、時刻はローカル タイムゾーンに調整されます。However, when the backup time is shown in the Azure portal, the time is adjusted to your local timezone.

バックアップ保護ポリシーは、少なくとも 1 つのアイテム保持ポリシーと関連付けられます。A backup protection policy is associated with at least one retention policy. アイテム保持ポリシーでは、復旧ポイントが削除される前に保持される期間が定義されています。A retention policy defines how long a recovery point is kept before it's deleted.

既定では、開始時刻はスケジュール ポリシー オブジェクトで定義されます。By default, a start time is defined in the Schedule Policy Object. 開始時刻を希望の時刻に変更するには、次の例を使用します。Use the following example to change the start time to the desired start time. 希望の開始時刻も、UTC で指定する必要があります。The desired start time should be in UTC as well. 次の例では、毎日のバックアップの希望の開始時刻が午前 01:00 UTC であるものとします。The following example assumes the desired start time is 01:00 AM UTC for daily backups.

$schPol = Get-AzRecoveryServicesBackupSchedulePolicyObject -WorkloadType "AzureVM"
$UtcTime = Get-Date -Date "2019-03-20 01:00:00Z"
$UtcTime = $UtcTime.ToUniversalTime()
$schpol.ScheduleRunTimes[0] = $UtcTime

重要

開始時刻は 30 分単位のみで指定する必要があります。You need to provide the start time in 30 minute multiples only. 上の例では、"01:00:00" または "02:30:00" のみを指定できます。In the example above, it can be only "01:00:00" or "02:30:00". 開始時刻を "01:15:00" にすることはできません。The start time can't be "01:15:00"

次の例では、スケジュール ポリシーとアイテム保持ポリシーを変数に格納します。The following example stores the schedule policy and the retention policy in variables. 次の例では、これらの変数を使用して、保護ポリシー NewPolicy の作成時にパラメーターを定義します。The example uses those variables to define the parameters when creating a protection policy, NewPolicy.

$retPol = Get-AzRecoveryServicesBackupRetentionPolicyObject -WorkloadType "AzureVM"
New-AzRecoveryServicesBackupProtectionPolicy -Name "NewPolicy" -WorkloadType "AzureVM" -RetentionPolicy $retPol -SchedulePolicy $schPol -VaultId $targetVault.ID

出力は次の例のようになります。The output is similar to the following example:

Name                 WorkloadType       BackupManagementType BackupTime                DaysOfWeek
----                 ------------       -------------------- ----------                ----------
NewPolicy           AzureVM            AzureVM              4/24/2016 1:30:00 AM

保護を有効にするEnable protection

保護ポリシーを定義したら、アイテムのポリシーも有効にする必要があります。Once you've defined the protection policy, you still must enable the policy for an item. Enable-AzRecoveryServicesBackupProtection を使用して、保護を有効にします。Use Enable-AzRecoveryServicesBackupProtection to enable protection. 保護を有効にするには、アイテムとポリシーの 2 つのオブジェクトが必要です。Enabling protection requires two objects - the item and the policy. ポリシーがコンテナーに関連付けられると、ポリシーのスケジュールで定義された時刻にバックアップのワークフローが開始されます。Once the policy has been associated with the vault, the backup workflow is triggered at the time defined in the policy schedule.

重要

PowerShell を使用して一度に複数の VM のバックアップを有効にするときは、1 つのポリシーに 100 を超える VM が関連付けられていないことを確認します。While using PowerShell to enable backup for multiple VMs at once, ensure that a single policy doesn't have more than 100 VMs associated with it. これは、推奨されるベスト プラクティスです。This is a recommended best practice. 現時点では、100 を超える VM がある場合に PowerShell クライアントでは明示的にブロックされませんが、このチェックは将来追加される予定です。Currently, the PowerShell client doesn't explicitly block if there are more than 100 VMs, but the check is planned to be added in the future.

以下の例では、ポリシー NewPolicy を使用してアイテム V2VM の保護を有効にします。The following examples enable protection for the item, V2VM, using the policy, NewPolicy. 例は、VM が暗号化されるかどうか、暗号化の種類によって異なります。The examples differ based on whether the VM is encrypted, and what type of encryption.

暗号化されていない Resource Manager VM で保護を有効にするには:To enable the protection on non-encrypted Resource Manager VMs:

$pol = Get-AzRecoveryServicesBackupProtectionPolicy -Name "NewPolicy" -VaultId $targetVault.ID
Enable-AzRecoveryServicesBackupProtection -Policy $pol -Name "V2VM" -ResourceGroupName "RGName1" -VaultId $targetVault.ID

暗号化された VM (BEK と KEK を使用して暗号化) で保護を有効にするには、キーとシークレットをキー コンテナーから読み取るためのアクセス許可を Azure Backup サービスに付与する必要があります。To enable the protection on encrypted VMs (encrypted using BEK and KEK), you must give the Azure Backup service permission to read keys and secrets from the key vault.

Set-AzKeyVaultAccessPolicy -VaultName "KeyVaultName" -ResourceGroupName "RGNameOfKeyVault" -PermissionsToKeys backup,get,list -PermissionsToSecrets get,list -ServicePrincipalName 262044b1-e2ce-469f-a196-69ab7ada62d3
$pol = Get-AzRecoveryServicesBackupProtectionPolicy -Name "NewPolicy" -VaultId $targetVault.ID
Enable-AzRecoveryServicesBackupProtection -Policy $pol -Name "V2VM" -ResourceGroupName "RGName1" -VaultId $targetVault.ID

暗号化された VM (BEK だけを使用して暗号化) で保護を有効にするには、シークレットをキー コンテナーから読み取るためのアクセス許可を Azure Backup サービスに付与する必要があります。To enable the protection on encrypted VMs (encrypted using BEK only), you must give the Azure Backup service permission to read secrets from the key vault.

Set-AzKeyVaultAccessPolicy -VaultName "KeyVaultName" -ResourceGroupName "RGNameOfKeyVault" -PermissionsToSecrets backup,get,list -ServicePrincipalName 262044b1-e2ce-469f-a196-69ab7ada62d3
$pol = Get-AzRecoveryServicesBackupProtectionPolicy -Name "NewPolicy" -VaultId $targetVault.ID
Enable-AzRecoveryServicesBackupProtection -Policy $pol -Name "V2VM" -ResourceGroupName "RGName1" -VaultId $targetVault.ID

注意

Azure Government クラウドを使用している場合は、Set-AzKeyVaultAccessPolicy コマンドレットの ServicePrincipalName パラメーターで、値 ff281ffe-705c-4f53-9f37-a40e6f2c68f3 を使用します。If you're using the Azure Government cloud, then use the value ff281ffe-705c-4f53-9f37-a40e6f2c68f3 for the parameter ServicePrincipalName in Set-AzKeyVaultAccessPolicy cmdlet.

こちらのシナリオに記載されているように、いくつかのディスクを選択的にバックアップし、他のディスクを除外する場合は、こちらに記載された要領で保護を構成し、関連するディスクのみをバックアップすることができます。If you want to selectively backup few disks and exclude others as mentioned in these scenarios, you can configure protection and backup only the relevant disks as documented here.

バックアップ ジョブの監視Monitoring a backup job

Azure ポータルを使用せず、バックアップ ジョブなどの実行時間の長い操作を監視できます。You can monitor long-running operations, such as backup jobs, without using the Azure portal. 進行中のジョブの状態を取得するには、Get-AzRecoveryservicesBackupJob コマンドレットを使用します。To get the status of an in-progress job, use the Get-AzRecoveryservicesBackupJob cmdlet. このコマンドレットは、特定のコンテナーのバックアップ ジョブを取得し、そのコンテナーはコンテナーのコンテキストで指定されます。This cmdlet gets the backup jobs for a specific vault, and that vault is specified in the vault context. 次の例では、配列として進行中のジョブの状態を取得し、状態を $joblist 変数に格納します。The following example gets the status of an in-progress job as an array, and stores the status in the $joblist variable.

$joblist = Get-AzRecoveryservicesBackupJob –Status "InProgress" -VaultId $targetVault.ID
$joblist[0]

出力は次の例のようになります。The output is similar to the following example:

WorkloadName     Operation            Status               StartTime                 EndTime                   JobID
------------     ---------            ------               ---------                 -------                   ----------
V2VM             Backup               InProgress            4/23/2016                5:00:30 PM                cf4b3ef5-2fac-4c8e-a215-d2eba4124f27

完了確認のためにこれらのジョブをポーリングすると、不要な追加コードが発生します。そのため、代わりに Wait-AzRecoveryServicesBackupJob コマンドレットを使用します。Instead of polling these jobs for completion - which is unnecessary additional code - use the Wait-AzRecoveryServicesBackupJob cmdlet. このコマンドレットは、ジョブが完了するまで、または指定したタイムアウト値に到達するまで、実行を一時停止します。This cmdlet pauses the execution until either the job completes or the specified timeout value is reached.

Wait-AzRecoveryServicesBackupJob -Job $joblist[0] -Timeout 43200 -VaultId $targetVault.ID

Azure VM のバックアップを管理するManage Azure VM backups

保護ポリシーの変更Modify a protection policy

保護ポリシーを変更するには、Set-AzRecoveryServicesBackupProtectionPolicy を使用して SchedulePolicy または RetentionPolicy オブジェクトを変更します。To modify the protection policy, use Set-AzRecoveryServicesBackupProtectionPolicy to modify the SchedulePolicy or RetentionPolicy objects.

スケジュールされた時間を変更するModifying scheduled time

保護ポリシーを作成するときに、開始時刻が既定で割り当てられます。When you create a protection policy, it's assigned a start-time by default. 次の例では、保護ポリシーの開始時刻を変更する方法を示します。The following examples show how to modify the start time of a protection policy.

$SchPol = Get-AzRecoveryServicesBackupSchedulePolicyObject -WorkloadType "AzureVM"
$UtcTime = Get-Date -Date "2019-03-20 01:00:00Z" (This is the time that you want to start the backup)
$UtcTime = $UtcTime.ToUniversalTime()
$SchPol.ScheduleRunTimes[0] = $UtcTime
$pol = Get-AzRecoveryServicesBackupProtectionPolicy -Name "NewPolicy" -VaultId $targetVault.ID
Set-AzRecoveryServicesBackupProtectionPolicy -Policy $pol  -SchedulePolicy $SchPol -VaultId $targetVault.ID

リテンション期間を変更するModifying retention

次の例では、復旧ポイントのリテンション期間を 365 日に変更します。The following example changes the recovery point retention to 365 days.

$retPol = Get-AzRecoveryServicesBackupRetentionPolicyObject -WorkloadType "AzureVM"
$retPol.DailySchedule.DurationCountInDays = 365
$pol = Get-AzRecoveryServicesBackupProtectionPolicy -Name "NewPolicy" -VaultId $targetVault.ID
Set-AzRecoveryServicesBackupProtectionPolicy -Policy $pol  -RetentionPolicy $RetPol -VaultId $targetVault.ID

インスタント リストア スナップショットの保持期間を構成するConfiguring Instant restore snapshot retention

注意

Azure PowerShell バージョン 1.6.0 以降では、PowerShell を使用して、ポリシーのインスタント リストアのスナップショット保持期間を更新できます。From Azure PowerShell version 1.6.0 onwards, one can update the instant restore snapshot retention period in policy using PowerShell

$bkpPol = Get-AzRecoveryServicesBackupProtectionPolicy -WorkloadType "AzureVM" -VaultId $targetVault.ID
$bkpPol.SnapshotRetentionInDays=7
Set-AzRecoveryServicesBackupProtectionPolicy -policy $bkpPol -VaultId $targetVault.ID

既定値は 2 です。The default value will be 2. 1 から 5 の数値を設定できます。You can set the value with a minimum of 1 and maximum of 5. 毎週のバックアップ ポリシーの場合は、期間は 5 に設定されていて、変更することはできません。For weekly backup policies, the period is set to 5 and can't be changed.

スナップショットの保持中に Azure Backup リソース グループを作成するCreating Azure Backup resource group during snapshot retention

注意

Azure PowerShell バージョン 3.7.0 以降、インスタント スナップショットを格納するためにリソース グループを作成し、編集することができます。From Azure PowerShell version 3.7.0 onwards, one can create and edit the resource group created for storing instant snapshots.

リソース グループの作成ルールとその他の関連する詳細情報については、「Virtual Machines の Azure Backup リソース グループ」ドキュメントを参照してください。To understand more about resource group creation rules and other relevant details, refer to the Azure Backup resource group for Virtual Machines documentation.

$bkpPol = Get-AzureRmRecoveryServicesBackupProtectionPolicy -name "DefaultPolicyForVMs"
$bkpPol.AzureBackupRGName="Contosto_"
$bkpPol.AzureBackupRGNameSuffix="ForVMs"
Set-AzureRmRecoveryServicesBackupProtectionPolicy -policy $bkpPol

保護された VM のディスクを除外するExclude disks for a protected VM

Azure VM バックアップでは、ディスクを選択的に除外または含める機能が提供されます (この機能はこれらのシナリオで役立ちます)。Azure VM backup provides a capability to selectively exclude or include disks which is helpful in these scenarios. 仮想マシンが既に Azure VM バックアップによって保護されていて、すべてのディスクがバックアップされている場合は、こちらに記載されているように、保護を変更してディスクを選択的に追加または除外することができます。If the virtual machine is already protected by Azure VM backup and if all disks are backed up, then you can modify the protection to selectively include or exclude disks as mentioned here.

バックアップをトリガーするTrigger a backup

バックアップ ジョブをトリガーするには、Backup-AzRecoveryServicesBackupItem を使用します。Use Backup-AzRecoveryServicesBackupItem to trigger a backup job. 初回バックアップの場合、完全バックアップが行われます。If it's the initial backup, it is a full backup. 以後のバックアップは、増分コピーとなります。Subsequent backups take an incremental copy. 次の例では、60 日間保持される VM のバックアップが作成されます。The following example takes a VM backup to be retained for 60 days.

$namedContainer = Get-AzRecoveryServicesBackupContainer -ContainerType "AzureVM" -Status "Registered" -FriendlyName "V2VM" -VaultId $targetVault.ID
$item = Get-AzRecoveryServicesBackupItem -Container $namedContainer -WorkloadType "AzureVM" -VaultId $targetVault.ID
$endDate = (Get-Date).AddDays(60).ToUniversalTime()
$job = Backup-AzRecoveryServicesBackupItem -Item $item -VaultId $targetVault.ID -ExpiryDateTimeUTC $endDate

出力は次の例のようになります。The output is similar to the following example:

WorkloadName     Operation            Status               StartTime                 EndTime                   JobID
------------     ---------            ------               ---------                 -------                   ----------
V2VM              Backup              InProgress          4/23/2016                  5:00:30 PM                cf4b3ef5-2fac-4c8e-a215-d2eba4124f27

注意

PowerShell での StartTime フィールドと EndTime フィールドのタイムゾーンは UTC です。The timezone of the StartTime and EndTime fields in PowerShell is UTC. ただし、Azure ポータルに時刻が表示されるとき、時刻はローカル タイムゾーンに調整されます。However, when the time is shown in the Azure portal, the time is adjusted to your local timezone.

バックアップ項目のポリシーを変更するChange policy for backup items

既存のポリシーを変更したり、バックアップ対象項目のポリシーを Policy1 から Policy2 に変えたりすることができます。You can either modify existing policy or change the policy of the backed-up item from Policy1 to Policy2. バックアップ対象項目のポリシーを切り替えるには、該当するポリシーとバックアップ項目をフェッチして、バックアップ項目をパラメーターに指定して Enable-AzRecoveryServices コマンドを使用します。To switch policies for a backed-up item, fetch the relevant policy and back up item and use the Enable-AzRecoveryServices command with backup item as the parameter.

$TargetPol1 = Get-AzRecoveryServicesBackupProtectionPolicy -Name <PolicyName> -VaultId $targetVault.ID
$anotherBkpItem = Get-AzRecoveryServicesBackupItem -WorkloadType AzureVM -BackupManagementType AzureVM -Name "<BackupItemName>" -VaultId $targetVault.ID
Enable-AzRecoveryServicesBackupProtection -Item $anotherBkpItem -Policy $TargetPol1 -VaultId $targetVault.ID

このコマンドは、バックアップの構成が完了するまで待機してから、次の出力を返します。The command waits until the configure backup is completed and returns the following output.

WorkloadName     Operation            Status               StartTime                 EndTime                   JobID
------------     ---------            ------               ---------                 -------                   -----
TestVM           ConfigureBackup      Completed            3/18/2019 8:00:21 PM      3/18/2019 8:02:16 PM      654e8aa2-4096-402b-b5a9-e5e71a496c4e

保護の停止Stop protection

データの保持Retain data

保護を停止する場合は、Disable-AzRecoveryServicesBackupProtection PowerShell コマンドレットを使用できます。If you wish to stop protection, you can use the Disable-AzRecoveryServicesBackupProtection PowerShell cmdlet. これによって、スケジュールされているバックアップは停止されますが、それまでにバックアップされたデータは永続的に保持されます。This will stop the scheduled backups but the data backed up until now is retained forever.

$bkpItem = Get-AzRecoveryServicesBackupItem -BackupManagementType AzureVM -WorkloadType AzureVM -Name "<backup item name>" -VaultId $targetVault.ID
Disable-AzRecoveryServicesBackupProtection -Item $bkpItem -VaultId $targetVault.ID

バックアップ データの削除Delete backup data

コンテナーに格納されたバックアップ データを完全に削除するには、保護を無効にするコマンドに -RemoveRecoveryPoints フラグまたはスイッチを付加します。To completely remove the stored backup data in the vault, add the '-RemoveRecoveryPoints' flag/switch to the 'disable' protection command.

Disable-AzRecoveryServicesBackupProtection -Item $bkpItem -VaultId $targetVault.ID -RemoveRecoveryPoints

Azure VM の復元Restore an Azure VM

VM の復元に Azure portal を使用した場合と PowerShell を使用した場合の間には重要な違いがあります。There's an important difference between the restoring a VM using the Azure portal and restoring a VM using PowerShell. PowerShell の場合、復旧ポイントからディスクと構成情報が作成されたら、復元操作は完了します。With PowerShell, the restore operation is complete once the disks and configuration information from the recovery point are created. 復元操作で仮想マシンは作成されません。The restore operation doesn't create the virtual machine. ディスクから仮想マシンを作成するには、「復元されたディスクからの VM の作成」を参照してください。To create a virtual machine from disk, see the section, Create the VM from restored disks. VM 全体を復元しないが、Azure VM バックアップからいくつかのファイルを復元または復旧する場合は、ファイルの回復に関するセクションを参照してください。If you don't want to restore the entire VM, but want to restore or recover a few files from an Azure VM backup, refer to the file recovery section.

ヒント

復元操作で仮想マシンは作成されません。The restore operation doesn't create the virtual machine.

次の図には、RecoveryServicesVault から BackupRecoveryPoint までのオブジェクト階層が示されています。The following graphic shows the object hierarchy from the RecoveryServicesVault down to the BackupRecoveryPoint.

Recovery Services object hierarchy showing BackupContainer

バックアップ データを復元するには、バックアップ項目と、復元する特定の時点のデータを保持する復旧ポイントを特定します。To restore backup data, identify the backed-up item and the recovery point that holds the point-in-time data. Restore-AzRecoveryServicesBackupItem を使用し、コンテナーからアカウントにデータを復元します。Use Restore-AzRecoveryServicesBackupItem to restore data from the vault to your account.

Azure VM を復元する基本的な手順は次のとおりです。The basic steps to restore an Azure VM are:

  • VM を選択します。Select the VM.
  • 復元ポイントを選択します。Choose a recovery point.
  • ディスクを復元します。Restore the disks.
  • 保存されたディスクから VM を作成します。Create the VM from stored disks.

VM を選択する (ファイルを復元する場合)Select the VM (when restoring files)

バックアップする正しいアイテムを特定する PowerShell オブジェクトを取得するには、資格情報コンテナー内のコンテナーから開始し、オブジェクト階層の上から下に進みます。To get the PowerShell object that identifies the right backup item, start from the container in the vault, and work your way down the object hierarchy. VM を表すコンテナーを選択するには、Get-AzRecoveryServicesBackupContainer コマンドレットを使用し、Get-AzRecoveryServicesBackupItem コマンドレットへのパイプとして使用します。To select the container that represents the VM, use the Get-AzRecoveryServicesBackupContainer cmdlet and pipe that to the Get-AzRecoveryServicesBackupItem cmdlet.

$namedContainer = Get-AzRecoveryServicesBackupContainer  -ContainerType "AzureVM" -Status "Registered" -FriendlyName "V2VM" -VaultId $targetVault.ID
$backupitem = Get-AzRecoveryServicesBackupItem -Container $namedContainer  -WorkloadType "AzureVM" -VaultId $targetVault.ID

回復ポイントを選択する (ファイルを復元する場合)Choose a recovery point (when restoring files)

Get-AzRecoveryServicesBackupRecoveryPoint コマンドレットを使用して、バックアップ項目のすべての復旧ポイントを一覧表示します。Use the Get-AzRecoveryServicesBackupRecoveryPoint cmdlet to list all recovery points for the backup item. その後、復元に使用する復旧ポイントを選択します。Then choose the recovery point to restore. 使用する復旧ポイントがわからない場合、一覧にある最新の RecoveryPointType = AppConsistent ポイントを選択することをお勧めします。If you're unsure which recovery point to use, it's a good practice to choose the most recent RecoveryPointType = AppConsistent point in the list.

次のスクリプトでは、 $rp 変数が、過去 7 日間に選択したバックアップ項目の復旧ポイントの配列になっています。In the following script, the variable, $rp, is an array of recovery points for the selected backup item, from the past seven days. この配列は時間の逆順で並べ替えられています。最新の復旧ポイントのインデックスは 0 です。The array is sorted in reverse order of time with the latest recovery point at index 0. 標準の PowerShell 配列のインデックスを使用して、復旧ポイントを選択します。Use standard PowerShell array indexing to pick the recovery point. 次の例では、$rp[0] は最新の復旧ポイントを選択します。In the example, $rp[0] selects the latest recovery point.

$startDate = (Get-Date).AddDays(-7)
$endDate = Get-Date
$rp = Get-AzRecoveryServicesBackupRecoveryPoint -Item $backupitem -StartDate $startdate.ToUniversalTime() -EndDate $enddate.ToUniversalTime() -VaultId $targetVault.ID
$rp[0]

出力は次の例のようになります。The output is similar to the following example:

RecoveryPointAdditionalInfo :
SourceVMStorageType         : NormalStorage
Name                        : 15260861925810
ItemName                    : VM;iaasvmcontainer;RGName1;V2VM
RecoveryPointId             : /subscriptions/XX/resourceGroups/ RGName1/providers/Microsoft.RecoveryServices/vaults/testvault/backupFabrics/Azure/protectionContainers/IaasVMContainer;iaasvmcontainer;RGName1;V2VM/protectedItems/VM;iaasvmcontainer; RGName1;V2VM/recoveryPoints/15260861925810
RecoveryPointType           : AppConsistent
RecoveryPointTime           : 4/23/2016 5:02:04 PM
WorkloadType                : AzureVM
ContainerName               : IaasVMContainer;iaasvmcontainer; RGName1;V2VM
ContainerType               : AzureVM
BackupManagementType        : AzureVM

ディスクの復元Restore the disks

Restore-AzRecoveryServicesBackupItem コマンドレットを使用して、復旧ポイントまでバックアップ項目のデータと構成を復元します。Use the Restore-AzRecoveryServicesBackupItem cmdlet to restore a backup item's data and configuration to a recovery point. 復旧ポイントを特定したら、それを -RecoveryPoint パラメーターの値として使用します。Once you identify a recovery point, use it as the value for the -RecoveryPoint parameter. 上のサンプルでは、使用する復旧ポイントとして $rp[0] が選択されていました。In the sample above, $rp[0] was the recovery point to use. 次のサンプル コードでは、 $rp[0] をディスクの復元に使用する復旧ポイントとして指定しています。In the following sample code, $rp[0] is the recovery point to use for restoring the disk.

ディスクと構成情報を復元するには、次のコマンドを実行します。To restore the disks and configuration information:

$restorejob = Restore-AzRecoveryServicesBackupItem -RecoveryPoint $rp[0] -StorageAccountName "DestAccount" -StorageAccountResourceGroupName "DestRG" -VaultId $targetVault.ID
$restorejob

マネージド ディスクの復元Restore managed disks

注意

バックアップされた VM でマネージド ディスクが使用されている場合、それらをマネージド ディスクとして復元できるよう、Azure PowerShell RM モジュール バージョン 6.7.0If the backed VM has managed disks and you want to restore them as managed disks, we've introduced the capability from Azure PowerShell RM module v 6.7.0. 以降には新機能が導入されています。onwards.

追加のパラメーター TargetResourceGroupName で、マネージド ディスクの復元先とする RG を指定できます。Provide an additional parameter TargetResourceGroupName to specify the RG to which managed disks will be restored.

重要

パフォーマンスが大幅に向上するため、マネージド ディスクを復元する場合は TargetResourceGroupName を使用することを強くお勧めします。It's strongly recommended to use the TargetResourceGroupName parameter for restoring managed disks since it results in significant performance improvements. このパラメーターを指定しない場合は、インスタント リストア機能の利点を活用することができず、復元操作の速度が低下します。If this parameter isn't given, then you can't benefit from the instant restore functionality and the restore operation will be slower in comparison. マネージド ディスクをアンマネージド ディスクとして復元することが目的の場合は、このパラメーターは指定せず、-RestoreAsUnmanagedDisks パラメーターを指定して意図を明確にしてください。If the purpose is to restore managed disks as unmanaged disks, then don't provide this parameter and make the intention clear by providing the -RestoreAsUnmanagedDisks parameter. -RestoreAsUnmanagedDisks パラメーターは Azure PowerShell 3.7.0 以降から使用できます。The -RestoreAsUnmanagedDisks parameter is available from Azure PowerShell 3.7.0 onwards. 将来のバージョンでは、適切な復元エクスペリエンスのために、これらのパラメーターのいずれかを指定することが必須となります。In future versions, it will be mandatory to provide either of these parameters for the right restore experience.

$restorejob = Restore-AzRecoveryServicesBackupItem -RecoveryPoint $rp[0] -StorageAccountName "DestAccount" -StorageAccountResourceGroupName "DestRG" -TargetResourceGroupName "DestRGforManagedDisks" -VaultId $targetVault.ID

VMConfig.JSON ファイルはストレージ アカウントに復元され、マネージド ディスクは指定したターゲット RG に復元されます。The VMConfig.JSON file will be restored to the storage account and the managed disks will be restored to the specified target RG.

出力は次の例のようになります。The output is similar to the following example:

WorkloadName     Operation          Status               StartTime                 EndTime            JobID
------------     ---------          ------               ---------                 -------          ----------
V2VM              Restore           InProgress           4/23/2016 5:00:30 PM                        cf4b3ef5-2fac-4c8e-a215-d2eba4124f27

Wait-AzRecoveryServicesBackupJob コマンドレットを使用して、復元ジョブが完了するまで待機します。Use the Wait-AzRecoveryServicesBackupJob cmdlet to wait for the Restore job to complete.

Wait-AzRecoveryServicesBackupJob -Job $restorejob -Timeout 43200

復元ジョブが完了したら、Get-AzRecoveryServicesBackupJobDetails コマンドレットを使用して復元操作の詳細を取得します。Once the Restore job has completed, use the Get-AzRecoveryServicesBackupJobDetails cmdlet to get the details of the restore operation. JobDetails プロパティには、VM を再構築するために必要な情報が含まれています。The JobDetails property has the information needed to rebuild the VM.

$restorejob = Get-AzRecoveryServicesBackupJob -Job $restorejob -VaultId $targetVault.ID
$details = Get-AzRecoveryServicesBackupJobDetails -Job $restorejob -VaultId $targetVault.ID

選択的なディスクの復元Restore selective disks

ユーザーは、バックアップ セット全体ではなく、いくつかのディスクを選択的に復元できます。A user can selectively restore few disks instead of the entire backed up set. こちらに記載されているように、必要なディスク LUN をパラメーターとして指定し、セット全体ではなく、それらのディスクのみを復元します。Provide the required disk LUNs as parameter to only restore them instead of the entire set as documented here.

重要

ディスクを選択的に復元するには、ディスクを選択的にバックアップする必要があります。One has to selectively back up disks to selectively restore disks. 詳細については、こちらをご覧ください。More details are provided here.

ディスクを復元したら、次のセクションに移動して VM を作成します。Once you restore the disks, go to the next section to create the VM.

Azure VM でディスクを置き換えるReplace disks in Azure VM

ディスクと構成情報を置き換えるには、次の手順を行います。To replace the disks and configuration information, perform the following steps:

復元されたディスクからの VM の作成Create a VM from restored disks

ディスクを復元したら、次の手順でディスクから仮想マシンを作成し、構成します。After you restore the disks, use the following steps to create and configure the virtual machine from disk.

注意

  1. AzureAz モジュール 3.0.0 以上が必要です。AzureAz module 3.0.0 or higher is required.
  2. 復元されたディスクから暗号化された VM を作成するには、Azure のロールに Microsoft.KeyVault/vaults/deploy/action の実行が許可されている必要があります。To create encrypted VMs from restored disks, your Azure role must have permission to perform the action, Microsoft.KeyVault/vaults/deploy/action. ロールにこのアクセス許可がない場合は、この操作でカスタム ロールを作成します。If your role doesn't have this permission, create a custom role with this action. 詳細については、「Azure カスタム ロール」を参照してください。For more information, see Azure custom roles.
  3. ディスクを復元した後、新しい VM の作成に直接使用できるデプロイ テンプレートを取得できます。After restoring disks, you can now get a deployment template which you can directly use to create a new VM. 暗号化された/暗号化されていないマネージド/アンマネージド VM を作成するための別の PowerShell コマンドレットは必要ありません。YOu don't need different PowerShell cmdlets to create managed/unmanaged VMs which are encrypted/unencrypted.

デプロイ テンプレートを使用して VM を作成するCreate a VM using the deployment template

結果のジョブの詳細には、クエリを実行してデプロイできるテンプレート URI が示されます。The resultant job details give the template URI that can be queried and deployed.

   $properties = $details.properties
   $storageAccountName = $properties["Target Storage Account Name"]
   $containerName = $properties["Config Blob Container Name"]
   $templateBlobURI = $properties["Template Blob Uri"]

テンプレートは、顧客のストレージ アカウントと指定されたコンテナーの下にあるため、直接アクセスすることはできません。The template isn't directly accessible since it's under a customer's storage account and the given container. このテンプレートにアクセスするには (一時的な SAS トークンと共に) 完全な URL が必要です。We need the complete URL (along with a temporary SAS token) to access this template.

  1. 最初に、templateBlobURI からテンプレート名を抽出します。First extract the template name from the templateBlobURI. その形式を次に示します。The format is mentioned below. PowerShell の分割操作を使用して、この URL から最終的なテンプレート名を抽出できます。You can use the split operation in PowerShell to extract the final template name from this URL.

    https://<storageAccountName.blob.core.windows.net>/<containerName>/<templateName>
    
  2. 次に、ここの説明に従って完全な URL を生成できます。Then the full URL can be generated as explained here.

    Set-AzCurrentStorageAccount -Name $storageAccountName -ResourceGroupName <StorageAccount RG name>
    $templateBlobFullURI = New-AzStorageBlobSASToken -Container $containerName -Blob <templateName> -Permission r -FullUri
    
  3. ここの説明に従って、テンプレートをデプロイして新しい VM を作成します。Deploy the template to create a new VM as explained here.

    New-AzResourceGroupDeployment -Name ExampleDeployment ResourceGroupName ExampleResourceGroup -TemplateUri $templateBlobFullURI -storageAccountType Standard_GRS
    

構成ファイルを使用して VM を作成するCreate a VM using the config file

次のセクションでは、"VMConfig" ファイルを使用して VM を作成するために必要な手順を示します。The following section lists steps necessary to create a VM using "VMConfig" file.

注意

VM を作成するには、上記で詳しく説明したデプロイ テンプレートを使用することを強くお勧めします。It's highly recommended to use the deployment template detailed above to create a VM. このセクション (ポイント 1 ~ 6) は、まもなく非推奨となる予定です。This section (Points 1-6) will be deprecated soon.

  1. 復元されたディスクのプロパティに対し、ジョブの詳細を照会します。Query the restored disk properties for the job details.

    $properties = $details.properties
    $storageAccountName = $properties["Target Storage Account Name"]
    $containerName = $properties["Config Blob Container Name"]
    $configBlobName = $properties["Config Blob Name"]
    
  2. Azure Storage コンテキストを設定し、JSON 構成ファイルを復元します。Set the Azure storage context and restore the JSON configuration file.

    Set-AzCurrentStorageAccount -Name $storageaccountname -ResourceGroupName "testvault"
    $destination_path = "C:\vmconfig.json"
    Get-AzStorageBlobContent -Container $containerName -Blob $configBlobName -Destination $destination_path
    $obj = ((Get-Content -Path $destination_path -Raw -Encoding Unicode)).TrimEnd([char]0x00) | ConvertFrom-Json
    
  3. JSON 構成ファイルを使用して VM 構成を作成します。Use the JSON configuration file to create the VM configuration.

    $vm = New-AzVMConfig -VMSize $obj.'properties.hardwareProfile'.vmSize -VMName "testrestore"
    
  4. OS ディスクとデータ ディスクを接続します。Attach the OS disk and data disks. この手順では、さまざまな管理対象/暗号化 VM 構成の例を提示します。This step provides examples for various managed and encrypted VM configurations. 自分の VM 構成に最適なサンプルを利用してください。Use the example that suits your VM configuration.

    • 管理対象外の暗号化されていない VM - 管理対象外の暗号化されていない VM には、次のサンプルを使用します。Non-managed and non-encrypted VMs - Use the following sample for non-managed, non-encrypted VMs.
        Set-AzVMOSDisk -VM $vm -Name "osdisk" -VhdUri $obj.'properties.StorageProfile'.osDisk.vhd.Uri -CreateOption "Attach"
        $vm.StorageProfile.OsDisk.OsType = $obj.'properties.StorageProfile'.OsDisk.OsType
        foreach($dd in $obj.'properties.StorageProfile'.DataDisks)
        {
            $vm = Add-AzVMDataDisk -VM $vm -Name "datadisk1" -VhdUri $dd.vhd.Uri -DiskSizeInGB 127 -Lun $dd.Lun -CreateOption "Attach"
        }
    
    • 管理対象外の Azure AD を使用して暗号化された VM (BEK のみ) - 管理対象外の Azure AD を使用して暗号化された VM (BEK のみを使用して暗号化) では、ディスクをアタッチする前に、キー コンテナーにシークレットを復元する必要があります。Non-managed and encrypted VMs with Azure AD (BEK only) - For non-managed, encrypted VMs with Azure AD (encrypted using BEK only), you need to restore the secret to the key vault before you can attach disks. 詳細については、Azure Backup 復旧ポイントから暗号化された仮想マシンの復元に関する記事を参照してください。For more information, see the Restore an encrypted virtual machine from an Azure Backup recovery point. 次の例では、暗号化された VM の OS とデータ ディスクをアタッチする方法を示します。The following sample shows how to attach OS and data disks for encrypted VMs. OS ディスクの設定時には、関連する OS の種類が示されていることを確認してください。When setting the OS disk, make sure to mention the relevant OS type.
        $dekUrl = "https://ContosoKeyVault.vault.azure.net:443/secrets/ContosoSecret007/xx000000xx0849999f3xx30000003163"
        $dekUrl = "/subscriptions/abcdedf007-4xyz-1a2b-0000-12a2b345675c/resourceGroups/ContosoRG108/providers/Microsoft.KeyVault/vaults/ContosoKeyVault"
        Set-AzVMOSDisk -VM $vm -Name "osdisk" -VhdUri $obj.'properties.storageProfile'.osDisk.vhd.uri -DiskEncryptionKeyUrl $dekUrl -DiskEncryptionKeyVaultId $keyVaultId -CreateOption "Attach" -Windows/Linux
        $vm.StorageProfile.OsDisk.OsType = $obj.'properties.storageProfile'.osDisk.osType
        foreach($dd in $obj.'properties.storageProfile'.dataDisks)
        {
        $vm = Add-AzVMDataDisk -VM $vm -Name "datadisk1" -VhdUri $dd.vhd.Uri -DiskSizeInGB 127 -Lun $dd.Lun -CreateOption "Attach"
        }
    
    • 管理対象外の Azure AD を使用して暗号化された VM (BEK と KEK) - 管理対象外の Azure AD を使用して暗号化された VM (BEK と KEK を使用して暗号化) では、ディスクをアタッチする前に、キー コンテナーにキーとシークレットを復元します。Non-managed and encrypted VMs with Azure AD (BEK and KEK) - For non-managed, encrypted VMs with Azure AD (encrypted using BEK and KEK), restore the key and secret to the key vault before attaching the disks. 詳細については、Azure Backup 復旧ポイントから暗号化された仮想マシンの復元に関する記事を参照してください。For more information, see Restore an encrypted virtual machine from an Azure Backup recovery point. 次の例では、暗号化された VM の OS とデータ ディスクをアタッチする方法を示します。The following sample shows how to attach OS and data disks for encrypted VMs.
        $dekUrl = "https://ContosoKeyVault.vault.azure.net:443/secrets/ContosoSecret007/xx000000xx0849999f3xx30000003163"
        $kekUrl = "https://ContosoKeyVault.vault.azure.net:443/keys/ContosoKey007/x9xxx00000x0000x9b9949999xx0x006"
        $keyVaultId = "/subscriptions/abcdedf007-4xyz-1a2b-0000-12a2b345675c/resourceGroups/ContosoRG108/providers/Microsoft.KeyVault/vaults/ContosoKeyVault"
        Set-AzVMOSDisk -VM $vm -Name "osdisk" -VhdUri $obj.'properties.storageProfile'.osDisk.vhd.uri -DiskEncryptionKeyUrl $dekUrl -DiskEncryptionKeyVaultId $keyVaultId -KeyEncryptionKeyUrl $kekUrl -KeyEncryptionKeyVaultId $keyVaultId -CreateOption "Attach" -Windows
        $vm.StorageProfile.OsDisk.OsType = $obj.'properties.storageProfile'.osDisk.osType
        foreach($dd in $obj.'properties.storageProfile'.dataDisks)
        {
        $vm = Add-AzVMDataDisk -VM $vm -Name "datadisk1" -VhdUri $dd.vhd.Uri -DiskSizeInGB 127 -Lun $dd.Lun -CreateOption "Attach"
        }
    
    • 管理対象外の Azure AD を使用して暗号化された VM (BEK のみ) - 管理対象外の Azure AD を使用して暗号化された VM (BEK のみを使用して暗号化) では、元の keyVault/シークレットを使用できない 場合、Azure Backup 復旧ポイントから暗号化された仮想マシンの復元に関する記事にある手順に従って、シークレットをキー コンテナーに復元します。Non-managed and encrypted VMs without Azure AD (BEK only) - For non-managed, encrypted VMs without Azure AD (encrypted using BEK only), if source keyVault/secret are not available restore the secrets to key vault using the procedure in Restore an non-encrypted virtual machine from an Azure Backup recovery point. 次のスクリプトを実行して、復元された OS BLOB に暗号化の詳細を設定します (この手順はデータ BLOB には必要ありません)。Then execute the following scripts to set encryption details on the restored OS blob (this step isn't required for a data blob). 復元された keyVault から $dekurl をフェッチすることができます。The $dekurl can be fetched from the restored keyVault.

    次のスクリプトは、元の keyVault とシークレットを利用できない場合にのみ実行する必要があります。The following script needs to be executed only when the source keyVault/secret isn't available.

        $dekUrl = "https://ContosoKeyVault.vault.azure.net/secrets/ContosoSecret007/xx000000xx0849999f3xx30000003163"
        $keyVaultId = "/subscriptions/abcdedf007-4xyz-1a2b-0000-12a2b345675c/resourceGroups/ContosoRG108/providers/Microsoft.KeyVault/vaults/ContosoKeyVault"
        $encSetting = "{""encryptionEnabled"":true,""encryptionSettings"":[{""diskEncryptionKey"":{""sourceVault"":{""id"":""$keyVaultId""},""secretUrl"":""$dekUrl""}}]}"
        $osBlobName = $obj.'properties.StorageProfile'.osDisk.name + ".vhd"
        $osBlob = Get-AzStorageBlob -Container $containerName -Blob $osBlobName
        $osBlob.ICloudBlob.Metadata["DiskEncryptionSettings"] = $encSetting
        $osBlob.ICloudBlob.SetMetadata()
    

    シークレットが使用できる ようになり、暗号化の詳細も OS BLOB に設定されたら、次のスクリプトを使用してディスクをアタッチします。After the secrets are available and the encryption details are also set on the OS Blob, attach the disks using the script given below.

    元の keyVault とシークレットが利用できる場合、上記のスクリプトを実行する必要はありません。If the source keyVault/secrets are available already, then the script above need not be executed.

        Set-AzVMOSDisk -VM $vm -Name "osdisk" -VhdUri $obj.'properties.StorageProfile'.osDisk.vhd.Uri -CreateOption "Attach"
        $vm.StorageProfile.OsDisk.OsType = $obj.'properties.StorageProfile'.OsDisk.OsType
        foreach($dd in $obj.'properties.StorageProfile'.DataDisks)
        {
        $vm = Add-AzVMDataDisk -VM $vm -Name "datadisk1" -VhdUri $dd.vhd.Uri -DiskSizeInGB 127 -Lun $dd.Lun -CreateOption "Attach"
        }
    
    • 管理対象外の Azure AD を使用して暗号化された VM (BEK および KEK) - 管理対象外の Azure AD を使用して暗号化された VM (BEK および KEK を使用して暗号化) では、元の keyVault/キー/シークレットを使用できない 場合、Azure Backup 復旧ポイントから暗号化された仮想マシンの復元に関する記事にある手順に従って、キーとシークレットをキー コンテナーに復元します。Non-managed and encrypted VMs without Azure AD (BEK and KEK) - For non-managed, encrypted VMs without Azure AD (encrypted using BEK & KEK), if source keyVault/key/secret are not available restore the key and secrets to key vault using the procedure in Restore an non-encrypted virtual machine from an Azure Backup recovery point. 次のスクリプトを実行して、復元された OS BLOB に暗号化の詳細を設定します (この手順はデータ BLOB には必要ありません)。Then execute the following scripts to set encryption details on the restored OS blob (this step isn't required for a data blob). 復元された keyVault から $dekurl と $kekurl をフェッチすることができます。The $dekurl and $kekurl can be fetched from the restored keyVault.

    次のスクリプトは、元の keyVault、キー、シークレットを利用できない場合にのみ実行する必要があります。The script below needs to be executed only when the source keyVault/key/secret isn't available.

        $dekUrl = "https://ContosoKeyVault.vault.azure.net/secrets/ContosoSecret007/xx000000xx0849999f3xx30000003163"
        $kekUrl = "https://ContosoKeyVault.vault.azure.net/keys/ContosoKey007/x9xxx00000x0000x9b9949999xx0x006"
        $keyVaultId = "/subscriptions/abcdedf007-4xyz-1a2b-0000-12a2b345675c/resourceGroups/ContosoRG108/providers/Microsoft.KeyVault/vaults/ContosoKeyVault"
        $encSetting = "{""encryptionEnabled"":true,""encryptionSettings"":[{""diskEncryptionKey"":{""sourceVault"":{""id"":""$keyVaultId""},""secretUrl"":""$dekUrl""},""keyEncryptionKey"":{""sourceVault"":{""id"":""$keyVaultId""},""keyUrl"":""$kekUrl""}}]}"
        $osBlobName = $obj.'properties.StorageProfile'.osDisk.name + ".vhd"
        $osBlob = Get-AzStorageBlob -Container $containerName -Blob $osBlobName
        $osBlob.ICloudBlob.Metadata["DiskEncryptionSettings"] = $encSetting
        $osBlob.ICloudBlob.SetMetadata()
    

    キー/シークレットが使用できる ようになり、暗号化の詳細が OS BLOB に設定されたら、次のスクリプトを使用してディスクをアタッチします。After the key/secrets are available and the encryption details are set on the OS Blob, attach the disks using the script given below.

    元の keyVault、キー、シークレットが利用できる場合、上記のスクリプトを実行する必要はありません。If the source keyVault/key/secrets are available, then the script above need not be executed.

        Set-AzVMOSDisk -VM $vm -Name "osdisk" -VhdUri $obj.'properties.StorageProfile'.osDisk.vhd.Uri -CreateOption "Attach"
        $vm.StorageProfile.OsDisk.OsType = $obj.'properties.StorageProfile'.OsDisk.OsType
        foreach($dd in $obj.'properties.StorageProfile'.DataDisks)
        {
        $vm = Add-AzVMDataDisk -VM $vm -Name "datadisk1" -VhdUri $dd.vhd.Uri -DiskSizeInGB 127 -Lun $dd.Lun -CreateOption "Attach"
        }
    
    • 管理対象の暗号化されていない VM - 管理対象の暗号化されていない VM では、復元されたマネージド ディスクをアタッチします。Managed and non-encrypted VMs - For managed non-encrypted VMs, attach the restored managed disks. 詳細については、PowerShell を使用して Windows VM にデータ ディスクを接続するに関する記事を参照してください。For in-depth information, see Attach a data disk to a Windows VM using PowerShell.

    • 管理対象の Azure AD を使用して暗号化された VM (BEK のみ) - 管理対象の Azure AD を使用して暗号化された VM (BEK のみを使用して暗号化) では、復元されたマネージド ディスクをアタッチします。Managed and encrypted VMs with Azure AD (BEK only) - For managed encrypted VMs with Azure AD (encrypted using BEK only), attach the restored managed disks. 詳細については、PowerShell を使用して Windows VM にデータ ディスクを接続するに関する記事を参照してください。For in-depth information, see Attach a data disk to a Windows VM using PowerShell.

    • 管理対象の Azure AD を使用して暗号化された VM (BEK および KEK) - 管理対象の Azure AD を使用して暗号化された VM (BEK および KEK を使用して暗号化) では、復元されたマネージド ディスクをアタッチします。Managed and encrypted VMs with Azure AD (BEK and KEK) - For managed encrypted VMs with Azure AD (encrypted using BEK and KEK), attach the restored managed disks. 詳細については、PowerShell を使用して Windows VM にデータ ディスクを接続するに関する記事を参照してください。For in-depth information, see Attach a data disk to a Windows VM using PowerShell.

    • 管理対象の Azure AD を使用して暗号化された VM (BEK のみ) - 管理対象の Azure AD を使用して暗号化された VM (BEK のみを使用して暗号化) では、元の keyVault/シークレットを使用できない 場合、Azure Backup 復旧ポイントから暗号化された仮想マシンの復元に関する記事にある手順に従って、シークレットをキー コンテナーに復元します。Managed and encrypted VMs without Azure AD (BEK only) -For managed, encrypted VMs without Azure AD (encrypted using BEK only), if source keyVault/secret are not available restore the secrets to key vault using the procedure in Restore an non-encrypted virtual machine from an Azure Backup recovery point. 次のスクリプトを実行して、復元された OS ディスクに暗号化の詳細を設定します (この手順はデータディスクには必要ありません)。Then execute the following scripts to set encryption details on the restored OS disk (this step isn't required for a data disk). 復元された keyVault から $dekurl をフェッチすることができます。The $dekurl can be fetched from the restored keyVault.

    次のスクリプトは、元の keyVault とシークレットを利用できない場合にのみ実行する必要があります。The script below needs to be executed only when the source keyVault/secret isn't available.

    $dekUrl = "https://ContosoKeyVault.vault.azure.net/secrets/ContosoSecret007/xx000000xx0849999f3xx30000003163"
    $keyVaultId = "/subscriptions/abcdedf007-4xyz-1a2b-0000-12a2b345675c/resourceGroups/ContosoRG108/providers/Microsoft.KeyVault/vaults/ContosoKeyVault"
    $diskupdateconfig = New-AzDiskUpdateConfig -EncryptionSettingsEnabled $true
    $encryptionSettingsElement = New-Object Microsoft.Azure.Management.Compute.Models.EncryptionSettingsElement
    $encryptionSettingsElement.DiskEncryptionKey = New-Object Microsoft.Azure.Management.Compute.Models.KeyVaultAndSecretReference
    $encryptionSettingsElement.DiskEncryptionKey.SourceVault = New-Object Microsoft.Azure.Management.Compute.Models.SourceVault
    $encryptionSettingsElement.DiskEncryptionKey.SourceVault.Id = $keyVaultId
    $encryptionSettingsElement.DiskEncryptionKey.SecretUrl = $dekUrl
    $diskupdateconfig.EncryptionSettingsCollection.EncryptionSettings = New-Object System.Collections.Generic.List[Microsoft.Azure.Management.Compute.Models.EncryptionSettingsElement]
    $diskupdateconfig.EncryptionSettingsCollection.EncryptionSettings.Add($encryptionSettingsElement)
    $diskupdateconfig.EncryptionSettingsCollection.EncryptionSettingsVersion = "1.1"
    Update-AzDisk -ResourceGroupName "testvault" -DiskName $obj.'properties.StorageProfile'.osDisk.name -DiskUpdate $diskupdateconfig
    

    シークレットが使用できるようになり、暗号化の詳細が OS ディスクに設定されたら、「PowerShell を使用して Windows VM にデータ ディスクを接続する」を参照して、復元されたマネージド ディスクをアタッチします。After the secrets are available and the encryption details are set on the OS disk, to attach the restored managed disks, see Attach a data disk to a Windows VM using PowerShell.

    • 管理対象の Azure AD を使用して暗号化された VM (BEK および KEK) - 管理対象の Azure AD を使用して暗号化された VM (BEK および KEK を使用して暗号化) では、元の keyVault/キー/シークレットを使用できない 場合、Azure Backup 復旧ポイントから暗号化された仮想マシンの復元に関する記事にある手順に従って、キーとシークレットをキー コンテナーに復元します。Managed and encrypted VMs without Azure AD (BEK and KEK) - For managed, encrypted VMs without Azure AD (encrypted using BEK & KEK), if source keyVault/key/secret are not available restore the key and secrets to key vault using the procedure in Restore an non-encrypted virtual machine from an Azure Backup recovery point. その後、次のスクリプトを実行して、復元された OS ディスクに暗号化の詳細を設定します (この手順はデータ ディスクには必要ありません)。Then execute the following scripts to set encryption details on the restored OS disk (this step isn't required for data disks). 復元された keyVault から $dekurl と $kekurl をフェッチすることができます。The $dekurl and $kekurl can be fetched from the restored keyVault.

    次のスクリプトは、元の keyVault、キー、シークレットを利用できない場合にのみ実行する必要があります。The following script needs to be executed only when the source keyVault/key/secret isn't available.

    $dekUrl = "https://ContosoKeyVault.vault.azure.net/secrets/ContosoSecret007/xx000000xx0849999f3xx30000003163"
    $kekUrl = "https://ContosoKeyVault.vault.azure.net/keys/ContosoKey007/x9xxx00000x0000x9b9949999xx0x006"
    $keyVaultId = "/subscriptions/abcdedf007-4xyz-1a2b-0000-12a2b345675c/resourceGroups/ContosoRG108/providers/Microsoft.KeyVault/vaults/ContosoKeyVault"
    $diskupdateconfig = New-AzDiskUpdateConfig -EncryptionSettingsEnabled $true
    $encryptionSettingsElement = New-Object Microsoft.Azure.Management.Compute.Models.EncryptionSettingsElement
    $encryptionSettingsElement.DiskEncryptionKey = New-Object Microsoft.Azure.Management.Compute.Models.KeyVaultAndSecretReference
    $encryptionSettingsElement.DiskEncryptionKey.SourceVault = New-Object Microsoft.Azure.Management.Compute.Models.SourceVault
    $encryptionSettingsElement.DiskEncryptionKey.SourceVault.Id = $keyVaultId
    $encryptionSettingsElement.DiskEncryptionKey.SecretUrl = $dekUrl
    $encryptionSettingsElement.KeyEncryptionKey = New-Object Microsoft.Azure.Management.Compute.Models.KeyVaultAndKeyReference
    $encryptionSettingsElement.KeyEncryptionKey.SourceVault = New-Object Microsoft.Azure.Management.Compute.Models.SourceVault
    $encryptionSettingsElement.KeyEncryptionKey.SourceVault.Id = $keyVaultId
    $encryptionSettingsElement.KeyEncryptionKey.KeyUrl = $kekUrl
    $diskupdateconfig.EncryptionSettingsCollection.EncryptionSettings = New-Object System.Collections.Generic.List[Microsoft.Azure.Management.Compute.Models.EncryptionSettingsElement]
    $diskupdateconfig.EncryptionSettingsCollection.EncryptionSettings.Add($encryptionSettingsElement)
    $diskupdateconfig.EncryptionSettingsCollection.EncryptionSettingsVersion = "1.1"
    Update-AzDisk -ResourceGroupName "testvault" -DiskName $obj.'properties.StorageProfile'.osDisk.name -DiskUpdate $diskupdateconfig
    

    キー/シークレットが使用できるようになり、暗号化の詳細が OS ディスクに設定されたら、「PowerShell を使用して Windows VM にデータ ディスクを接続する」を参照して、復元されたマネージド ディスクをアタッチします。After the key/secrets are available and the encryption details are set on the OS disk, to attach the restored managed disks, see Attach a data disk to a Windows VM using PowerShell.

  5. ネットワーク設定を設定します。Set the Network settings.

    $nicName="p1234"
    $pip = New-AzPublicIpAddress -Name $nicName -ResourceGroupName "test" -Location "WestUS" -AllocationMethod Dynamic
    $virtualNetwork = New-AzVirtualNetwork -ResourceGroupName "test" -Location "WestUS" -Name "testvNET" -AddressPrefix 10.0.0.0/16
    $virtualNetwork | Set-AzVirtualNetwork
    $vnet = Get-AzVirtualNetwork -Name "testvNET" -ResourceGroupName "test"
    $subnetindex=0
    $nic = New-AzNetworkInterface -Name $nicName -ResourceGroupName "test" -Location "WestUS" -SubnetId $vnet.Subnets[$subnetindex].Id -PublicIpAddressId $pip.Id
    $vm=Add-AzVMNetworkInterface -VM $vm -Id $nic.Id
    
  6. 仮想マシンを作成します。Create the virtual machine.

    New-AzVM -ResourceGroupName "test" -Location "WestUS" -VM $vm
    
  7. ADE 拡張子をプッシュします。Push ADE extension. ADE 拡張機能がプッシュされていない場合、データ ディスクは暗号化されていないとマークされるため、以下の手順を実行する必要があります。If the ADE extensions aren't pushed, then the data disks will be marked as unencrypted, so it's mandatory for the steps below to be executed:

    • Azure AD を使用した VM の場合 -データ ディスクの暗号化を手動で有効にするには、次のコマンドを使用します。For VM with Azure AD - Use the following command to manually enable encryption for the data disks

      BEK のみBEK only

      Set-AzVMDiskEncryptionExtension -ResourceGroupName $RG -VMName $vm.Name -AadClientID $aadClientID -AadClientSecret $aadClientSecret -DiskEncryptionKeyVaultUrl $dekUrl -DiskEncryptionKeyVaultId $keyVaultId -VolumeType Data
      

      BEK と KEKBEK and KEK

      Set-AzVMDiskEncryptionExtension -ResourceGroupName $RG -VMName $vm.Name -AadClientID $aadClientID -AadClientSecret $aadClientSecret -DiskEncryptionKeyVaultUrl $dekUrl -DiskEncryptionKeyVaultId $keyVaultId  -KeyEncryptionKeyUrl $kekUrl -KeyEncryptionKeyVaultId $keyVaultId -VolumeType Data
      
    • Azure AD を使用しない VM の場合 -データ ディスクの暗号化を手動で有効にするには、次のコマンドを使用します。For VM without Azure AD - Use the following command to manually enable encryption for the data disks.

      コマンドの実行中に AADClientID の入力を求められた場合、Azure PowerShell を更新する必要があります。If during the command execution it asks for AADClientID, then you need to update your Azure PowerShell.

      BEK のみBEK only

      Set-AzVMDiskEncryptionExtension -ResourceGroupName $RG -VMName $vm.Name -DiskEncryptionKeyVaultUrl $dekUrl -DiskEncryptionKeyVaultId $keyVaultId -SkipVmBackup -VolumeType "All"
      

      BEK と KEKBEK and KEK

      Set-AzVMDiskEncryptionExtension -ResourceGroupName $RG -VMName $vm.Name -DiskEncryptionKeyVaultUrl $dekUrl -DiskEncryptionKeyVaultId $keyVaultId -KeyEncryptionKeyUrl $kekUrl -KeyEncryptionKeyVaultId $keyVaultId -SkipVmBackup -VolumeType "All"
      

注意

暗号化された VM のディスク復元プロセスの一部として作成された JASON ファイルを手動で削除してください。Ensure to manually delete the JASON files created as part of encrypted VM restore disk process.

Azure VM バックアップからのファイルの復元Restore files from an Azure VM backup

Azure VM バックアップからは、ディスクを復元するだけでなく、個々のファイルを復元することもできます。In addition to restoring disks, you can also restore individual files from an Azure VM backup. ファイルの復元機能では、復旧ポイントのすべてのファイルにアクセスできます。The restore files functionality provides access to all files in a recovery point. 通常のファイルの場合と同様に、ファイル エクスプローラーを使用してファイルを管理します。Manage the files via File Explorer as you would for normal files.

Azure VM バックアップからファイルを復元する基本的な手順は次のとおりです。The basic steps to restore a file from an Azure VM backup are:

  • VM の選択Select the VM
  • 復元ポイントの選択Choose a recovery point
  • 復旧ポイントのディスクのマウントMount the disks of recovery point
  • 必要なファイルのコピーCopy the required files
  • ディスクのマウント解除Unmount the disk

VM を選択する (VM を復元する場合)Select the VM (when restoring the VM)

バックアップする正しいアイテムを特定する PowerShell オブジェクトを取得するには、資格情報コンテナー内のコンテナーから開始し、オブジェクト階層の上から下に進みます。To get the PowerShell object that identifies the right backup item, start from the container in the vault, and work your way down the object hierarchy. VM を表すコンテナーを選択するには、Get-AzRecoveryServicesBackupContainer コマンドレットを使用し、Get-AzRecoveryServicesBackupItem コマンドレットへのパイプとして使用します。To select the container that represents the VM, use the Get-AzRecoveryServicesBackupContainer cmdlet and pipe that to the Get-AzRecoveryServicesBackupItem cmdlet.

$namedContainer = Get-AzRecoveryServicesBackupContainer  -ContainerType "AzureVM" -Status "Registered" -FriendlyName "V2VM" -VaultId $targetVault.ID
$backupitem = Get-AzRecoveryServicesBackupItem -Container $namedContainer  -WorkloadType "AzureVM" -VaultId $targetVault.ID

回復ポイントを選択する (VM を復元する場合)Choose a recovery point (when restoring the VM)

Get-AzRecoveryServicesBackupRecoveryPoint コマンドレットを使用して、バックアップ項目のすべての復旧ポイントを一覧表示します。Use the Get-AzRecoveryServicesBackupRecoveryPoint cmdlet to list all recovery points for the backup item. その後、復元に使用する復旧ポイントを選択します。Then choose the recovery point to restore. 使用する復旧ポイントがわからない場合、一覧にある最新の RecoveryPointType = AppConsistent ポイントを選択することをお勧めします。If you're unsure which recovery point to use, it's a good practice to choose the most recent RecoveryPointType = AppConsistent point in the list.

次のスクリプトでは、 $rp 変数が、過去 7 日間に選択したバックアップ項目の復旧ポイントの配列になっています。In the following script, the variable, $rp, is an array of recovery points for the selected backup item, from the past seven days. この配列は時間の逆順で並べ替えられています。最新の復旧ポイントのインデックスは 0 です。The array is sorted in reverse order of time with the latest recovery point at index 0. 標準の PowerShell 配列のインデックスを使用して、復旧ポイントを選択します。Use standard PowerShell array indexing to pick the recovery point. 次の例では、$rp[0] は最新の復旧ポイントを選択します。In the example, $rp[0] selects the latest recovery point.

$startDate = (Get-Date).AddDays(-7)
$endDate = Get-Date
$rp = Get-AzRecoveryServicesBackupRecoveryPoint -Item $backupitem -StartDate $startdate.ToUniversalTime() -EndDate $enddate.ToUniversalTime() -VaultId $targetVault.ID
$rp[0]

出力は次の例のようになります。The output is similar to the following example:

RecoveryPointAdditionalInfo :
SourceVMStorageType         : NormalStorage
Name                        : 15260861925810
ItemName                    : VM;iaasvmcontainer;RGName1;V2VM
RecoveryPointId             : /subscriptions/XX/resourceGroups/ RGName1/providers/Microsoft.RecoveryServices/vaults/testvault/backupFabrics/Azure/protectionContainers/IaasVMContainer;iaasvmcontainer;RGName1;V2VM/protectedItems/VM;iaasvmcontainer; RGName1;V2VM/recoveryPoints/15260861925810
RecoveryPointType           : AppConsistent
RecoveryPointTime           : 4/23/2016 5:02:04 PM
WorkloadType                : AzureVM
ContainerName               : IaasVMContainer;iaasvmcontainer; RGName1;V2VM
ContainerType               : AzureVM
BackupManagementType        : AzureVM

復旧ポイントのディスクのマウントMount the disks of recovery point

Get-AzRecoveryServicesBackupRPMountScript コマンドレットを使用して、スクリプトで復旧ポイントのすべてのディスクをマウントします。Use the Get-AzRecoveryServicesBackupRPMountScript cmdlet to get the script to mount all the disks of the recovery point.

注意

ディスクは、iSCSI に接続されたディスクとして、スクリプトが実行されているマシンにマウントされます。The disks are mounted as iSCSI attached disks to the machine where the script is run. マウントはすぐに行われます。課金は発生しません。Mounting occurs immediately, and you don't incur any charges.

Get-AzRecoveryServicesBackupRPMountScript -RecoveryPoint $rp[0] -VaultId $targetVault.ID

出力は次の例のようになります。The output is similar to the following example:

OsType  Password        Filename
------  --------        --------
Windows e3632984e51f496 V2VM_wus2_8287309959960546283_451516692429_cbd6061f7fc543c489f1974d33659fed07a6e0c2e08740.exe

ファイルの回復先となるマシンでこのスクリプトを実行します。Run the script on the machine where you want to recover the files. スクリプトを実行するには、与えられたパスワードを入力する必要があります。To execute the script, you must enter the password provided. ディスクが接続されたら、エクスプローラーを使用し、新しいボリュームとファイルを参照します。After the disks are attached, use Windows File Explorer to browse the new volumes and files. 詳細については、「Azure 仮想マシンのバックアップからファイルを回復する」というバックアップに関する記事を参照してください。For more information, see the Backup article, Recover files from Azure virtual machine backup.

ディスクのマウント解除Unmount the disks

必要なファイルがコピーされたら、Disable-AzRecoveryServicesBackupRPMountScript を使用してディスクのマウントを解除します。After the required files are copied, use Disable-AzRecoveryServicesBackupRPMountScript to unmount the disks. 復旧ポイントのファイルへのアクセスが削除されるように、必ずディスクのマウントを解除してください。Be sure to unmount the disks so access to the files of the recovery point is removed.

Disable-AzRecoveryServicesBackupRPMountScript -RecoveryPoint $rp[0] -VaultId $targetVault.ID

次のステップNext steps

PowerShell を使用して Azure リソースを操作する場合は、Windows Server のバックアップのデプロイと管理に関する PowerShell の記事をご覧ください。If you prefer to use PowerShell to engage with your Azure resources, see the PowerShell article, Deploy and Manage Backup for Windows Server. DPM バックアップを管理する場合は、記事「DPM 用の Backup のデプロイと管理」を参照してください。If you manage DPM backups, see the article, Deploy and Manage Backup for DPM.