Save-SCVirtualMachine
Переносит виртуальную машину, развернутую на узле, в библиотеку VMM.
Синтаксис
Save-SCVirtualMachine
[-VM] <VM>
[-LibraryServer <LibraryServer>]
[-UseLAN]
[-SharePath <String>]
[-RunAsynchronously]
[-PROTipID <Guid>]
[-JobVariable <String>]
[-OnBehalfOfUser <String>]
[-OnBehalfOfUserRole <UserRole>]
[<CommonParameters>]
Описание
Командлет Save-SCVirtualMachine переносит виртуальную машину, развернутую на узле, в библиотеку Virtual Machine Manager (VMM).
При этом виртуальная машина хранится в библиотеке VMM с помощью одного из следующих методов передачи:
- Передача SAN (Fibre Channel, iSCSI или NPIV). Если сервер узла и библиотеки подключены к хранилищу SAN, VMM может использовать передачу SAN для хранения виртуальной машины в библиотеке. При передаче SAN целевые LUN переназначаются с исходного узла на сервер целевой библиотеки. Этот командлет не перемещает файлы. Передача san выполняется гораздо быстрее, чем перемещение файлов виртуальных машин с одного узла на другой по локальной сети (LAN). VMM может использовать передачу SAN NPIV, если доступен адаптер шины узла (HBA) с поддержкой NPIV.
- Сетевая передача. Если более быстрый метод недоступен, VMM использует сетевую передачу для перемещения файлов виртуальной машины с сервера узла на сервер библиотеки по локальной сети, которая подключает два сервера. Укажите путь к общей папке в библиотеке для хранения виртуальной машины в качестве параметра SharePath .
Этот командлет автоматически использует самый быстрый доступный тип передачи. Если вы хотите принудительно выполнить передачу сети, укажите параметр UseLAN . Если сервер узла и сервер библиотеки совпадают, команда не завершается ошибкой при указании UseLAN, но миграция в библиотеку происходит быстрее, если этот параметр не используется.
Если виртуальная машина хранится в библиотеке, ее нельзя запустить. Перед запуском виртуальной машины необходимо переместить ее на узел с помощью командлета Move-SCVirtualMachine .
Примеры
Пример 1. Сохранение виртуальной машины в библиотеке
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"
Первая команда получает объект виртуальной машины с именем VM01, а затем сохраняет этот объект в переменной $VM.
Вторая команда получает объект сервера библиотеки с именем LibServer01, а затем сохраняет этот объект в переменной $Library.
Последняя команда переносит VM01 с узла и сохраняет ее в расположении \LibServer01.Contoso.com\Library01\VMs. Команда автоматически использует самый быстрый доступный тип передачи.
Пример 2. Асинхронное хранение виртуальной машины в библиотеке
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
Первая команда получает объект виртуальной машины с именем VM02, а затем сохраняет этот объект в переменной $VM.
Вторая команда получает объект сервера библиотеки с именем LibServer02, а затем сохраняет этот объект в переменной $Library.
Третья команда переносит VM02 в расположение \LibServer02.Contoso.com\Library02\VMs. Команда указывает параметр RunAsynchronously , чтобы немедленно вернуть управление в командную оболочку. Команда указывает параметр JobVariable отслеживает ход выполнения задания и сохраняет запись о ходе выполнения в $SaveVMJob. Для JobVariable не указывайте знак доллара ($) для создания переменной.
Последняя команда отображает содержимое $SaveVMJob.
Пример 3. Сохранение виртуальной машины в библиотеке путем принудительной передачи сети
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
Первая команда получает виртуальную машину с именем VM03, а затем сохраняет этот объект в переменной $VM.
Вторая команда получает объект сервера библиотеки с именем LibServer01, а затем сохраняет этот объект в переменной $LibServer.
Последняя команда сохраняет VM03 в расположении \LibServer01.Contoso.com\Library01\VMs. Параметр UseLAN принудительно передает сеть через локальную сеть, даже если доступен более быстрый механизм передачи.
Параметры
-JobVariable
Указывает имя переменной для выполнения задания.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-LibraryServer
Указывает объект сервера библиотеки VMM.
Type: | LibraryServer |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-OnBehalfOfUser
Указывает имя пользователя. Этот командлет работает от имени пользователя, указанного этим параметром.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-OnBehalfOfUserRole
Указывает роль пользователя. Чтобы получить роль пользователя, используйте командлет Get-SCUserRole . Этот командлет работает от имени роли пользователя, указанной этим параметром.
Type: | UserRole |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-PROTipID
Указывает идентификатор подсказки по оптимизации производительности и ресурсов (подсказка PRO), активировав это действие. Этот параметр позволяет выполнять аудит советов PRO.
Type: | Guid |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-RunAsynchronously
Указывает, что задание выполняется асинхронно, чтобы элемент управления немедленно возвращал командную оболочку.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-SharePath
Указывает путь к допустимой общей папке библиотеки на существующем сервере библиотеки, где этот командлет сохраняет виртуальную машину. Укажите unc-путь.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-UseLAN
Указывает, что этот командлет использует передачу по локальной сети, даже если доступен более быстрый механизм передачи.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-VM
Указывает объект виртуальной машины для сохранения.
Type: | VM |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
Выходные данные
VirtualMachine
Этот командлет возвращает объект VirtualMachine .
Примечания
- Требуется объект виртуальной машины VMM, который можно получить с помощью командлета Get-SCVirtualMachine .