Condividi tramite


Repair-SCVirtualMachine

Ripristina una macchina virtuale in uno stato di errore.

Sintassi

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>]

Descrizione

Il cmdlet Repair-SCVirtualMachine ripristina una macchina virtuale in uno stato di errore in un host gestito da Virtual Machine Manager (VMM). Una macchina virtuale può trovarsi in uno dei tipi di stato di errore seguenti:

  • Creazione non riuscita
  • Migrazione non riuscita
  • Aggiornamento non riuscito
  • Eliminazione non riuscita

È possibile usare questo comando per correggere un errore nel modo seguente:

  • Ripetere. Prova a eseguire di nuovo il processo non riuscito.
  • Disfare. Provare a annullare le modifiche apportate alla macchina virtuale e ripristinarlo in uno stato integro. Ad esempio, se un processo di Move-SCVirtualMachine ha esito negativo, Annulla tenta di spostare nuovamente la macchina virtuale nell'host precedente.
  • Licenziare. Ignora il processo non riuscito e aggiorna la macchina virtuale in base allo stato corrente. Se si corregge manualmente un errore, è possibile usare l'opzione Ignora per aggiornare i dati per la macchina virtuale nel database VMM. Tuttavia, l'uso dell'opzione Ignora potrebbe restituire l'oggetto allo stato di errore.

Quando si esegue questo cmdlet, è possibile specificare un solo tipo di azione alla volta.

È possibile eseguire questo cmdlet per ripristinare un agente guest per una macchina virtuale che fa parte di un servizio usando il parametro Agent.

Esempio

Esempio 1: Ripristinare un'attività di migrazione non riuscita ritentando l'attività di migrazione

PS C:\> $VM = Get-SCVirtualMachine -Name "VM01"
PS C:\> Repair-SCVirtualMachine -VM $VM -Retry

Il primo comando ottiene l'oggetto macchina virtuale denominato VM01 e quindi archivia tale oggetto nella variabile $VM. In questo esempio si vuole ripristinare un'azione di spostamento non riuscita.

Il secondo comando ripristina l'oggetto macchina virtuale archiviato in $VM riavviando l'attività di migrazione non riuscita precedente.

Esempio 2: ripristinare o aggiornare l'agente guest VMM in una macchina virtuale specificata che fa parte di un servizio

PS C:\> $VM = Get-SCVirtualMachine -Name "ServiceVM01"
PS C:\> $Creds = Get-Credential
PS C:\> Repair-SCVirtualMachine -VM $VM -Credential $Creds -Agent

Il primo comando ottiene l'oggetto macchina virtuale denominato ServiceVM01 e quindi archivia tale oggetto nella variabile $VM. In questo esempio la macchina virtuale fa parte di un servizio.

Il secondo comando ottiene un oggetto credenziale, che deve essere un amministratore locale nella macchina virtuale da ripristinare e quindi archivia tale oggetto nella variabile $Creds.

Il terzo comando ripristina l'agente in-guest nell'oggetto macchina virtuale archiviato in $VM.

Parametri

-Agent

Indica che questo cmdlet ripristina o aggiorna l'agente in guest VMM, se applicabile.

Tipo:SwitchParameter
Posizione:Named
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-Dismiss

Ignora l'errore in un oggetto o in una notifica di aggiornamento in un'istanza del servizio.

Dopo aver ignorato un errore, l'oggetto viene aggiornato. Se l'errore viene visualizzato nuovamente, l'aggiornamento non risolve il problema ed è necessario correggere l'errore.

Tipo:SwitchParameter
Posizione:Named
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-Force

Forza il completamento dell'operazione.

Tipo:SwitchParameter
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-JobVariable

Specifica il nome di una variabile per lo stato del processo.

Tipo:String
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-MigrateDBOnlyVM

Indica che questo cmdlet usa MigrateDBOnlyVM.

Tipo:SwitchParameter
Posizione:Named
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-OnBehalfOfUser

Specifica un nome utente. Questo cmdlet opera per conto dell'utente specificato da questo parametro.

Tipo:String
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-OnBehalfOfUserRole

Specifica un ruolo utente. Per ottenere un ruolo utente, usare il cmdlet Get-SCUserRole . Questo cmdlet opera per conto del ruolo utente specificato da questo parametro.

Tipo:UserRole
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-PROTipID

Specifica l'ID del suggerimento per le prestazioni e l'ottimizzazione risorse (suggerimento PRO) che ha attivato questa azione. Questo parametro consente di controllare i suggerimenti pro.

Tipo:Guid
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-Retry

Indica che questo cmdlet ritenta l'ultima attività non riuscita nella macchina virtuale in un tentativo di completare correttamente l'attività.

Tipo:SwitchParameter
Posizione:Named
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-RunAsynchronously

Indica che il processo viene eseguito in modo asincrono in modo che il controllo torni immediatamente alla shell dei comandi.

Tipo:SwitchParameter
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-Undo

Indica che questo cmdlet annulla l'ultima esecuzione del processo nella macchina virtuale e inverte le modifiche apportate. Questo parametro è disponibile solo se il processo più recente non è riuscito.

Tipo:SwitchParameter
Posizione:Named
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-VM

Specifica un oggetto macchina virtuale.

Tipo:VM
Posizione:0
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:True
Accettare caratteri jolly:False

-VMHost

Specifica un oggetto host della macchina virtuale. VMM supporta Hyper-V host, host VMware ESX e host Citrix XenServer. Per altre informazioni su ogni tipo di host, vedere il cmdlet Add-SCVMHost.

Tipo:Host
Posizione:Named
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

Output

VirtualMachine

Note

  • Questo cmdlet richiede un oggetto macchina virtuale, che può essere recuperato usando il cmdlet Get-SCVirtualMachine.