Set-SCHardwareProfile
更改 VMM 中使用的硬件配置文件的属性。
语法
Set-SCHardwareProfile
[-HardwareProfile] <HardwareProfile>
[-HighlyAvailable <Boolean>]
[-HAVMPriority <UInt32>]
[-DRProtectionRequired <Boolean>]
[-ReplicationGroup <ReplicationGroup>]
[-SecureBootEnabled <Boolean>]
[-NumLock <Boolean>]
[-CPULimitFunctionality <Boolean>]
[-CPULimitForMigration <Boolean>]
[-Name <String>]
[-RemoveCapabilityProfile]
[-Owner <String>]
[-UserRole <UserRole>]
[-JobGroup <Guid>]
[-CapabilityProfile <CapabilityProfile>]
[-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>]
[<CommonParameters>]
说明
Set-SCHardwareProfile cmdlet 更改 Virtual Machine Manager (VMM) 环境中使用的硬件配置文件对象的一个或多个属性。 可以更改的属性包括分配给虚拟机的主机上的启动顺序设置、CPU 设置和内存量以及其他选项。
若要更改虚拟软盘驱动器、虚拟 DVD 驱动器、虚拟 COM 端口、虚拟网络适配器或与特定硬件配置文件关联的虚拟 SCSI 适配器的属性,请分别使用 Set-SCVirtualFloppyDrive、Set-SCVirtual DVDDrive、Set-SCVirtualCOMPort、Set-SCVirtualNetworkAdapter 或 Set-SCVirtualScsiAdapter cmdlet。
对硬件配置文件所作的更改只会对硬件配置文件本身产生影响。 这些更改不会影响使用此配置文件创建的任何现有虚拟机。
示例
示例 1:为现有硬件配置文件指定内存量
PS C:\> $HWProfile = Get-SCHardwareProfile | where { $_.Name -eq "NewHWProfile01" }
PS C:\> Set-SCHardwareProfile -HardwareProfile $HWProfile -MemoryMB 1024
第一个命令获取名为 NewHWProfile01 的硬件配置文件对象,并将对象存储在$HWProfile变量中。
第二个命令将 NewHWProfile01 的内存值更改为 1024 MB。
示例 2:为多个硬件配置文件指定新的所有者
PS C:\> $HWProfiles = Get-SCHardwareProfile | where {$_.Name -match "Profile"}
PS C:\> ForEach ($HWProfile in $HWProfiles) {Set-SCHardwareProfile -HardwareProfile $HWProfile -Owner "Contoso\Cesar"}
第一个命令获取与搜索条件匹配的硬件配置文件对象,并将对象存储在$HWProfiles对象数组中。
第二个命令使用 ForEach 语句为数组中的每个配置文件指定一个新所有者。
有关标准 PowerShell ForEach 循环语句的详细信息,请键入 Get-Help about_ForEach
。
示例 3:为多个硬件配置文件指定新的启动顺序
PS C:\> $HWProfiles = @(Get-SCHardwareProfile | where {$_.Name -match "HWProfile"})
PS C:\> ForEach ($HWProfile in $HWProfiles) {Set-SCHardwareProfile -HardwareProfile $HWProfile -BootOrder PXEBoot,CD,IDEHardDrive,Floppy}
第一个命令获取库与搜索条件匹配的所有硬件配置文件对象, (配置文件名称包含字符串“HWProfile”) ,并将硬件配置文件对象存储在$HWProfiles对象数组中。 使用 @ 符号和括号可确保命令将结果存储在数组中,以防命令返回单个对象或$Null值。
第二个命令使用 ForEach 语句为$HWProfiles数组中的每个硬件配置文件对象指定新的启动顺序。
示例 4:搜索具有特定配置的硬件配置文件,并将文本追加到说明字段
PS C:\> $HWProfiles = @(Get-SCHardwareProfile | where {$_.CPUCount -eq 4})
PS C:\> ForEach ($HWProfile in $HWProfiles) {$Text = $HWProfile.Description; Set-SCHardwareProfile -HardwareProfile $HWProfile -Description $Text" (Contains four Processors)"}
第一个命令获取与搜索条件匹配的所有硬件配置文件对象, (CPU 计数等于 4) ,并将硬件配置文件对象存储在$HWProfiles对象数组中。
第二个命令使用 ForEach 语句循环访问$HWProfiles数组中的每个配置文件对象。 对于每个配置文件,说明文本将存储在变量 ($Text) ,然后 Set-SCHardwareProfile cmdlet 使用 Description 参数将“ (包含四个处理器) ”追加到每个$Text实例的内容。
示例 5:为现有硬件配置文件启用动态内存
PS C:\> $HWProfile = Get-SCHardwareProfile | where { $_.Name -eq "NewHWProfile05" }
PS C:\> Set-SCHardwareProfile -HardwareProfile $HWProfile -DynamicMemoryEnabled $True -MemoryMB 1024 -DynamicMemoryMaximumMB 2048
第一个命令获取名为 NewProfile5 的硬件配置文件对象,并将对象存储在$HWProfile变量中。
第二个命令为 NewHWProfile05 启用动态内存,将启动内存值更改为 1024 MB,并将最大内存值设置为 2048 MB。
参数
-AutomaticCriticalErrorAction
指定 VM 遇到严重错误时要执行的操作,并超出 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 |
-BootOrder
指定 Hyper-V 主机上虚拟机用于启动的设备的顺序(作为数组)。 有效值为:
- CD
- IDEHardDrive
- PXEBoot
- 软盘
示例格式: -BootOrder PXEBoot,IDEHardDrive,CD,Floppy
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 |
-CPUCount
指定虚拟机、硬件配置文件或模板上的 CPU 数目。
主机类型支持以下数量的 CPU:
- Hyper-V。 每个虚拟机最多四个 CPU,具体取决于来宾操作系统。
- VMware ESX。 每个虚拟机最多四个 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 功能,在部署在 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 的总资源的百分比。
示例: -CPUMaximumPercent 80
(指定 80%)
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。 高。
- VMware ESX。 高于普通。
VMware ESX。 普通 (默认) 。 1000。
VMware ESX。 正常情况下。
- VMware ESX。 低。
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
。
Type: | ProcessorType |
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)。
示例: -DiskIO 1500
(指定 1500 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。
示例格式: -DynamicMemoryTargetBufferPercentage 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 或更高版本的主机。
示例格式: -DynamicMemoryEnabled $True
Type: | Boolean |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-DynamicMemoryMaximumMB
指定在启用动态内存时可分配给虚拟机的最大内存量。 默认值为 65536。
必需:仅当虚拟机部署在运行 Windows Server 2008 R2 SP1 或更高版本的主机上,或者如果虚拟机存储在库中, (存储的虚拟机的硬件更改 (存储的虚拟机时,才能对存储的虚拟机) 启用动态内存。 如果对存储在库中的虚拟机启用动态内存,则会将该虚拟机的放置局限于运行 Windows Server 2008 R2 SP1 或更高版本的主机。
示例格式: -DynamicMemoryMaximumMB 1024
Type: | Int32 |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-DynamicMemoryMinimumMB
指定启用动态内存时可分配给虚拟机的最小内存量。 默认值为 65536。
必需:仅当虚拟机部署在运行 Windows Server 2008 R2 SP1 或更高版本的主机上,或者如果虚拟机存储在库中, (存储的虚拟机的硬件更改 (存储的虚拟机时,才能对存储的虚拟机) 启用动态内存。 如果对存储在库中的虚拟机启用动态内存,则会将该虚拟机的放置局限于运行 Windows Server 2008 R2 SP1 或更高版本的主机。
示例格式: -DynamicMemoryMinimumMB 1024
Type: | Int32 |
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 |
-HardwareProfile
指定硬件配置文件对象。
Type: | HardwareProfile |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
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 |
-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
指定此 cmdlet 分配给转换后的虚拟机的主机上的 RAM (RAM) 随机访问内存量(以 MB () MB 为单位)。 默认值为 512 MB。 对于在运行 Windows Server 2008 R2 SP1 或更高版本的主机上启用动态内存的虚拟机,请指定启动内存值。
主机类型具有以下可分配给虚拟机的最大内存:
- 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 节点的最大内存量(以 MB 为单位)。
Type: | Int32 |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-MemoryWeight
指明向虚拟机分配内存的优先级(相对于同一主机上的其他虚拟机)。 设置较高的虚拟机所分配到的内存资源比设置较低的虚拟机多。
对于运行 Windows Server 2008 R2 SP1 或更高版本的主机:
- 5000 - 正常
- 10000 - 高
- 0 - 低
- 1 到 10000 - 自定义
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。
示例格式: -MonitorResolutionMaximum "1600x1200"
Type: | String |
Aliases: | MonitorResolutionMaximum |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Name
指定 VMM 对象的名称。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-NetworkUtilizationMbps
指定,以兆比特/秒为单位 (Mbps) ,主机网络上可由特定虚拟机使用的带宽量。
示例格式: -NetworkUtilization 10
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
指示是否在用于在 Hyper-V 主机上创建虚拟机的硬件配置文件上为 NumLock 启用 BIOS 值。 此参数不适用于 VMware ESX 主机上或 Citrix XenServer 主机上的虚拟机。
Type: | Boolean |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Owner
以一个有效的域用户帐户形式指定 VMM 对象的所有者。
- 示例格式:
-Owner "Contoso\PattiFuller"
- 示例格式:
-Owner "PattiFuller@Contoso"
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 |
-RecoveryPointObjective
指定因重大事件而无法容忍从 IT 服务丢失数据的最大时间段。
Type: | Int32 |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-RemoveCapabilityProfile
删除一个或多个指定的功能配置文件对象。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ReplicationGroup
指定 ReplicationGroup 对象。
Type: | ReplicationGroup |
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
指示是否启用了安全启动。
Type: | Boolean |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-SecureBootTemplate
指定安全启动模板。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-UserRole
指定一个用户角色对象。
Type: | UserRole |
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 的主机, (安装了远程桌面服务角色和已安装) 或更高版本的远程桌面虚拟图形角色服务。
示例格式: -VirtualVideoAdapterEnabled $True
Type: | Boolean |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
输出
HardwareProfile
此 cmdlet 返回 HardwareProfile 对象。