Set-SCVirtualMachine

更改 VMM 管理的虚拟机的属性。

语法

Set-SCVirtualMachine
   [-VM] <VM>
   [-VMwareResourcePool <VmwResourcePool>]
   [-StartAction <VMStartAction>]
   [-StopAction <VMStopAction>]
   [-RemoveSelfServiceUserRole <Boolean>]
   [-EnableOperatingSystemShutdown <Boolean>]
   [-EnableTimeSync <Boolean>]
   [-EnableDataExchange <Boolean>]
   [-EnableHeartbeat <Boolean>]
   [-EnableBackup <Boolean>]
   [-InstallVirtualizationGuestServices <Boolean>]
   [-Owner <String>]
   [-OperatingSystem <OperatingSystem>]
   [-Enabled <Boolean>]
   [-HighlyAvailable <Boolean>]
   [-HAVMPriority <UInt32>]
   [-DRProtectionRequired <Boolean>]
   [-ReplicationGroup <ReplicationGroup>]
   [-SecureBootEnabled <Boolean>]
   [-NumLock <Boolean>]
   [-CPULimitFunctionality <Boolean>]
   [-CPULimitForMigration <Boolean>]
   [-VMShieldingData <KeyFile>]
   [-RunAsSystem]
   [-RunAsUserCredential <PSCredential>]
   [-DelayStartSeconds <Int32>]
   [-UseHardwareAssistedVirtualization <Boolean>]
   [-Cloud <Cloud>]
   [-CapabilityProfile <CapabilityProfile>]
   [-RemoveCapabilityProfile]
   [-RemoveFromCloud]
   [-ClusterNonPossibleOwner <System.Collections.Generic.List`1[Microsoft.SystemCenter.VirtualMachineManager.Host]>]
   [-ClusterPreferredOwner <System.Collections.Generic.List`1[Microsoft.SystemCenter.VirtualMachineManager.Host]>]
   [-AvailabilitySetNames <System.Collections.Generic.List`1[System.String]>]
   [-UserRole <UserRole>]
   [-Name <String>]
   [-JobGroup <Guid>]
   [-QuotaPoint <UInt32>]
   [-CostCenter <String>]
   [-Tag <String>]
   [-Custom1 <String>]
   [-Custom2 <String>]
   [-Custom3 <String>]
   [-Custom4 <String>]
   [-Custom5 <String>]
   [-Custom6 <String>]
   [-Custom7 <String>]
   [-Custom8 <String>]
   [-Custom9 <String>]
   [-Custom10 <String>]
   [-BlockDynamicOptimization <Boolean>]
   [-ClearDRProtection]
   [-Description <String>]
   [-MemoryMB <Int32>]
   [-DynamicMemoryEnabled <Boolean>]
   [-DynamicMemoryMaximumMB <Int32>]
   [-DynamicMemoryBufferPercentage <Int32>]
   [-MemoryWeight <Int32>]
   [-VirtualVideoAdapterEnabled <Boolean>]
   [-MonitorMaximumCount <Int32>]
   [-MonitorMaximumResolution <String>]
   [-RecoveryPointObjective <Int32>]
   [-ProtectionProvider <ProtectionProvider>]
   [-BootOrder <BootDevice[]>]
   [-FirstBootDevice <String>]
   [-SecureBootTemplate <String>]
   [-CPUCount <Byte>]
   [-CPUType <ProcessorType>]
   [-CPUExpectedUtilizationPercent <Int32>]
   [-DiskIops <Int32>]
   [-NetworkUtilizationMbps <Int32>]
   [-CPURelativeWeight <Int32>]
   [-CPUReserve <Int32>]
   [-CPUMaximumPercent <Int32>]
   [-CPUPerVirtualNumaNodeMaximum <Byte>]
   [-MemoryPerVirtualNumaNodeMaximumMB <Int32>]
   [-VirtualNumaNodesPerSocketMaximum <Byte>]
   [-DynamicMemoryMinimumMB <Int32>]
   [-NumaIsolationRequired <Boolean>]
   [-AutomaticCriticalErrorAction <UInt16>]
   [-AutomaticCriticalErrorActionTimeout <Int32>]
   [-CheckpointType <CheckpointType>]
   [-RunAsynchronously]
   [-PROTipID <Guid>]
   [-JobVariable <String>]
   [-OnBehalfOfUser <String>]
   [-OnBehalfOfUserRole <UserRole>]
   [<CommonParameters>]

说明

Set-SCVirtualMachine cmdlet 更改由 Virtual Machine Manager (VMM) 管理的虚拟机的属性。

可以更改的属性包括:

  • 将虚拟机关联到云。
  • 虚拟机的名称、所有者和说明。
  • BIOS 启动顺序(如果虚拟机部署在 Hyper-V 主机上)。
  • 虚拟机使用的主机上的资源量。 其中包括:
  • 虚拟机可以使用的最大主机 CPU 资源量。
  • 虚拟机预期使用主机 CPU。
  • 一个虚拟机相对于同一主机上的其他虚拟机使用的主机 CPU 资源量。
  • 虚拟机可以使用的主机内存量。
  • 虚拟机可以使用的主机网络上的带宽量。
  • 与主机资源无关的虚拟机的硬件设置。 其中包括:
  • CPU 数目。
  • CPU 的类型。
  • 每秒磁盘输入/输出操作数 (IOPS) 。
  • 限制较旧操作系统的 CPU 功能,例如 Windows NT 4.0。
  • 成本中心、标记和自定义设置,用于按条件筛选虚拟机。
  • 启用各种可选功能的设置,其中包括:
  • 启用或禁用库对象,使其可供用户使用或暂时不可用。
  • 使用卷影复制服务在 Hyper-V 主机上启用备份虚拟机。
  • 为虚拟机与其 Hyper-V 主机之间的数据交换启用键/值对。
  • 从 Hyper-V 控制台启用虚拟机关闭。
  • 启用虚拟机与其 Hyper-V 主机之间的时间同步。
  • 为 Hyper-V 主机上的虚拟机启用 NumLock 的 BIOS 值。
  • 用于标识虚拟机是否高度可用(即要部署在 Hyper-V 主机群集或 Citrix XenServer 主机群集的节点上的虚拟机)的设置。
  • 用于确定是否在部署在 Hyper-V 主机上的虚拟机上安装虚拟化来宾服务的设置。
  • 启动虚拟机之前延迟的秒数。
  • 用于标识用于虚拟机的操作系统的设置。
  • 启动和停止虚拟机的操作。
  • 用于限制虚拟机自助服务用户可以创建的设置。
  • 用于切换属于多个角色的自助服务用户用来管理虚拟机的角色的设置。
  • 将 ESX 主机上的虚拟机分配到 VMware 资源池的设置。

如果要更改与特定虚拟机关联的虚拟软盘驱动器、虚拟 DVD 驱动器、虚拟网络适配器或虚拟 SCSI 适配器的属性,请使用 Set-SCVirtualFloppyDrive、Set-SCVirtual DVDDriveSet-SCVirtualNetworkAdapterSet-SCVirtualScsiAdapter cmdlet。

示例

示例 1:为现有虚拟机指定内存量

PS C:\> $VM = Get-SCVirtualMachine -Name "VM01"
PS C:\> If($VM.Status -ne "PowerOff"){Stop-SCVirtualMachine -VM $VM}
PS C:\> Set-SCVirtualMachine -VM $VM -MemoryMB 1024

第一个命令获取名为 VM01 的虚拟机对象,然后将该对象存储在$VM变量中。

第二个确定存储在$VM中的虚拟机是否处于关闭状态。 如果虚拟机未处于关闭状态,该命令将使用 Stop-SCVirtualMachine 命令关闭虚拟机。 有关关闭虚拟机的详细信息,请键入 Get-Help Stop-SCVirtualMachine

最后一个命令将分配给 VM01 的内存值更改为 1024 MB。

示例 2:更改用于管理属于多个自助服务用户角色的用户的虚拟机的用户角色

PS C:\> $VM = Get-SCVirtualMachine -VMMServer "VMMServer01.Contoso.com" -Name "VM02"
PS C:\> $SSRole = Get-SCUserRole -Name "ContosoSelfServiceUsers"
PS C:\> Set-SCVirtualMachine -VM $VM -UserRole $SSRole

第一个命令从 VMMServer01 获取名为 VM02 的虚拟机对象,然后将该对象存储在$VM变量中。

第二个命令获取名为 ContosoSelfServiceUsers 的用户角色对象,然后将该对象存储在$SSRole变量中。

最后一个命令指定现在已授予名为 SSUserRole3 的自助服务用户角色的成员管理名为 VM02 的虚拟机的权限。

注意:VMM 使用 UserRole 参数设置特定自助服务用户角色的成员管理哪些虚拟机。 通常,无需将 Set-SCVirtualMachine cmdlet 与 UserRole 参数配合使用来配置此设置。 但是,如果一个或多个用户是多个自助服务用户角色的成员,并且你向其授予管理同一主机上多个虚拟机的权限,则可能会遇到想要切换哪些用户角色有权管理特定虚拟机的情况。 本示例说明了该情况。

示例 3:在用作域控制器的虚拟机上禁用时间同步

PS C:\> $EAP = $ErrorActionPreference
PS C:\> $ErrorActionPreference = "STOP"
PS C:\> $VM = Get-SCVirtualMachine -Name "VM03"
PS C:\> trap{"Fail: Cannot disable Time Synchronization for VM: $VM";continue} Set-SCVirtualMachine -VM $VM -EnableTimeSynchronization $TRUE | Out-Null
PS C:\> $ErrorActionPreference = $EAP

第一个命令将 $ErrorActionPreference 的当前设置存储在 $EAP 变量中。 稍后使用此变量将设置返回到其原始值。

第二个命令设置 STOP 的操作首选项。 此错误操作首选项会将错误从非终止错误更改为终止错误。 错误对象作为异常引发,而不是写入输出管道,并且命令不会继续运行。

第三个命令获取名为 VM03 的虚拟机对象,并将该对象存储在$VM变量中。

第四个命令禁用时间同步设置。 通常,对于充当域控制器的虚拟机,需要禁用时间同步。 该命令使用 trap 语句捕获终止异常。 如果 Set-SCVirtualMachine 命令失败,则会显示 trap 语句中的字符串。 在 trap 语句中使用 Continue 继续运行,而不是退出。 Out-Null cmdlet 会将输出重定向到 $Null,而不是将它发送到控制台。

最后一个命令将 $ErrorActionPreference 的值设置为存储在 $EAP 中的值。

示例 4:为支持此功能的所有虚拟机设置设备启动顺序

PS C:\> $EAP = $ErrorActionPreference
PS C:\> $ErrorActionPreference = "Stop"
PS C:\> $VMs = @(Get-SCVirtualMachine)
PS C:\> ForEach($VM in $VMs){trap{"Fail: Cannot set BIOS for VM: $VM";continue} Set-SCVirtualMachine -VM $VM -BootOrder "PXEBoot","IDEHarddrive","CD","Floppy" | Out-Null}
PS C:\> $ErrorActionPreference = $EAP

第一个命令将 $ErrorActionPreference 的当前设置存储在 $EAP 中。 稍后使用此变量将设置返回到其原始值。

第二个命令将错误操作首选项设置为“停止”。 此错误操作首选项会将错误从非终止错误更改为终止错误。 错误对象作为异常引发,而不是写入输出管道,并且命令不会继续运行。

第三个命令获取每个虚拟机对象将对象存储在$VMs中。 使用 @ 符号和括号可确保命令将结果存储在数组中,以防命令返回单个对象或 null 值。

第四个命令将每个虚拟机的 BIOS 启动顺序设置为 PXEBoot、IDEHarddrive、CD、Floppy。 该命令使用陷阱语句捕获终止异常。 如果 Set-SCVirtualMachine 命令失败,则会显示 trap 语句中的字符串。 在 trap 语句中使用 Continue 继续运行,而不是退出 ForEach 循环。 Out-Null cmdlet 将输出重定向到$Null,而不是将其发送到控制台。

注意: BootOrder 参数仅用于 Hyper-V 和 Citrix XenServer 主机上的虚拟机。 它不用于 VMware ESX 主机上的虚拟机。 XenServer 主机不支持软盘磁盘,因此,如果启动顺序列出,则忽略软盘。

最后一个命令将 $ErrorActionPreference 的值设置为存储在 EAP 中的值。

有关标准Windows PowerShell ForEach 循环语句的详细信息,请键入Get-Help about_ForEach

示例 5:为没有所有者的所有虚拟机指定所有者

PS C:\> Get-SCVirtualMachine -VMMServer "VMMServer01.Contoso.com" | where {$_.Owner -eq ""} | Set-SCVirtualMachine -Owner "Contoso\ReneeLo"

此命令获取 VMMServer01 上的所有虚拟机对象,仅选择未列出所有者的虚拟机对象,并为每个虚拟机指定所有者。

示例 6:为现有虚拟机启用动态内存

PS C:\> $VM = Get-SCVirtualMachine -Name "VM06"
PS C:\> if($VM.Status -ne "PowerOff"){Stop-SCVirtualMachine -VM $VM}
PS C:\> Set-SCVirtualMachine -VM $VM -DynamicMemoryEnabled $True -MemoryMB 1024 -DynamicMemoryMaximumMB 2048

第一个命令获取虚拟机对象 VM06,并将该对象存储在$VM变量中。 若要在虚拟机上启用动态内存,虚拟机必须驻留在运行 Windows Server 2008 R2 SP1 或更高版本的主机上。

第二个命令确定存储在$VM中的虚拟机是否处于关闭状态。 如果虚拟机未处于关闭状态,该命令将使用 Stop-SCVirtualMachine 命令关闭虚拟机。

最后一个命令启用动态内存,将启动内存设置为 1024 MB,并将最大内存设置为 2048 MB。 启动内存是启动时分配给 VM06 的主机上的内存量。 最大内存是分配给 VM06 的主机上的最大内存量。

参数

-AutomaticCriticalErrorAction

指定虚拟机遇到严重错误时要执行的操作,并超过 AutomaticCriticalErrorActionTimeout 参数指定的超时持续时间。 此参数的可接受值为:Pause 和 None。

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

-AutomaticCriticalErrorActionTimeout

指定在关闭虚拟机之前在关键暂停中等待的时间量(以分钟为单位)。

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

-AvailabilitySetNames

指定可用性集名称的列表。

Type:System.Collections.Generic.List`1[System.String]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-BlockDynamicOptimization

指示是否阻止虚拟机的动态优化。

Type:Boolean
Aliases:ExcludeFromPRO
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-BootOrder

指定 Hyper-V 主机上虚拟机用于启动的设备的顺序(作为数组)。 有效值为:

  • CD
  • IDEHardDrive
  • PXEBoot
  • 软盘
Type:BootDevice[]
Accepted values:Floppy, CD, IdeHardDrive, PxeBoot, Unknown
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-CapabilityProfile

指定功能配置文件对象。

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

-CheckpointType

指定检查点类型。 此参数的可接受值为:

  • 已禁用
  • 生产
  • ProductionOnly
  • 标准
Type:CheckpointType
Accepted values:Disabled, Production, ProductionOnly, Standard
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ClearDRProtection

指示此 cmdlet 重置数据恢复保护选项。

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

-Cloud

指定私有云对象。

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

-ClusterNonPossibleOwner

指定指定虚拟机的非可能群集节点所有者的名称列表。

Type:System.Collections.Generic.List`1[Microsoft.SystemCenter.VirtualMachineManager.Host]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ClusterPreferredOwner

指定特定虚拟机的首选群集节点所有者的名称列表。

Type:System.Collections.Generic.List`1[Microsoft.SystemCenter.VirtualMachineManager.Host]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-CostCenter

指定虚拟机的成本中心。 可以收集有关为计费系统分配给虚拟机的虚拟机或资源分配的数据。

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

-CPUCount

指定虚拟机上的 CPU 数。 以下主机支持以下处理器数:

  • Hyper-V。 每个虚拟机最多四个 CPU,具体取决于来宾操作系统。
  • VMware ESX。 对于任何受支持的来宾操作系统,每个虚拟机最多 4 个 CPU,但运行 Windows NT 4.0 的虚拟机上的一个 CPU 除外。
  • Citrix XenServer。 每个虚拟机最多 8 个 CPU,具体取决于来宾操作系统。
Type:Byte
Aliases:ProcessorCount
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-CPUExpectedUtilizationPercent

指定你希望此虚拟机使用的主机上的 CPU 百分比。 仅当 VMM 确定虚拟机的相应主机时,才使用此值。

Type:Int32
Aliases:ExpectedCPUUtilization
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-CPULimitForMigration

指示是否限制指定虚拟机的处理器功能,以便迁移到与源计算机具有相同版本的物理计算机。 VMM 不支持在拥有不同制造商提供的处理器的物理计算机之间迁移虚拟机。

Type:Boolean
Aliases:LimitCPUForMigration
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-CPULimitFunctionality

指示是否为虚拟机提供有限的 CPU 功能。 指定一个值$True以支持部署在 Hyper-V 主机或 VMware ESX 主机上的虚拟机(如 Windows NT 4.0)的较旧操作系统。

Type:Boolean
Aliases:LimitCPUFunctionality
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-CPUMaximumPercent

指定虚拟机可以同时使用的主机上单个 CPU 的总资源总数的百分比。

Type:Int32
Aliases:CPUMax
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-CPUPerVirtualNumaNodeMaximum

指定每个虚拟 NUMA 节点允许的最大 CPU 数。

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

-CPURelativeWeight

指定主机上此虚拟机可以使用的 CPU 资源量(相对于同一主机上的其他虚拟机)。 具有较高权重值的虚拟机分配的 CPU 资源比权重较低的虚拟机分配的 CPU 资源多。 这些值的 VMware 术语是共享。 主机类型支持以下相对值:

  • Hyper-V。 1 到 10000。
  • VMware ESX。 高。 2000.
  • VMware ESX。 高于普通。 1500.
  • VMware ESX。 普通 (默认) 。 1000。
  • VMware ESX。 正常情况下。 750.
  • VMware ESX。 低。 500.
  • VMware ESX。 自定义 1 到 1000000。
  • Citrix XenServer。 1 到 65536,典型值为 256。
Type:Int32
Aliases:RelativeWeight
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-CPUReserve

指定要分配给虚拟机的主机上单个 CPU 的资源的最小百分比。 虚拟机的可用 CPU 容量的百分比决不能小于此百分比。

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

-CPUType

指定虚拟机的 CPU 类型。 若要获取可用于 VMM 环境中的虚拟机的所有 CPU 类型,请参阅 Get-SCCPUType cmdlet。

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

-Custom1

指定虚拟机的自定义属性。

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

-Custom10

指定虚拟机的自定义属性。

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

-Custom2

指定虚拟机的自定义属性。

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

-Custom3

指定虚拟机的自定义属性。

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

-Custom4

指定虚拟机的自定义属性。

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

-Custom5

指定虚拟机的自定义属性。

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

-Custom6

指定虚拟机的自定义属性。

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

-Custom7

指定虚拟机的自定义属性。

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

-Custom8

指定虚拟机的自定义属性。

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

-Custom9

指定虚拟机的自定义属性。

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

-DelayStartSeconds

指定在启动虚拟化服务后等待虚拟机自动启动的秒数。

此延迟会阻碍多个虚拟机的启动时间,以帮助减少物理计算机资源的需求。 典型的设置为 30 到 60 秒。 主机的最大可配置延迟如下所示:

  • Hyper-V。 1000000000 秒 (277777小时)
  • VMware ESX。 65535 秒 (18 小时)

此参数不适用于 XenServer 虚拟机。

Type:Int32
Aliases:DelayStart
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Description

指定虚拟机的说明。

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

-DiskIops

指定虚拟机可以使用的主机上每秒磁盘输入/输出操作数 (IOPS) 。

Type:Int32
Aliases:DiskIO
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DRProtectionRequired

此参数留待将来使用。

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

-DynamicMemoryBufferPercentage

指定主机应尝试保留为缓冲区的虚拟机当前内存分配上方的内存百分比。 默认值为 20。

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

-DynamicMemoryEnabled

指示是否为虚拟机启用动态内存。 可以直接在虚拟机上启用动态内存,也可以在用于创建虚拟机的模板或硬件配置文件上启用动态内存。 默认值为$False。

仅当该虚拟机部署在运行 Windows Server 2008 SP1 或更高版本的主机上,或者虚拟机存储在处于停止状态的库中时,才能为虚拟机启用动态内存。 仅当虚拟机没有快照时,才能对存储的虚拟机进行硬件更改。 在存储在库中的虚拟机上启用动态内存会将该计算机的放置限制为运行 Windows Server 2008 SP1 或更高版本的主机。

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

-DynamicMemoryMaximumMB

指定主机可以分配给虚拟机的最大内存量(如果启用了动态内存)。 默认值为 65536。

仅当该虚拟机部署在运行 Windows Server 2008 SP1 或更高版本的主机上,或者虚拟机存储在处于停止状态的库中时,才能为虚拟机启用动态内存。 仅当虚拟机没有快照时,才能对存储的虚拟机进行硬件更改。 在存储在库中的虚拟机上启用动态内存会将该计算机的放置限制为运行 Windows Server 2008 SP1 或更高版本的主机。

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

-DynamicMemoryMinimumMB

指定如果启用了动态内存,主机可以分配给虚拟机的最小内存量。 默认值为 65536。

仅当该虚拟机部署在运行 Windows Server 2008 SP1 或更高版本的主机上,或者虚拟机存储在处于停止状态的库中时,才能为虚拟机启用动态内存。 仅当虚拟机没有快照时,才能对存储的虚拟机进行硬件更改。 在存储在库中的虚拟机上启用动态内存会将该计算机的放置限制为运行 Windows Server 2008 SP1 或更高版本的主机。

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

-EnableBackup

指示此 cmdlet 是否使卷影复制服务能够备份虚拟机。 虚拟机必须部署在 Hyper-V 主机上。

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

-Enabled

指示此 cmdlet 是启用或禁用虚拟机。

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

-EnableDataExchange

指示此 cmdlet 是否启用或禁用使用键/值对在虚拟机和主机操作系统之间交换数据。 虚拟机必须部署在 Hyper-V 主机上。

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

-EnableHeartbeat

指示此 cmdlet 是启用或禁用使用检测信号来监视虚拟机的运行状况。 检测信号是以设置间隔发出的信号。 虚拟机必须部署在 Hyper-V 主机上。

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

-EnableNestedVirtualization

启用嵌套虚拟化。

注意

此参数适用于 VMM 2019 UR1。

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

-EnableOperatingSystemShutdown

指示此 cmdlet 是否启用或禁用从主机上 Hyper-V 管理接口由 VMM 管理的虚拟机上的操作系统。 虚拟机必须部署在 Hyper-V 主机上。

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

-EnableTimeSync

指示此 cmdlet 是否启用或禁用将虚拟机的系统时间与主机上运行的操作系统的系统时间同步。 虚拟机必须部署在 Hyper-V 主机上。

Type:Boolean
Aliases:EnableTimeSynchronization
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-FirstBootDevice

指定首次尝试启动的设备。

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

-HAVMPriority

指定虚拟机优先级。 虚拟机的优先级顺序从主机群集节点的限制开始。 此参数的有效输入是优先级的数字表示形式:

  • 高。 3000
  • 中等。 2000
  • 低。 1000

如果指定值为 0 (0) ,则虚拟机不会自动重启。

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

-HighlyAvailable

指示虚拟机是否放置在属于主机群集的 Hyper-V 主机上。 在虚拟机或用于创建虚拟机的模板或硬件配置文件上配置此设置。

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

-InstallVirtualizationGuestServices

指示此 cmdlet 是否在基于 Windows 的虚拟机上安装虚拟化来宾服务。 默认值为$False,VMM 会自动安装相应的虚拟化来宾服务。

对于 Hyper-V 主机上的虚拟机,虚拟化来宾服务称为集成组件或 VMGuest.iso。 对于 XenServer 主机上的虚拟机,虚拟化来宾服务称为 Citrix Tools for 虚拟机 或 xs-tools.iso。 VMware ESX 主机上的虚拟机不使用虚拟化来宾服务。

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

-JobGroup

为一系列命令指定标识符,这些命令在包含相同作业组标识符的最后一个命令之前作为集运行。

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

-JobVariable

指定作业进度的变量的名称。

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

-MemoryMB

指定分配给虚拟机的主机上 (RAM) 随机访问内存量(以 MB (MB) 为单位)。 默认值为 512 MB。 对于启用动态内存的虚拟机,请指定启动内存值。 最大可分配主机内存如下所示:

  • Hyper-V。 每个虚拟机最多 65536 MB RAM
  • VMware ESX Server 3.0.x 每个虚拟机最多 16384 MB RAM
  • VMware ESX Server 3.5.x。 每个虚拟机最多 65532 MB RAM
  • Citrix XenServer。 每个虚拟机最多 32265 MB RAM
Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-MemoryPerVirtualNumaNodeMaximumMB

指定主机允许每个虚拟 NUMA 节点的最大内存量(以兆字节为单位)。

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

-MemoryWeight

指定将内存分配给虚拟机的优先级,相对于同一主机上的其他虚拟机。 主机将更多的内存分配给值高于设置较低的虚拟机的虚拟机。 对于运行 Windows Server 2008 R2 SP1 或更高版本的主机,默认值如下:

  • 低。 0
  • 正常。 5000
  • 高。 10,000
  • 自定义: 10,000
Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-MonitorMaximumCount

指定虚拟视频适配器支持的最大监视器数。

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

-MonitorMaximumResolution

将一个值指定为一个字符串,表示虚拟视频适配器的最大可能的监视器分辨率。 有效值为:

  • 1024 x 768
  • 1280x1024
  • 1600 x 1200
  • 1920x1200

默认值为 1280x1024。

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

-Name

指定虚拟机的名称。

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

-NetworkUtilizationMbps

指定虚拟机可以使用的主机网络上的带宽(以兆比特/秒为单位) (Mbps) 。

Type:Int32
Aliases:NetworkUtilization
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-NumaIsolationRequired

指示是否需要 NUMA 隔离。

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

-NumLock

指示此 cmdlet 是否在虚拟机上启用或禁用 NumLock 的 BIOS 值。 虚拟机必须部署在 Hyper-V 主机上。

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

-OnBehalfOfUser

指定用户名。 此 cmdlet 代表此参数指定的用户运行。

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

-OnBehalfOfUserRole

指定用户角色。 若要获取用户角色,请使用 Get-SCUserRole cmdlet。 此 cmdlet 代表此参数指定的用户角色运行。

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

-OperatingSystem

指定虚拟机操作系统的类型。 若要列出 VMM 中所有可用操作系统的名称,请使用 Get-SCOperatingSystem cmdlet。

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

-Owner

将虚拟机的所有者指定为有效的域用户帐户。

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

-ProtectionProvider

指定保护提供程序。

Type:ProtectionProvider
Accepted values:None, HVR8, HVRBlue, HVRAzure, DiskReplication, SANReplication
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-PROTipID

指定触发此操作 (PRO 提示) 的性能和资源优化提示的 ID。 此参数允许审核 PRO 提示。

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

-QuotaPoint

指定一个配额,用于限制可以部署的虚拟机自助服务用户数。

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

-RecoveryPointObjective

指定因重大事件而无法容忍从 IT 服务丢失数据的最大时间段。

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

-RemoveCapabilityProfile

指示此 cmdlet 删除一个或多个指定的功能配置文件对象。

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

-RemoveFromCloud

指示此 cmdlet 删除虚拟机与云的关联。

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

-RemoveSelfServiceUserRole

指示此 cmdlet 是否从虚拟机的权限列表中删除指定的自助服务用户角色。

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

-ReplicationGroup

指定复制组。

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

-RunAsSystem

指示虚拟机在本地系统帐户下运行。

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

-RunAsUserCredential

指定虚拟机运行方式的来宾帐户。

为了增强安全性,请创建一个具有有限权限的特殊帐户。 最低权限如下所示:

  • .vmc 文件。 读取数据、写入数据、运行文件
  • .vmc 文件夹。 列出文件夹,写入/创建文件以保存虚拟机状态
  • .vhd 文件。 读取数据、读取属性、读取扩展属性、写入数据
  • .vnc 文件。 运行文件、读取数据、读取属性,如果虚拟机连接到虚拟网络,则读取

此参数不适用于 Hyper-V、VMware ESX 或 Citrix XenServer 主机的虚拟机。

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

-RunAsynchronously

指示作业异步运行,以便控件立即返回到命令 shell。

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

-SecureBootEnabled

指示此 cmdlet 是否启用安全启动。

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

-SecureBootTemplate

指定要用于第 2 代虚拟机的安全启动模板。

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

-StartAction

指定虚拟化服务启动时虚拟机的行为。 有效值为:

  • AlwaysAutoTurnOnVM
  • NeverAutoTurnOnVM
  • TurnOnVMIfRunningWhenVSStopped
Type:VMStartAction
Accepted values:NeverAutoTurnOnVM, AlwaysAutoTurnOnVM, TurnOnVMIfRunningWhenVSStopped
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-StopAction

指定虚拟化服务停止时虚拟机的行为。 有效值为:

  • SaveVM
  • TurnOffVM
  • ShutdownGuestOS
Type:VMStopAction
Accepted values:SaveVM, TurnOffVM, ShutdownGuestOS
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Tag

指定要与虚拟机关联的单词或短语。 可以搜索具有指定标记集的所有对象。 可以搜索标记的子集,也可以搜索完整的标记集。

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

-UseHardwareAssistedVirtualization

指示是否使用硬件辅助虚拟化(如果可用)。

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

-UserRole

指定一个用户角色对象。

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

-VirtualNumaNodesPerSocketMaximum

指定每个套接字允许的最大 NUMA 节点数。

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

-VirtualVideoAdapterEnabled

指示是否为虚拟机启用 Microsoft 合成 3D 虚拟视频适配器。 可以直接在虚拟机上或用于创建虚拟机的模板或硬件配置文件上启用虚拟视频适配器。

仅当虚拟机部署在运行 Windows Server 2008 R2 SP1 的主机上或更高版本、安装了远程桌面服务角色和远程桌面虚拟图形角色服务的主机上,或者虚拟机存储在处于停止状态的库中时,才能为虚拟机启用 Microsoft 合成 3D 虚拟视频适配器。 仅当虚拟机没有快照时,才能对存储的虚拟机进行硬件更改。 在存储在库中的虚拟机上启用 Microsoft 合成 3D 虚拟视频适配器,将该计算机的位置限制为运行 Windows Server 2008 R2 SP1 的主机,或者安装了远程桌面服务角色和远程桌面虚拟图形角色服务的更高版本。

Type:Boolean
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

-VMShieldingData

指定 VMShieldingData 对象。

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

-VMwareResourcePool

指定 VMware 资源池。 此 cmdlet 将部署在 VMware ESX 主机或私有云上的虚拟机分配给此参数指定的资源池。

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

输出

VirtualMachine

此 cmdlet 返回 VirtualMachine 对象。

备注

  • 此 cmdlet 需要 VMM 虚拟机对象,可以使用 Get-SCVirtualMachine cmdlet 检索该对象。