Save-SCVirtualMachine

Migriert einen virtuellen Computer, der auf einem Host zur VMM-Bibliothek bereitgestellt wird.

Syntax

Save-SCVirtualMachine
    [-VM] <VM>
    [-LibraryServer <LibraryServer>]
    [-UseLAN]
    [-SharePath <String>]
    [-RunAsynchronously]
    [-PROTipID <Guid>]
    [-JobVariable <String>]
    [-OnBehalfOfUser <String>]
    [-OnBehalfOfUserRole <UserRole>]
    [<CommonParameters>]

Beschreibung

Das Cmdlet Save-SCVirtualMachine migriert einen virtuellen Computer, der auf einem Host zur VMM-Bibliothek (Virtual Machine Manager) bereitgestellt wird.

Dadurch wird ein virtueller Computer in der VMM-Bibliothek mithilfe einer der folgenden Übertragungsmethoden gespeichert:

  • SAN-Übertragung (Fibre Channel, iSCSI oder NPIV). Wenn der Host- und Bibliotheksserver beide mit DEM SAN-Speicher verbunden sind, kann VMM eine SAN-Übertragung verwenden, um den virtuellen Computer in der Bibliothek zu speichern. Bei einer SAN-Übertragung werden die Ziel-LUNs vom Quellhost neu dem Zielbibliothekserver zugeordnet. Dieses Cmdlet hat keine Dateien verschoben. DIE SAN-Übertragung ist viel schneller als das Verschieben virtueller Computerdateien von einem Host in ein anderes über ein lokales Netzwerk (LAN). Eine NPIV-SAN-Übertragung kann in VMM verwendet werden, wenn ein Hostbusadapter (HBA) mit NPIV-Unterstützung verfügbar ist.
  • Netzwerkübertragung. Wenn keine schnellere Methode verfügbar ist, verwendet VMM eine Netzwerkübertragung, um die virtuellen Computerdateien vom Hostserver auf den Bibliotheksserver über das LAN zu verschieben, das die beiden Server verbindet. Geben Sie den Pfad der Freigabe in der Bibliothek an, um den virtuellen Computer als SharePath-Parameter zu speichern.

Dieses Cmdlet verwendet automatisch den schnellsten verfügbaren Transfertyp. Wenn Sie eine Netzwerkübertragung erzwingen möchten, geben Sie den UseLAN-Parameter an. Wenn der Hostserver und der Bibliotheksserver derselbe Server sind, schlägt der Befehl nicht fehl, wenn Sie UseLAN angeben, aber die Migration zur Bibliothek tritt schneller auf, wenn Sie diesen Parameter nicht verwenden.

Wenn eine virtuelle Maschine in der Bibliothek gespeichert ist, kann sie nicht gestartet werden. Bevor Sie den virtuellen Computer starten können, müssen Sie ihn mithilfe des Cmdlets Move-SCVirtualMachine in einen Host verschieben.

Beispiele

Beispiel 1: Speichern eines virtuellen Computers in der Bibliothek

PS C:\> $VM = Get-SCVirtualMachine -Name "VM01"
PS C:\> $LibServer = Get-SCLibraryServer -ComputerName "LibServer01"
PS C:\> Save-SCVirtualMachine -LibraryServer $LibServer -VM $VM -SharePath "\\LibServer01.Contoso.com\Library01\VMs"

Der erste Befehl ruft das virtuelle Computerobjekt namens VM01 ab und speichert dieses Objekt dann in der $VM Variablen.

Der zweite Befehl ruft das Bibliotheksserverobjekt namens LibServer01 ab und speichert dieses Objekt dann in der $Library Variablen.

Der letzte Befehl migriert VM01 von seinem Host und speichert ihn an den Speicherort \LibServer01.Contoso.com\Library01\VMs. Der Befehl verwendet automatisch den schnellsten verfügbaren Übertragungstyp.

Beispiel 2: Speichern eines virtuellen Computers in der Bibliothek asynchron

PS C:\> $VM = Get-SCVirtualMachine -Name "VM02"
PS C:\> $LibServer = Get-SCLibraryServer -ComputerName "LibServer02"
PS C:\> Save-SCVirtualMachine -LibraryServer $LibServer -VM $VM -SharePath "\\LibServer02.Contoso.com\Library02\VMs" -RunAsynchronously -JobVariable "SaveVMJob"
PS C:\> $SaveVMJob

Der erste Befehl ruft das virtuelle Computerobjekt namens VM02 ab und speichert dieses Objekt dann in der $VM Variablen.

Der zweite Befehl ruft das Bibliotheksserverobjekt namens LibServer02 ab und speichert dieses Objekt dann in der $Library Variablen.

Der dritte Befehl migriert VM02 an den Speicherort \LibServer02.Contoso.com\Library02\VMs. Der Befehl gibt den RunAsynchronly-Parameter an, um die Steuerung sofort an die Befehlsshell zurückzugeben. Der Befehl gibt den JobVariable-Parameter den Auftragsfortschritt an, und speichert einen Datensatz des Fortschritts in $SaveVMJob. Für JobVariable geben Sie das Dollarzeichen ($) nicht an, um die Variable zu erstellen.

Der letzte Befehl zeigt den Inhalt von $SaveVMJob an.

Beispiel 3: Speichern eines virtuellen Computers in der Bibliothek durch Erzwingen einer Netzwerkübertragung

PS C:\> $VM = Get-SCVirtualMachine -Name "VM03"
PS C:\> $LibServer = Get-SCLibraryServer -ComputerName "LibServer01"
PS C:\> Save-SCVirtualMachine -LibraryServer $LibServer -VM $VM -SharePath "\\LibServer01.Contoso.com\Library01\VMs" -UseLAN

Der erste Befehl ruft den virtuellen Computer vm03 ab und speichert dieses Objekt dann in der $VM Variablen.

Der zweite Befehl ruft das Bibliotheksserverobjekt namens LibServer01 ab und speichert dieses Objekt dann in der $LibServer Variablen.

Der letzte Befehl speichert VM03 an den Speicherort \LibServer01.Contoso.com\Library01\VMs. Der UseLAN-Parameter erzwingt eine Netzwerkübertragung über das LAN, auch wenn ein schnellerer Übertragungsmechanismus verfügbar ist.

Parameter

-JobVariable

Gibt den Namen einer Variable für den Auftragsfortschritt an.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-LibraryServer

Gibt ein VMM-Bibliothekserverobjekt an.

Type:LibraryServer
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-OnBehalfOfUser

Gibt einen Benutzernamen an. Dieses Cmdlet wird im Auftrag des Benutzers ausgeführt, den dieser Parameter angibt.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-OnBehalfOfUserRole

Gibt eine Benutzerrolle an. Verwenden Sie zum Abrufen einer Benutzerrolle das Cmdlet Get-SCUserRole . Dieses Cmdlet wird im Auftrag der Benutzerrolle ausgeführt, die dieser Parameter angibt.

Type:UserRole
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-PROTipID

Gibt die ID der Leistungs- und Ressourcenoptimierungs-Tipp (PRO-Tipp) an, die diese Aktion ausgelöst hat. Mit diesem Parameter können Sie PRO-Tipps überwachen.

Type:Guid
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-RunAsynchronously

Gibt an, dass der Auftrag asynchron ausgeführt wird, sodass das Steuerelement sofort an die Befehlsshell zurückgibt.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-SharePath

Gibt einen Pfad zu einer gültigen Bibliotheksfreigabe auf einem vorhandenen Bibliotheksserver an, auf dem dieses Cmdlet den virtuellen Computer speichert. Geben Sie einen Pfad für die universelle Benennungskonvention (UNC) an.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-UseLAN

Gibt an, dass dieses Cmdlet die Übertragung über das LAN verwendet, auch wenn ein schnellerer Übertragungsmechanismus verfügbar ist.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-VM

Gibt ein virtuelles Computerobjekt an, das gespeichert werden soll.

Type:VM
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

Ausgaben

VirtualMachine

Dieses Cmdlet gibt ein VirtualMachine-Objekt zurück.

Hinweise

  • Erfordert ein virtuelles VMM-Computerobjekt, das mithilfe des Cmdlets Get-SCVirtualMachine abgerufen werden kann.