次の方法で共有


Azure Stack Hub のバックアップ

この記事では、Azure Stack Hub でオンデマンド バックアップを実行する方法について説明します。 PowerShell 環境の構成の詳細については、「 Azure Stack Hub 用の PowerShell のインストール」を参照してください。 Azure Stack Hub にサインインするには、「Azure Stack Hub で管理者ポータルを使用する」を参照してください。

Azure Stack Hub のバックアップを開始する

ジョブの進行状況を追跡せずに新しいバックアップを開始する

Start-AzSBackupを使用して、ジョブの進行状況を追跡せず、すぐに新しいバックアップを開始します。

Start-AzsBackup -Force

ジョブの進行状況を追跡して Azure Stack Hub のバックアップを開始する

Start-AzSBackupを使用して、'-AsJob パラメーターを使用して新しいバックアップを開始し、それを変数として保存してバックアップ ジョブの進行状況を追跡します。

バックアップ ジョブは、ジョブが完了する約 10 から 15 分前に、正常に完了したことがポータルに表示されます。

実際の状態は、次のコードを使用して確認することをお勧めします。

Von Bedeutung

コードが高速すぎてジョブを正しく登録できないため、最初の 1 ミリ秒の遅延が発生し、 PSBeginTime またはジョブの 状態 が返されません。

$BackupJob = Start-AzsBackup -Force -AsJob
While (!$BackupJob.PSBeginTime) {
    Start-Sleep -Milliseconds 1
}
Write-Host "Start time: $($BackupJob.PSBeginTime)"
While ($BackupJob.State -eq "Running") {
    Write-Host "Job is currently: $($BackupJob.State) - Duration: $((New-TimeSpan -Start ($BackupJob.PSBeginTime) -End (Get-Date)).ToString().Split(".")[0])"
    Start-Sleep -Seconds 30
}

If ($BackupJob.State -eq "Completed") {
    Get-AzsBackup | Where-Object {$_.BackupId -eq $BackupJob.Output.BackupId}
    $Duration = $BackupJob.Output.TimeTakenToCreate
    $Pattern = '^P?T?((?<Years>\d+)Y)?((?<Months>\d+)M)?((?<Weeks>\d+)W)?((?<Days>\d+)D)?(T((?<Hours>\d+)H)?((?<Minutes>\d+)M)?((?<Seconds>\d*(\.)?\d*)S)?)$'
    If ($Duration -match $Pattern) {
        If (!$Matches.ContainsKey("Hours")) {
            $Hours = ""
        } 
        Else {
            $Hours = ($Matches.Hours).ToString + 'h '
        }
        $Minutes = ($Matches.Minutes)
        $Seconds = [math]::round(($Matches.Seconds))
        $Runtime = '{0}{1:00}m {2:00}s' -f $Hours, $Minutes, $Seconds
    }
    Write-Host "BackupJob: $($BackupJob.Output.BackupId) - Completed with Status: $($BackupJob.Output.Status) - It took: $($Runtime) to run" -ForegroundColor Green
}
ElseIf ($BackupJob.State -ne "Completed") {
    $BackupJob
    $BackupJob.Output
}

バックアップが完了したことを確認する

PowerShell を使用してバックアップが完了したことを確認する

次の PowerShell コマンドを使用して、バックアップが正常に完了したことを確認します。

Get-AzsBackup

結果は次の出力のようになります。

BackupDataVersion : 1.0.1
BackupId          : <backup ID>
RoleStatus        : {NRP, SRP, CRP, KeyVaultInternalControlPlane...}
Status            : Succeeded
CreatedDateTime   : 7/6/2018 6:46:24 AM
TimeTakenToCreate : PT20M32.364138S
DeploymentID      : <deployment ID>
StampVersion      : 1.1807.0.41
OemVersion        : 
Id                : /subscriptions/<subscription ID>/resourceGroups/System.local/providers/Microsoft.Backup.Admin/backupLocations/local/backups/<backup ID>
Name              : local/<local name>
Type              : Microsoft.Backup.Admin/backupLocations/backups
Location          : local
Tags              : {}

管理者ポータルを使用してバックアップが完了したことを確認する

Azure Stack Hub 管理者ポータルを使用してバックアップが正常に完了したことを確認するには、次の手順に従います。

  1. Azure Stack Hub 管理者ポータルを開きます。
  2. [すべてのサービス] を選択し、管理 カテゴリ内で [>インフラストラクチャバックアップ] を選択します。 [Infrastructure backup](インフラストラクチャ バックアップ) ブレードで [構成] を選択します。
  3. [利用可能なバックアップ] リストから、バックアップの [名前][完了日] を見つけます。
  4. [状態][成功] であることを確認します。

次のステップ

データ損失イベントから回復するためのワークフローの詳細について説明します。