Save-SCVirtualMachine
Migre une machine virtuelle déployée sur un hôte vers la bibliothèque VMM.
Syntax
Save-SCVirtualMachine
[-VM] <VM>
[-LibraryServer <LibraryServer>]
[-UseLAN]
[-SharePath <String>]
[-RunAsynchronously]
[-PROTipID <Guid>]
[-JobVariable <String>]
[-OnBehalfOfUser <String>]
[-OnBehalfOfUserRole <UserRole>]
[<CommonParameters>]
Description
L’applet de commande Save-SCVirtualMachine migre une machine virtuelle déployée sur un hôte vers la bibliothèque VMM (Virtual Machine Manager).
Cela stocke une machine virtuelle dans la bibliothèque VMM à l’aide de l’une des méthodes de transfert suivantes :
- Transfert SAN (Fibre Channel, iSCSI ou NPIV). Si l’hôte et le serveur de bibliothèque sont connectés au stockage SAN, VMM peut utiliser un transfert SAN pour stocker la machine virtuelle dans la bibliothèque. Dans un transfert SAN, les numéros de commande cibles sont réappappés de l’hôte source vers le serveur de bibliothèque de destination. Cette applet de commande n’a pas déplacé de fichiers. Le transfert SAN est beaucoup plus rapide que le déplacement de fichiers de machine virtuelle d’un hôte vers un autre via un réseau local (LAN). VMM peut utiliser un transfert SAN NPIV si une carte bus hôte (HBA) prenant en charge NPIV est disponible.
- Transfert réseau. Si aucune méthode plus rapide n’est disponible, VMM utilise un transfert réseau pour déplacer les fichiers de machine virtuelle du serveur hôte vers le serveur de bibliothèque sur le réseau local qui connecte les deux serveurs. Spécifiez le chemin d’accès du partage dans la bibliothèque pour stocker la machine virtuelle en tant que paramètre SharePath .
Cette applet de commande utilise automatiquement le type de transfert le plus rapide disponible. Si vous souhaitez forcer un transfert réseau, spécifiez le paramètre UseLAN . Si le serveur hôte et le serveur de bibliothèque sont le même serveur, la commande ne échoue pas si vous spécifiez UseLAN, mais que la migration vers la bibliothèque se produit plus rapidement si vous n’utilisez pas ce paramètre.
Lorsqu’un ordinateur virtuel est stocké dans la bibliothèque, vous ne pouvez pas le démarrer. Avant de pouvoir démarrer la machine virtuelle, vous devez la déplacer vers un hôte à l’aide de l’applet de commande Move-SCVirtualMachine .
Exemples
Exemple 1 : Enregistrer une machine virtuelle dans la bibliothèque
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"
La première commande obtient l’objet de machine virtuelle nommé VM01, puis stocke cet objet dans la variable $VM.
La deuxième commande obtient l’objet serveur de bibliothèque nommé LibServer01, puis stocke cet objet dans la variable $Library.
La dernière commande migre VM01 à partir de son hôte et la stocke à l’emplacement \LibServer01.Contoso.com\Library01\Machines virtuelles. La commande utilise automatiquement le type de transfert disponible le plus rapide.
Exemple 2 : Stocker une machine virtuelle dans la bibliothèque de manière asynchrone
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
La première commande obtient l’objet de machine virtuelle nommé VM02, puis stocke cet objet dans la variable $VM.
La deuxième commande obtient l’objet serveur de bibliothèque nommé LibServer02, puis stocke cet objet dans la variable $Library.
La troisième commande migre VM02 vers l’emplacement \LibServer02.Contoso.com\Library02\Machines virtuelles. La commande spécifie le paramètre RunAsynchronously pour renvoyer immédiatement le contrôle à l’interpréteur de commandes. La commande spécifie le paramètre JobVariable suit la progression du travail et stocke un enregistrement de sa progression dans $SaveVMJob. Pour JobVariable, vous ne spécifiez pas le signe dollar ($) pour créer la variable.
La dernière commande affiche le contenu de $SaveVMJob.
Exemple 3 : Stocker une machine virtuelle dans la bibliothèque en forçant un transfert réseau
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
La première commande obtient la machine virtuelle nommée VM03, puis stocke cet objet dans la variable $VM.
La deuxième commande obtient l’objet serveur de bibliothèque nommé LibServer01, puis stocke cet objet dans la variable $LibServer.
La dernière commande stocke VM03 à l’emplacement \LibServer01.Contoso.com\Library01\Machines virtuelles. Le paramètre UseLAN force un transfert réseau sur le réseau local, même si un mécanisme de transfert plus rapide est disponible.
Paramètres
-JobVariable
Spécifie le nom d’une variable pour la progression du travail.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-LibraryServer
Spécifie un objet partage de bibliothèque VMM.
Type: | LibraryServer |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-OnBehalfOfUser
Spécifie un nom d'utilisateur. Cette applet de commande fonctionne pour le compte de l’utilisateur que ce paramètre spécifie.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-OnBehalfOfUserRole
Spécifie un rôle d’utilisateur. Pour obtenir un rôle d’utilisateur, utilisez l’applet de commande Get-SCUserRole . Cette applet de commande fonctionne pour le compte du rôle d’utilisateur spécifié par ce paramètre.
Type: | UserRole |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-PROTipID
Spécifie l’ID du conseil d’optimisation des performances et des ressources qui a déclenché cette action. Ce paramètre vous permet d’auditer les conseils PRO.
Type: | Guid |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-RunAsynchronously
Indique que le travail s’exécute de manière asynchrone afin que le contrôle retourne immédiatement à l’interpréteur de commandes.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-SharePath
Spécifie un chemin d’accès à un partage de bibliothèque valide sur un serveur de bibliothèque existant où cette applet de commande enregistre la machine virtuelle. Spécifiez un chemin d’accès UNC (Universal Naming Convention).
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-UseLAN
Indique que cette applet de commande utilise le transfert via le réseau local, même si un mécanisme de transfert plus rapide est disponible.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-VM
Spécifie un objet de machine virtuelle à enregistrer.
Type: | VM |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
Sorties
VirtualMachine
Cette applet de commande retourne un objet VirtualMachine .
Notes
- Nécessite un objet de machine virtuelle VMM, qui peut être récupéré à l’aide de l’applet de commande Get-SCVirtualMachine .