Repair-SCVirtualMachine
修复处于失败状态的虚拟机。
语法
Repair-SCVirtualMachine
[-VM] <VM>
[-Dismiss]
[-Force]
[-RunAsynchronously]
[-PROTipID <Guid>]
[-JobVariable <String>]
[-OnBehalfOfUser <String>]
[-OnBehalfOfUserRole <UserRole>]
[<CommonParameters>]
Repair-SCVirtualMachine
[-VM] <VM>
[-Undo]
[-RunAsynchronously]
[-PROTipID <Guid>]
[-JobVariable <String>]
[-OnBehalfOfUser <String>]
[-OnBehalfOfUserRole <UserRole>]
[<CommonParameters>]
Repair-SCVirtualMachine
[-VM] <VM>
[-Retry]
[-RunAsynchronously]
[-PROTipID <Guid>]
[-JobVariable <String>]
[-OnBehalfOfUser <String>]
[-OnBehalfOfUserRole <UserRole>]
[<CommonParameters>]
Repair-SCVirtualMachine
[-VM] <VM>
[-Agent]
[-RunAsynchronously]
[-PROTipID <Guid>]
[-JobVariable <String>]
[-OnBehalfOfUser <String>]
[-OnBehalfOfUserRole <UserRole>]
[<CommonParameters>]
Repair-SCVirtualMachine
[-VM] <VM>
[-MigrateDBOnlyVM]
-VMHost <Host>
[-RunAsynchronously]
[-PROTipID <Guid>]
[-JobVariable <String>]
[-OnBehalfOfUser <String>]
[-OnBehalfOfUserRole <UserRole>]
[<CommonParameters>]
说明
Repair-SCVirtualMachine cmdlet 修复处于虚拟机管理器(VMM)托管的主机上失败状态的虚拟机。 虚拟机可以处于以下失败状态之一:
- 创建失败
- 迁移失败
- 更新失败
- 删除失败
可以使用此命令修复故障,如下所示:
- 重试。 尝试再次执行失败的作业。
- 撤消。 尝试撤消对虚拟机所做的任何更改,并将其还原到正常状态。 例如,如果 Move-SCVirtualMachine 作业失败,撤消会尝试将虚拟机移回其以前的主机。
- 解雇。 消除失败的作业,并根据虚拟机的当前状态更新虚拟机。 如果手动修复了故障,可以使用“关闭”选项刷新 VMM 数据库中虚拟机的数据。 但是,使用“消除”选项可能会将对象返回到失败状态。
运行此 cmdlet 时,一次只能指定一种类型的操作。
可以运行此 cmdlet 来修复作为服务一部分的虚拟机的来宾内代理,方法是使用 Agent 参数。
示例
示例 1:通过重试迁移任务修复失败的迁移任务
PS C:\> $VM = Get-SCVirtualMachine -Name "VM01"
PS C:\> Repair-SCVirtualMachine -VM $VM -Retry
第一个命令获取名为 VM01 的虚拟机对象,然后将该对象存储在$VM变量中。 在此示例中,你想要修复失败的移动操作。
第二个命令通过重启以前的失败迁移任务来修复存储在$VM中的虚拟机对象。
示例 2:修复或升级属于服务的指定虚拟机上的 VMM 来宾内代理
PS C:\> $VM = Get-SCVirtualMachine -Name "ServiceVM01"
PS C:\> $Creds = Get-Credential
PS C:\> Repair-SCVirtualMachine -VM $VM -Credential $Creds -Agent
第一个命令获取名为 ServiceVM01 的虚拟机对象,然后将该对象存储在$VM变量中。 在此示例中,虚拟机是服务的一部分。
第二个命令获取凭据对象,该对象必须是要修复的虚拟机上的本地管理员,然后将该对象存储在$Creds变量中。
第三个命令修复存储在$VM中的虚拟机对象上的来宾中代理。
参数
-Agent
指示此 cmdlet 会根据需要修复或升级 VMM 来宾内代理。
类型: | SwitchParameter |
Position: | Named |
默认值: | None |
必需: | True |
接受管道输入: | False |
接受通配符: | False |
-Dismiss
消除对象上的错误或服务实例上的更新通知。
关闭错误后,将刷新对象。 如果错误再次出现,刷新无法解决问题,必须修复错误。
类型: | SwitchParameter |
Position: | Named |
默认值: | None |
必需: | True |
接受管道输入: | False |
接受通配符: | False |
-Force
强制操作完成。
类型: | SwitchParameter |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-JobVariable
指定作业进度的变量的名称。
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-MigrateDBOnlyVM
指示此 cmdlet 使用 MigrateDBOnlyVM。
类型: | SwitchParameter |
Position: | Named |
默认值: | None |
必需: | True |
接受管道输入: | False |
接受通配符: | False |
-OnBehalfOfUser
指定用户名。 此 cmdlet 代表此参数指定的用户运行。
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-OnBehalfOfUserRole
指定用户角色。 若要获取用户角色,请使用 Get-SCUserRole cmdlet。 此 cmdlet 代表此参数指定的用户角色运行。
类型: | UserRole |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-PROTipID
指定触发此操作的性能和资源优化提示(PRO 提示)的 ID。 此参数允许你审核 PRO 提示。
类型: | Guid |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-Retry
指示此 cmdlet 在尝试成功完成该任务时重试虚拟机上失败的最后一个任务。
类型: | SwitchParameter |
Position: | Named |
默认值: | None |
必需: | True |
接受管道输入: | False |
接受通配符: | False |
-RunAsynchronously
指示作业以异步方式运行,以便控件立即返回到命令行界面。
类型: | SwitchParameter |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-Undo
指示此 cmdlet 取消在虚拟机上运行的最后一个作业,并撤消所做的任何更改。 仅当最近的作业失败时,此参数才可用。
类型: | SwitchParameter |
Position: | Named |
默认值: | None |
必需: | True |
接受管道输入: | False |
接受通配符: | False |
-VM
指定虚拟机对象。
类型: | VM |
Position: | 0 |
默认值: | None |
必需: | True |
接受管道输入: | True |
接受通配符: | False |
-VMHost
指定虚拟机主机对象。 VMM 支持 Hyper-V 主机、VMware ESX 主机和 Citrix XenServer 主机。 有关每种主机类型的详细信息,请参阅 Add-SCVMHost cmdlet。
类型: | Host |
Position: | Named |
默认值: | None |
必需: | True |
接受管道输入: | False |
接受通配符: | False |
输出
VirtualMachine
备注
- 此 cmdlet 需要虚拟机对象,可以使用 Get-SCVirtualMachine cmdlet 来检索该对象。