在 Avamar Hyper-V 备份期间禁用和重新启用群集负载平衡
Summary: 本文提供有关停用和重新激活群集负载均衡的详细说明。这些过程对于 Avamar Hyper-V 弹性更改跟踪 (RCT) 备份非常有用。
Instructions
由于在 Avamar Hyper-V 备份期间虚拟机实时迁移,Avamar Hyper-V RCT 备份可能会失败:
avhypervvss Error < 43940 >: Failed to get the RCT extents for Virtual machine
或
avhypervvss Error <43426>: Checkpoint creation for Virtual machine 'AVAMARPROD01v<GUID>' has failed and will be skipped from backup.
如果 Hyper-V 虚拟机 (VM) 驻留在特定群集节点上,则会在备份期间将其添加到该节点的 vmgroup 中。如果 VM Live Migrate在备份期间迁移到其他群集节点,它将作为 vmgroup 成员存在于源节点上。在备份结束之前,Windows 操作系统会尝试删除 vmgroup。如果之前实时迁移的虚拟机不再在原始源节点上运行,则无法删除该节点的 vmgroup。这导致 vmgroup 处于孤立状态。
在备份期间,Hyper-V 插件程序无法阻止虚拟机的实时迁移。该解决方法使用 PowerShell 脚本在计划的备份作业窗口之前禁用群集负载平衡。下一步是创建 PowerShell 脚本,以便在备份作业完成后重新启用群集负载平衡。
可以使用集成的 Microsoft Task Scheduler 应用程序来计划这些脚本。
用于禁用然后重新启用群集负载平衡的脚本取决于客户环境中是否存在 System Center Virtual Machine Manager (SCVMM)。
计划 PowerShell 脚本以禁用群集负载平衡的步骤。
- 打开记事本 并将以下行复制到文档中:
环境中的 SCVMM
$HostGroup = Get-SCVMHostGroup "Hyper-V" $DOConfig = Get-SCDynamicOptimizationConfiguration -VMHostGroup $HostGroup Set-SCDynamicOptimizationConfiguration -DynamicOptimizationConfiguration $DOConfig -ManualMode
-
环境中没有 SCVMM
(Get-Cluster).AutoBalancerMode = 0
关闭 并 另存为 PowerShell 脚本文件,文件扩展名为“.ps1”。
例如,按如下所示命名此脚本,以便在 Avamar Hyper-V 计划备份作业之前禁用群集负载平衡。
Disable_loadbalancer.ps1
-
在其中一个 Hyper-V 群集节点上打开 任务计划程序 (启动>Windows 管理工具>任务计划程序)。
-
选择 Task Scheduler Library ,然后单击 Create Task 按钮:

-
命名任务 ,选择 选项运行(无论用户是否登录),然后启用 选项以最高权限运行:

-
在 “触发器 ”选项卡上,单击 “新建 ”,然后选择 “每日”选项。将计划的开始时间配置为 Avamar Hyper-V 计划备份作业开始的时间之前或同时:

例如,如果 Avamar 计划的备份在每天下午 5:30 开始,则计划 PowerShell 预脚本在下午 5 点运行。
-
在 操作 选项卡上,单击 新建 按钮。
- 在 “程序/脚本”字段中,键入 PowerShell
- 在“添加参数”字段中,键入 PowerShell 预脚本>>的 -File <<位置。
-File C:\Temp\Disable_LiveMigration.ps1

- 单击 “确定 ”按钮保存任务。
计划 PowerShell 脚本以重新启用群集负载平衡的步骤
- 打开记事本 并将以下行复制到文档中:
环境中的 SCVMM
$HostGroup = Get-SCVMHostGroup "Hyper-V" $DOConfig = Get-SCDynamicOptimizationConfiguration -VMHostGroup $HostGroup Set-SCDynamicOptimizationConfiguration -DynamicOptimizationConfiguration $DOConfig -AutomaticMode
环境中没有 SCVMM
(Get-Cluster).AutoBalancerMode = 2
- 关闭 并 另存为文件扩展名为“.ps1”的 PowerShell 脚本文件。
Reenable_loadbalancer.ps1
提醒:可能需要几天时间才能确定 Avamar Hyper-V 计划备份作业完成所需的时间。如果计划的备份从每天下午 5 点开始,到每天下午 6 点结束,则将 PowerShell 脚本的开始时间安排在下午 6:15。
使用上一部分中的相同步骤计划 PowerShell 脚本以重新启用群集负载平衡。
对于 PowerShell 脚本文件位置,请指定新创建的位置。
例如:
C:\Temp\Reenable_LiveMigration.ps1
