Save-SCVirtualMachine

Переносит виртуальную машину, развернутую на узле, в библиотеку VMM.

Синтаксис

Default (по умолчанию)

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 с помощью одного из следующих способов передачи:

  • Передача данных по сети хранения данных (Fibre Channel, iSCSI или NPIV). Если хост и сервер библиотеки подключены к хранилищу SAN, VMM может использовать передачу SAN для хранения виртуальной машины в библиотеке. При передаче данных SAN целевые LUN повторно сопоставляются с исходным узлом на целевой сервер библиотеки. Этот командлет не перемещает файлы. Передача данных по сети SAN происходит намного быстрее, чем при перемещении файлов виртуальных машин с одного узла на другой по локальной сети (LAN). VMM может использовать передачу NPIV SAN, если доступен адаптер главной шины (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

Указывает имя переменной для хода выполнения задания.

Свойства параметра

Тип:String
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-LibraryServer

Указывает объект сервера библиотеки VMM.

Свойства параметра

Тип:LibraryServer
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:True
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-OnBehalfOfUser

Указывает имя пользователя. Этот командлет работает от имени пользователя, указанного в этом параметре.

Свойства параметра

Тип:String
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-OnBehalfOfUserRole

Указывает роль пользователя. Чтобы получить роль пользователя, используйте командлет Get-SCUserRole . Этот командлет работает от имени роли пользователя, указанной в этом параметре.

Свойства параметра

Тип:UserRole
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-PROTipID

Указывает идентификатор подсказки по оптимизации производительности и ресурсов (подсказка PRO), активировав это действие. Этот параметр позволяет проверять советы PRO.

Свойства параметра

Тип:Guid
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-RunAsynchronously

Указывает, что задание выполняется асинхронно, чтобы элемент управления сразу же возвращал командную оболочку.

Свойства параметра

Тип:SwitchParameter
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-SharePath

Указывает путь к действительной общей библиотечной папке на существующем сервере библиотеки, на котором командлет сохраняет виртуальную машину. Укажите путь в соответствии с Универсальным соглашением об именовании (UNC).

Свойства параметра

Тип:String
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-UseLAN

Указывает, что этот командлет использует передачу по локальной сети, даже если доступен более быстрый механизм передачи.

Свойства параметра

Тип:SwitchParameter
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-VM

Указывает объект виртуальной машины для сохранения.

Свойства параметра

Тип:VM
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:0
Обязательно:True
Значение из конвейера:True
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

CommonParameters

Этот командлет поддерживает общие параметры: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction и -WarningVariable. Дополнительные сведения см. в разделе about_CommonParameters.

Выходные данные

VirtualMachine

Этот командлет возвращает объект VirtualMachine .

Примечания

  • Требуется объект виртуальной машины VMM, который можно получить с помощью командлета Get-SCVirtualMachine .