New-SCVMTemplate
创建用于创建 VMM 管理的虚拟机的虚拟机模板。
语法
New-SCVMTemplate
[-HighlyAvailable \<Boolean\>]
[-DRProtectionRequired \<Boolean\>]
[-VMMServer <ServerConnection>]
[-ApplicationProfile <ApplicationProfile>]
[-SQLProfile <SQLProfile>]
[-Generation <Int32>]
[-GuiRunOnceCommands <String[]>]
[-MergeAnswerFile \<Boolean\>]
[-AnswerFile <Script>]
[-OperatingSystem <OperatingSystem>]
[-LinuxAdministratorSSHKey <SSHKey>]
[-LinuxAdministratorSSHKeyString <String>]
[-LinuxDomainName <String>]
[-RecoveryPointObjective <Int32>]
[-ProtectionProvider <ProtectionProvider>]
[-ReplicationGroup <ReplicationGroup>]
[-Shielded \<Boolean\>]
[-DeploymentTypeNano \<Boolean\>]
[-NoCustomization]
[-Name] <String>
[-Description <String>]
[-Owner <String>]
[-UserRole <UserRole>]
[-HardwareProfile <HardwareProfile>]
[-GuestOSProfile <GuestOSProfile>]
[-MemoryMB <Int32>]
[-DynamicMemoryEnabled \<Boolean\>]
[-DynamicMemoryMaximumMB <Int32>]
[-DynamicMemoryBufferPercentage <Int32>]
[-MemoryWeight <Int32>]
[-VirtualVideoAdapterEnabled \<Boolean\>]
[-MonitorMaximumCount <Int32>]
[-MonitorMaximumResolution <String>]
[-CPUCount <Byte>]
[-CPUType <ProcessorType>]
[-CPURelativeWeight <Int32>]
[-CapabilityProfile <CapabilityProfile>]
[-HAVMPriority <UInt32>]
[-CPUPerVirtualNumaNodeMaximum <Byte>]
[-MemoryPerVirtualNumaNodeMaximumMB <Int32>]
[-VirtualNumaNodesPerSocketMaximum <Byte>]
[-CPUReserve <UInt16>]
[-CPUMaximumPercent <Int32>]
[-DynamicMemoryMinimumMB <Int32>]
[-NumaIsolationRequired \<Boolean\>]
[-AutomaticCriticalErrorAction <UInt16>]
[-AutomaticCriticalErrorActionTimeout <Int32>]
[-CheckpointType <CheckpointType>]
[-SecureBootEnabled \<Boolean\>]
[-SecureBootTemplate <String>]
[-FullName <String>]
[-OrganizationName <String>]
[-ComputerName <String>]
[-ProductKey <String>]
[-LocalAdministratorCredential <VMMCredential>]
[-TimeZone <Int32>]
[-RemoveServerFeatures]
[-Domain <String>]
[-DomainJoinCredential <VMMCredential>]
[-Workgroup <String>]
[-AutoLogonCredential <RunAsAccount>]
[-AutoLogonCount <UInt32>]
[-DisableAutoLogon]
[-UnattendSettings <System.Collections.Generic.Dictionary`2[System.String,System.String]>]
[-DomainJoinOrganizationalUnit <String>]
[-RemoveDomainJoinOrganizationalUnit]
-JobGroup <Guid>
[-RunAsynchronously]
[-PROTipID <Guid>]
[-JobVariable <String>]
[<CommonParameters>]
New-SCVMTemplate
[-HighlyAvailable \<Boolean\>]
[-DRProtectionRequired \<Boolean\>]
[-ApplicationProfile <ApplicationProfile>]
[-SQLProfile <SQLProfile>]
[-Generation <Int32>]
[-GuiRunOnceCommands <String[]>]
[-MergeAnswerFile \<Boolean\>]
[-AnswerFile <Script>]
[-OperatingSystem <OperatingSystem>]
[-LinuxAdministratorSSHKey <SSHKey>]
[-LinuxAdministratorSSHKeyString <String>]
[-LinuxDomainName <String>]
[-RecoveryPointObjective <Int32>]
[-ProtectionProvider <ProtectionProvider>]
[-ReplicationGroup <ReplicationGroup>]
[-Shielded \<Boolean\>]
[-DeploymentTypeNano \<Boolean\>]
-VirtualHardDisk <StandaloneVirtualHardDisk>
[-NoCustomization]
[-Name] <String>
[-Description <String>]
[-Owner <String>]
[-UserRole <UserRole>]
[-HardwareProfile <HardwareProfile>]
[-GuestOSProfile <GuestOSProfile>]
[-MemoryMB <Int32>]
[-DynamicMemoryEnabled \<Boolean\>]
[-DynamicMemoryMaximumMB <Int32>]
[-DynamicMemoryBufferPercentage <Int32>]
[-MemoryWeight <Int32>]
[-VirtualVideoAdapterEnabled \<Boolean\>]
[-MonitorMaximumCount <Int32>]
[-MonitorMaximumResolution <String>]
[-CPUCount <Byte>]
[-CPUType <ProcessorType>]
[-CPURelativeWeight <Int32>]
[-CapabilityProfile <CapabilityProfile>]
[-HAVMPriority <UInt32>]
[-CPUPerVirtualNumaNodeMaximum <Byte>]
[-MemoryPerVirtualNumaNodeMaximumMB <Int32>]
[-VirtualNumaNodesPerSocketMaximum <Byte>]
[-CPUReserve <UInt16>]
[-CPUMaximumPercent <Int32>]
[-DynamicMemoryMinimumMB <Int32>]
[-NumaIsolationRequired \<Boolean\>]
[-AutomaticCriticalErrorAction <UInt16>]
[-AutomaticCriticalErrorActionTimeout <Int32>]
[-CheckpointType <CheckpointType>]
[-SecureBootEnabled \<Boolean\>]
[-SecureBootTemplate <String>]
[-FullName <String>]
[-OrganizationName <String>]
[-ComputerName <String>]
[-ProductKey <String>]
[-LocalAdministratorCredential <VMMCredential>]
[-TimeZone <Int32>]
[-RemoveServerFeatures]
[-Domain <String>]
[-DomainJoinCredential <VMMCredential>]
[-Workgroup <String>]
[-AutoLogonCredential <RunAsAccount>]
[-AutoLogonCount <UInt32>]
[-DisableAutoLogon]
[-UnattendSettings <System.Collections.Generic.Dictionary`2[System.String,System.String]>]
[-DomainJoinOrganizationalUnit <String>]
[-RemoveDomainJoinOrganizationalUnit]
[-JobGroup <Guid>]
[-RunAsynchronously]
[-PROTipID <Guid>]
[-JobVariable <String>]
[<CommonParameters>]
New-SCVMTemplate
[-HighlyAvailable \<Boolean\>]
[-DRProtectionRequired \<Boolean\>]
[-ApplicationProfile <ApplicationProfile>]
[-SQLProfile <SQLProfile>]
[-GuiRunOnceCommands <String[]>]
[-MergeAnswerFile \<Boolean\>]
[-AnswerFile <Script>]
[-OperatingSystem <OperatingSystem>]
[-LinuxAdministratorSSHKey <SSHKey>]
[-LinuxAdministratorSSHKeyString <String>]
[-LinuxDomainName <String>]
[-RecoveryPointObjective <Int32>]
[-ProtectionProvider <ProtectionProvider>]
[-ReplicationGroup <ReplicationGroup>]
[-DeploymentTypeNano \<Boolean\>]
-VMTemplate <Template>
[-Name] <String>
[-Description <String>]
[-Owner <String>]
[-UserRole <UserRole>]
[-HardwareProfile <HardwareProfile>]
[-GuestOSProfile <GuestOSProfile>]
[-MemoryMB <Int32>]
[-DynamicMemoryEnabled \<Boolean\>]
[-DynamicMemoryMaximumMB <Int32>]
[-DynamicMemoryBufferPercentage <Int32>]
[-MemoryWeight <Int32>]
[-VirtualVideoAdapterEnabled \<Boolean\>]
[-MonitorMaximumCount <Int32>]
[-MonitorMaximumResolution <String>]
[-CPUCount <Byte>]
[-CPUType <ProcessorType>]
[-CPURelativeWeight <Int32>]
[-CapabilityProfile <CapabilityProfile>]
[-HAVMPriority <UInt32>]
[-CPUPerVirtualNumaNodeMaximum <Byte>]
[-MemoryPerVirtualNumaNodeMaximumMB <Int32>]
[-VirtualNumaNodesPerSocketMaximum <Byte>]
[-CPUReserve <UInt16>]
[-CPUMaximumPercent <Int32>]
[-DynamicMemoryMinimumMB <Int32>]
[-NumaIsolationRequired \<Boolean\>]
[-SecureBootEnabled \<Boolean\>]
[-SecureBootTemplate <String>]
[-FullName <String>]
[-OrganizationName <String>]
[-ComputerName <String>]
[-ProductKey <String>]
[-LocalAdministratorCredential <VMMCredential>]
[-TimeZone <Int32>]
[-RemoveServerFeatures]
[-Domain <String>]
[-DomainJoinCredential <VMMCredential>]
[-Workgroup <String>]
[-AutoLogonCredential <RunAsAccount>]
[-AutoLogonCount <UInt32>]
[-DisableAutoLogon]
[-UnattendSettings <System.Collections.Generic.Dictionary`2[System.String,System.String]>]
[-DomainJoinOrganizationalUnit <String>]
[-RemoveDomainJoinOrganizationalUnit]
[-JobGroup <Guid>]
[-RunAsynchronously]
[-PROTipID <Guid>]
[-JobVariable <String>]
[<CommonParameters>]
New-SCVMTemplate
[-HighlyAvailable \<Boolean\>]
[-DRProtectionRequired \<Boolean\>]
[-ApplicationProfile <ApplicationProfile>]
[-SQLProfile <SQLProfile>]
[-GuiRunOnceCommands <String[]>]
[-MergeAnswerFile \<Boolean\>]
[-AnswerFile <Script>]
[-OperatingSystem <OperatingSystem>]
[-LinuxAdministratorSSHKey <SSHKey>]
[-LinuxDomainName <String>]
[-RecoveryPointObjective <Int32>]
[-ProtectionProvider <ProtectionProvider>]
[-ReplicationGroup <ReplicationGroup>]
[-DeploymentTypeNano \<Boolean\>]
[-Name] <String>
[-Description <String>]
[-Owner <String>]
[-UserRole <UserRole>]
[-HardwareProfile <HardwareProfile>]
[-GuestOSProfile <GuestOSProfile>]
[-MemoryMB <Int32>]
[-DynamicMemoryEnabled \<Boolean\>]
[-DynamicMemoryMaximumMB <Int32>]
[-DynamicMemoryBufferPercentage <Int32>]
[-MemoryWeight <Int32>]
[-VirtualVideoAdapterEnabled \<Boolean\>]
[-MonitorMaximumCount <Int32>]
[-MonitorMaximumResolution <String>]
[-CPUCount <Byte>]
[-CPUType <ProcessorType>]
[-CPURelativeWeight <Int32>]
[-CapabilityProfile <CapabilityProfile>]
[-HAVMPriority <UInt32>]
[-CPUPerVirtualNumaNodeMaximum <Byte>]
[-MemoryPerVirtualNumaNodeMaximumMB <Int32>]
[-VirtualNumaNodesPerSocketMaximum <Byte>]
[-CPUReserve <UInt16>]
[-CPUMaximumPercent <Int32>]
[-DynamicMemoryMinimumMB <Int32>]
[-NumaIsolationRequired \<Boolean\>]
[-SecureBootEnabled \<Boolean\>]
[-SecureBootTemplate <String>]
[-FullName <String>]
[-OrganizationName <String>]
[-ComputerName <String>]
[-ProductKey <String>]
[-LocalAdministratorCredential <VMMCredential>]
[-TimeZone <Int32>]
[-RemoveServerFeatures]
[-Domain <String>]
[-DomainJoinCredential <VMMCredential>]
[-Workgroup <String>]
[-AutoLogonCredential <RunAsAccount>]
[-AutoLogonCount <UInt32>]
[-DisableAutoLogon]
[-UnattendSettings <System.Collections.Generic.Dictionary`2[System.String,System.String]>]
[-DomainJoinOrganizationalUnit <String>]
[-RemoveDomainJoinOrganizationalUnit]
[-RunAsynchronously]
[-PROTipID <Guid>]
[-JobVariable <String>]
[<CommonParameters>]
New-SCVMTemplate
[-HighlyAvailable \<Boolean\>]
[-DRProtectionRequired \<Boolean\>]
[-ApplicationProfile <ApplicationProfile>]
[-SQLProfile <SQLProfile>]
[-GuiRunOnceCommands <String[]>]
[-MergeAnswerFile \<Boolean\>]
[-AnswerFile <Script>]
[-OperatingSystem <OperatingSystem>]
[-LinuxAdministratorSSHKeyString <String>]
[-LinuxDomainName <String>]
[-RecoveryPointObjective <Int32>]
[-ProtectionProvider <ProtectionProvider>]
[-ReplicationGroup <ReplicationGroup>]
[-DeploymentTypeNano \<Boolean\>]
[-Name] <String>
[-Description <String>]
[-Owner <String>]
[-UserRole <UserRole>]
[-HardwareProfile <HardwareProfile>]
[-GuestOSProfile <GuestOSProfile>]
[-MemoryMB <Int32>]
[-DynamicMemoryEnabled \<Boolean\>]
[-DynamicMemoryMaximumMB <Int32>]
[-DynamicMemoryBufferPercentage <Int32>]
[-MemoryWeight <Int32>]
[-VirtualVideoAdapterEnabled \<Boolean\>]
[-MonitorMaximumCount <Int32>]
[-MonitorMaximumResolution <String>]
[-CPUCount <Byte>]
[-CPUType <ProcessorType>]
[-CPURelativeWeight <Int32>]
[-CapabilityProfile <CapabilityProfile>]
[-HAVMPriority <UInt32>]
[-CPUPerVirtualNumaNodeMaximum <Byte>]
[-MemoryPerVirtualNumaNodeMaximumMB <Int32>]
[-VirtualNumaNodesPerSocketMaximum <Byte>]
[-CPUReserve <UInt16>]
[-CPUMaximumPercent <Int32>]
[-DynamicMemoryMinimumMB <Int32>]
[-NumaIsolationRequired \<Boolean\>]
[-SecureBootEnabled \<Boolean\>]
[-SecureBootTemplate <String>]
[-FullName <String>]
[-OrganizationName <String>]
[-ComputerName <String>]
[-ProductKey <String>]
[-LocalAdministratorCredential <VMMCredential>]
[-TimeZone <Int32>]
[-RemoveServerFeatures]
[-Domain <String>]
[-DomainJoinCredential <VMMCredential>]
[-Workgroup <String>]
[-AutoLogonCredential <RunAsAccount>]
[-AutoLogonCount <UInt32>]
[-DisableAutoLogon]
[-UnattendSettings <System.Collections.Generic.Dictionary`2[System.String,System.String]>]
[-DomainJoinOrganizationalUnit <String>]
[-RemoveDomainJoinOrganizationalUnit]
[-RunAsynchronously]
[-PROTipID <Guid>]
[-JobVariable <String>]
[<CommonParameters>]
New-SCVMTemplate
[-HighlyAvailable \<Boolean\>]
[-DRProtectionRequired \<Boolean\>]
[-ApplicationProfile <ApplicationProfile>]
[-SQLProfile <SQLProfile>]
[-GuiRunOnceCommands <String[]>]
[-MergeAnswerFile \<Boolean\>]
[-AnswerFile <Script>]
[-OperatingSystem <OperatingSystem>]
[-LinuxDomainName <String>]
[-RecoveryPointObjective <Int32>]
[-ProtectionProvider <ProtectionProvider>]
[-ReplicationGroup <ReplicationGroup>]
[-DeploymentTypeNano \<Boolean\>]
-VM <VM>
[-BootVirtualHardDisk <VirtualHardDisk>]
[-SkipRearm]
[-LibraryServer <LibraryServer>]
[-SharePath <String>]
[-NoCustomization]
[-Name] <String>
[-Description <String>]
[-Owner <String>]
[-UserRole <UserRole>]
[-HardwareProfile <HardwareProfile>]
[-GuestOSProfile <GuestOSProfile>]
[-MemoryMB <Int32>]
[-DynamicMemoryEnabled \<Boolean\>]
[-DynamicMemoryMaximumMB <Int32>]
[-DynamicMemoryBufferPercentage <Int32>]
[-MemoryWeight <Int32>]
[-VirtualVideoAdapterEnabled \<Boolean\>]
[-MonitorMaximumCount <Int32>]
[-MonitorMaximumResolution <String>]
[-CPUCount <Byte>]
[-CPUType <ProcessorType>]
[-CPURelativeWeight <Int32>]
[-CapabilityProfile <CapabilityProfile>]
[-HAVMPriority <UInt32>]
[-CPUPerVirtualNumaNodeMaximum <Byte>]
[-MemoryPerVirtualNumaNodeMaximumMB <Int32>]
[-VirtualNumaNodesPerSocketMaximum <Byte>]
[-CPUReserve <UInt16>]
[-CPUMaximumPercent <Int32>]
[-DynamicMemoryMinimumMB <Int32>]
[-NumaIsolationRequired \<Boolean\>]
[-SecureBootEnabled \<Boolean\>]
[-SecureBootTemplate <String>]
[-FullName <String>]
[-OrganizationName <String>]
[-ComputerName <String>]
[-ProductKey <String>]
[-LocalAdministratorCredential <VMMCredential>]
[-TimeZone <Int32>]
[-RemoveServerFeatures]
[-Domain <String>]
[-DomainJoinCredential <VMMCredential>]
[-Workgroup <String>]
[-AutoLogonCredential <RunAsAccount>]
[-AutoLogonCount <UInt32>]
[-DisableAutoLogon]
[-UnattendSettings <System.Collections.Generic.Dictionary`2[System.String,System.String]>]
[-DomainJoinOrganizationalUnit <String>]
[-RemoveDomainJoinOrganizationalUnit]
[-JobGroup <Guid>]
[-RunAsynchronously]
[-PROTipID <Guid>]
[-JobVariable <String>]
[<CommonParameters>]
说明
注意
VMM 2019 UR1 及更高版本中包括 [-EnableNestedVirtualization] <布尔> 的新参数。 有关详细信息,请参阅 参数。
New-SCVMTemplate cmdlet 创建一个虚拟机模板,管理员或自助服务用户可以使用该模板创建由 Virtual Machine Manager(VMM)管理的虚拟机。 模板存储硬件配置和来宾操作系统信息,以便重复使用特定模板创建新的虚拟机。 New-SCVMTemplate cmdlet 将新模板对象存储在 VMM 库中。
可以基于现有虚拟硬盘、现有模板或当前部署在虚拟机主机上的虚拟机创建模板。 如果未指定任何参数,VMM 将创建默认模板对象。
VMM 模板要求
本部分介绍在 VMM 中创建模板的要求。
VHD 的模板。 如果从虚拟硬盘(VHD)创建模板,VHD 必须满足以下要求:
- 操作系统。
在使用虚拟硬盘创建模板之前,必须在虚拟硬盘上安装受支持的 Windows 操作系统。
有关支持的操作系统的信息,请参阅 techNet 库中的 System Center Technical Preview 操作系统兼容性
https://technet.microsoft.com/en-us/library/dn997307(v=sc.16).aspx
。
- 操作系统。
在使用虚拟硬盘创建模板之前,必须在虚拟硬盘上安装受支持的 Windows 操作系统。
有关支持的操作系统的信息,请参阅 techNet 库中的 System Center Technical Preview 操作系统兼容性
SysPrep。 必须在 VHD 上运行系统准备工具(Sysprep.exe),以确保将操作系统的每个副本分发到多个虚拟机时都是唯一的。 可以在 Windows Server 2008 或更高版本计算机上安装 Sysprep.exe 在其默认位置:C:\Windows\System32\sysprep。
本地管理员密码。 在虚拟硬盘上运行 Sysprep.exe 之前,VHD 上用于创建新模板的来宾操作系统的本地管理员密码必须为空。 需要一个空白的本地管理员密码,以便在模板上自定义来宾操作系统时,可以选择指定本地管理员密码。
虚拟机的模板。 如果从虚拟机创建模板,则会在将虚拟机转换为模板的过程中销毁该虚拟机。 如果要保留虚拟机并使用它创建模板,可以在创建模板之前克隆虚拟机。 有关如何克隆虚拟机的信息,请参阅 New-SCVirtualMachine。
Self-Service 用户的模板。 如果自助服务用户角色包含使用模板的权限,则自助服务用户无法更改任何硬件配置文件设置。 自助服务用户在使用模板创建虚拟机时可以更改的唯一设置是计算机名称,如果用户具有适当的权限、密码和产品 ID 号。
VMM 对可自定义模板或不可自定义模板的支持
如果使用 New-SCVMTemplate cmdlet 指定 NoCustomization 参数,则无需在创建模板时向模板添加来宾操作系统配置文件。 如果没有来宾操作系统配置文件,VMM 将不需要 Sysprep 在主机上部署使用此模板创建的虚拟机时在来宾操作系统中运行。
一种可能的方案是,你有一个手动 sysprepped 的虚拟硬盘,其中包含非 Windows 操作系统(或包含 VMM 无法自动 sysprep 的操作系统),并在该虚拟硬盘中嵌入一个答案文件,其中包含该操作系统的适当设置。 可以使用 New-SCVMTemplate cmdlet 从此虚拟硬盘创建模板,并指定模板不允许自定义来宾操作系统。 为此,请在创建新模板时使用 NoCustomization 参数。
在另一种方案中,可以将基于 VMware 的模板导入到 VMM 中,其中包含基于 Windows 的操作系统。 默认情况下,如果 VMM 知道如何自定义来宾操作系统,VMM 会将基于 VMware 的模板导入为可自定义的模板。 否则,模板将导入为不可自定义(例如,对于 Linux 来宾操作系统),这是事实。 如果要从此导入的、可自定义的基于 VMware 的模板创建不可自定义的基于 Windows 的模板,可以使用 New-SCVMTemplate 创建新模板,指向附加到导入模板的磁盘,然后在新模板上指定 NoCustomization 参数。
示例
示例 1:从虚拟硬盘创建虚拟机模板
PS C:\> $OS = Get-SCOperatingSystem -VMMServer "VMMServer01.Contoso.com" | where {$_.Name -eq "64-bit Edition of Windows Server 2008 R2 Datacenter"}
PS C:\> $VHD = Get-SCVirtualHardDisk -VMMServer "VMMServer01.Contoso.com" | where { $_.Name -eq "VHD01.vhd" -and $_.LibraryServer.Name -eq "LibServer01.Contoso.com" }
PS C:\> New-SCVMTemplate -Name "VMTemplate01" -VirtualHardDisk $VHD -OperatingSystem $OS -NoCustomization
第一个命令获取指定的操作系统对象(64 位版本的 Windows Server 2008 R2 Datacenter),并将对象存储在$OS变量中。
第二个命令从 LibServer01 上的 VMM 库获取名为 VHD01 的虚拟硬盘对象,并将该对象存储在$VHD变量中。
最后一个命令从 VHD01 创建名为 VMTemplate01 的虚拟机模板,并指定操作系统的名称。 不会对操作系统进行自定义。
注意:此示例假定 VHD01 是安装了 64 位版本的 Windows Server 2008 R2 Datacenter 操作系统的 SysPrepped 虚拟硬盘。 可以在虚拟机上安装虚拟化来宾服务,或者当虚拟机部署在基于 Windows 的主机上时,VMM 会自动安装它们。
示例 2:从现有虚拟机创建虚拟机模板
PS C:\> $LibraryServer = Get-SCLibraryServer | where {$_.Name -eq "LibServer01.Contoso.com"}
PS C:\> $VM = Get-SCVirtualMachine -Name "VM01" | where {$_.VMHost.Name -eq "VMHost02.Contoso.com"}
PS C:\> $OperatingSystem = Get-SCOperatingSystem | where {$_.Name -eq "64-bit Edition of Windows Server 2008 R2 Enterprise"}
PS C:\> New-SCVMTemplate -Name "VMTemplate02" -RunAsynchronously -VM $VM -Owner "Contoso\ReneeLo" -LibraryServer $LibraryServer -SharePath "\\LibServer01.Contoso.com\MSSCVMMLibrary" -OperatingSystem $OperatingSystem -NoCustomization
第一个命令获取名为 LibServer01 的库服务器对象,并将该对象存储在$LibraryServer变量中。
第二个命令获取 VMHost02 上部署的名为 VM01 的虚拟机对象,并将该对象存储在$VM变量中。
注意:VM01(将转换为模板的虚拟机)将在转换过程中销毁。 如果要保留用于创建模板的虚拟机,可以在创建模板之前使用 New-SCVirtualMachine cmdlet 克隆虚拟机。
第三个命令获取指定的操作系统对象(Windows Server 2008 R2 Enterprise),并将对象存储在$OS变量中。
最后一个命令从虚拟机 VM01 创建名为 VMTemplate02 的虚拟机模板。 它指定新模板的所有者、库服务器和共享要存储新模板的位置以及操作系统的名称,而无需对操作系统进行任何自定义。 RunAsynchronously 参数在命令完成之前立即将控件返回到 shell。
示例 3:从具有指定特征的虚拟硬盘创建虚拟机模板
PS C:\> $JobGroupId01 = [Guid]::NewGuid().ToString()
PS C:\> $LogNet = Get-SCLogicalNetwork -Name "LogicalNetwork01"
PS C:\> New-SCVirtualNetworkAdapter -JobGroup $JobGroupID01 -MACAddressType Dynamic -LogicalNetwork $LogNet
PS C:\> New-SCVirtualSCSIAdapter -JobGroup $JobGroupID01 -AdapterID 6 -Shared $False
PS C:\> New-SCVirtualDVDDrive -JobGroup $JobGroupID01 -Bus 1 -LUN 0
PS C:\> New-SCHardwareProfile -Name "TempHWProfile" -Owner "Contoso\ReneeLo" -Description "Temporary hardware profile used to create a VM Template" -MemoryMB 512 -JobGroup $JobGroupID01
PS C:\> $JobGroupId02 = [Guid]::NewGuid().ToString()
PS C:\> $VHD = Get-SCVirtualHardDisk | where {$_.Location -eq "\\VMHost01Share\VHDs\Template.vhd"} | where {$_.HostName -eq "VMHost01.Contoso.com"}
PS C:\> New-SCVirtualDiskDrive -IDE -Bus 0 -LUN 0 -JobGroup $JobGroupID02 -VirtualHardDisk $VHD
PS C:\> $HWProfile = Get-SCHardwareProfile | where { $_.Name -eq "TempHWProfile" }
PS C:\> $OS = Get-SCOperatingSystem | where {$_.Name -eq "64-bit Edition of Windows Server 2008 R2 Enterprise"}
PS C:\> New-SCVMTemplate -Name "NewTemplate03" -Owner "Contoso\ReneeLo" -HardwareProfile $HWProfile -JobGroup $JobGroupID02 -ComputerName "*" -JoinWorkgroup "WORKGROUP" -OperatingSystem $OS -RunAsynchronously
第一个命令生成全局唯一标识符(GUID),并将 GUID 字符串存储在变量$JobGroupID 01 中。 作业组 ID 充当标识符,用于将后续命令(包括$JobGroupID 01)分组到单个作业组中。
第二个命令获取名为 LogicalNetwork01 的逻辑网络对象,并将该对象存储在$LogNet变量中。
第三个命令创建一个虚拟网络适配器,并使用 JobGroup 参数来指示在运行 New-SCHardwareProfile cmdlet 之前不会创建网络适配器。 New-SCVirtualNetworkAdapter cmdlet 将 MAC 地址类型设置为动态,并指定新的虚拟网络适配器将连接到存储在$LogNet中的逻辑网络。
第四个命令创建虚拟 SCSI 适配器,并使用 JobGroup 参数指示在 运行 new-SCHardwareProfile cmdlet 之前,不会创建 SCSI 适配器。 New-SCVirtualScsiAdapter cmdlet 将适配器 ID 设置为 6,并将 Shared 参数设置为$False以便适配器不共享,因此,如果要在来宾群集中使用适配器,则需要这样做。
第五个命令创建虚拟 DVD 驱动器,并使用 JobGroup 参数指定在运行 New-SCHardwareProfile cmdlet 之前不会创建 DVD 驱动器。 New-SCVirtual DVDDrive cmdlet 指定总线 1 和 LUN 0,用于将虚拟 DVD 驱动器附加到 IDE 总线上的辅助通道 (0)。
第六个命令创建名为 TempHWProfile 的硬件配置文件,将所有者设置为 Contoso\ReneeLo,指定说明,并且使用此模板创建的虚拟机的主机上的内存量将为 512 MB。 New-SCHardwareProfile cmdlet 使用 JobGroup 参数指定所有包含变量$JobGroupID 01 的上述命令将在 New-SCHardwareProfile 创建新的硬件配置文件之前运行。 New-SCVirtualNetworkAdapter、New-SCVirtualSCSIAdapter,New-SCVirtualDVDDrive 运行后,创建生成的对象将自动与新的硬件配置文件相关联。
第七个命令生成新的 GUID 并将其存储在 $JobGroupID 02 中。 此作业组 ID 将用于标识包含此 ID 的任何后续命令,并将延迟运行这些命令,直到指定$JobGroupID 02 运行的最后一个命令之前。
第八个命令使用 Get-SCVirtualHardDisk cmdlet 获取名为 Template.vhd、VMHost01 上的 VHD 的虚拟硬盘对象,并将对象存储在$VHD变量中。
第九个命令将创建新的虚拟磁盘驱动器,并将存储在 $VHD(Template.vhd)中的虚拟硬盘附加到此新的虚拟磁盘驱动器。 该命令指定 IDE 总线上的总线 0 和 LUN 0,以便 Template.vhd 将附加到新虚拟磁盘驱动器的 IDE 总线上主通道(0)的第一个槽(0)。 该命令使用 JobGroup 参数指定在最后一个命令中运行 New-SCVMTemplate cmdlet 之前,不会创建新的虚拟磁盘驱动器。
第十个命令从 VMM 库获取表示名为 TempHWProfile 的硬件配置文件的硬件配置文件对象,并将对象存储在$HWProfile变量中。
第十一个命令获取指定的操作系统对象(64 位版本的 Windows Server 2008 R2 Enterprise),并将对象存储在$OS变量中。
最后一个命令创建名为 NewTemplate03 的虚拟机模板,将所有者设置为 Contoso\ReneeLo,指定此模板将使用名为 TempHWProfile 的硬件配置文件,将计算机名称设置为随机生成(由星号 *指示),并指定使用此模板创建的任何虚拟机将加入名为 WORKGROUP 的工作组。 New-SCVMTemplate cmdlet 使用 JobGroup 参数指定在 New-SCVMTemplate 创建新模板之前运行变量$JobGroupID 02 的所有上述命令。 Add-SCVirtualHardDisk 运行后,生成的虚拟硬盘对象将自动与新模板相关联。
示例 4:创建虚拟机模板,并将 DRProtectionRequired 参数设置为$True
PS C:\> $OS = Get-SCOperatingSystem -VMMServer "VMMServer01.Contoso.com" | where {$_.Name -eq "Windows Server 2016"}
PS C:\> $VHDX = Get-SCVirtualHardDisk -VMMServer "VMMServer01.Contoso.com" | where { $_.Name -eq "VHDX01.vhdx" -and $_.LibraryServer.Name -eq "LibServer01.Contoso.com" }
PS C:\> New-SCVMTemplate -Name "VMTemplate04" -VirtualHardDisk $VHDX -OperatingSystem $OS -DRProtectionRequired $True
第一个命令获取名为 Windows Server 2016 的操作系统,并将其存储在$OS变量中。
第二个命令从 VMM 库获取名为 VHDX01 的虚拟硬盘对象,并将该对象存储在$VHDX变量中。
最后一个命令创建名为 VMTemplate04 的虚拟机模板,该模板需要对此模板创建的虚拟机进行 DR 保护。
示例 5:从虚拟硬盘创建可自定义的 Linux 虚拟机模板
谨慎
本文引用了 CentOS,这是已达到生命周期结束(EOL)状态的 Linux 分发版。 请考虑你的使用并相应地进行规划。 有关详细信息,请参阅 CentOS 生命周期指南。
PS C:\> $OS = Get-SCOperatingSystem -VMMServer "VMMServer01.Contoso.com" | where {$_.Name -eq "CentOS Linux 6 (64 bit)"}
PS C:\> $VHD = Get-SCVirtualHardDisk -VMMServer "VMMServer01.Contoso.com" | where { $_.Name -eq "LinuxVHD01.vhd" -and $_.LibraryServer.Name -eq "LibServer01.Contoso.com" }
PS C:\> New-SCVMTemplate -Name "LinuxVMTemplate01" -VirtualHardDisk $VHD -OperatingSystem $OS
第一个命令获取指定的操作系统对象(CentOS Linux 6(64 位)并将对象存储在$OS变量中。
第二个命令从 LibServer01 上的 VMM 库获取名为 LinuxVHD01 的虚拟硬盘对象,并将该对象存储在$VHD变量中。
最后一个命令从 LinuxVHD01 创建名为 LinuxVMTemplate01 的虚拟机模板,并指定操作系统的名称。
参数
-AnswerFile
指定存储在 Virtual Machine Manager (VMM) 库中的脚本对象,以用作应答文件。 答案文件脚本的名称取决于要在虚拟机上安装的操作系统:
- Sysprep.inf. Windows XP、Windows Server 2000 或 Windows Server 2003
- Unattend.xml。 Windows Vista、Windows 7 或 Windows Server 2008
类型: | Script |
别名: | SysPrepFile |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | True |
接受通配符: | False |
-ApplicationProfile
指定应用程序配置文件对象。
类型: | ApplicationProfile |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-AutoLogonCount
指定 Windows 应自动将应答文件中指定的管理员记录到控制台会话的次数。
类型: | UInt32 |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-AutoLogonCredential
指定在启用自动管理员登录时 Windows 用于登录到控制台会话的应答文件中包含的运行方式帐户。
类型: | RunAsAccount |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-AutomaticCriticalErrorAction
指定虚拟机遇到严重错误时要执行的操作,并超出 AutomaticCriticalErrorActionTimeout 参数指定的超时持续时间。 此参数的可接受值为:Pause 和 None。
类型: | UInt16 |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-AutomaticCriticalErrorActionTimeout
指定在关闭虚拟机之前在关键暂停中等待的时间量(以分钟为单位)。
类型: | Int32 |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-BootVirtualHardDisk
指定包含创建新模板时要使用的操作系统文件的虚拟硬盘。
类型: | VirtualHardDisk |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-CapabilityProfile
指定功能配置文件对象。
类型: | CapabilityProfile |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-CheckpointType
指定检查点类型。 此参数的可接受值为:
- 禁用
- 生产
- ProductionOnly
- 标准
类型: | CheckpointType |
接受的值: | Disabled, Production, ProductionOnly, Standard |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-ComputerName
指定 VMM 可以在网络上唯一标识的计算机的名称。 此参数的可接受值为:
- FQDN
- IPv4 或 IPv6 地址
- NetBIOS 名称
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-CPUCount
指定虚拟机、硬件配置文件或模板上的 CPU 数。
主机类型支持以下数量的 CPU:
- Hyper-V。 每个虚拟机最多四个 CPU,具体取决于来宾操作系统。
- VMware ESX。 每个虚拟机最多四个 CPU,但运行 Windows NT 4.0 的虚拟机上只有一个 CPU。
- Citrix XenServer。 每个虚拟机最多 8 个 CPU,具体取决于来宾操作系统。
类型: | Byte |
别名: | ProcessorCount |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-CPUMaximumPercent
指定主机上单个 CPU 的总资源的最大百分比,该资源可在任何给定时间由特定虚拟机使用。
示例:-CPUMaximumPercent 80
(指定 80%)
类型: | Int32 |
别名: | CPUMax |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-CPUPerVirtualNumaNodeMaximum
指定每个虚拟 NUMA 节点允许的最大 CPU 数。
类型: | Byte |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | 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。
类型: | Int32 |
别名: | RelativeWeight |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-CPUReserve
指定要分配给虚拟机的主机上单个 CPU 的资源的最小百分比。 虚拟机可用的 CPU 容量百分比永远不会小于此百分比。
类型: | UInt16 |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-CPUType
指定虚拟机的 CPU 类型。
若要检索可用于 VMM 环境中的虚拟机的所有 CPU 类型的列表,请键入 Get-SCCPUType
。
类型: | ProcessorType |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-DeploymentTypeNano
{{Fill DeploymentTypeNano Description}}
类型: | Boolean |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-Description
指定虚拟机模板的说明。
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-DisableAutoLogon
指示此 cmdlet 禁用自动管理员登录。
类型: | SwitchParameter |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-Domain
指定 Active Directory 域的完全限定域名(FQDN)。
示例格式:-Domain "Domain01.Corp.Contoso.com"
类型: | String |
别名: | JoinDomain |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-DomainJoinCredential
指定有权将计算机加入域的帐户的用户名和密码。 建议使用有限权限帐户将计算机加入域。 这包括虚拟计算机和物理计算机。
可以使用当前参数在 VMHostProfile 上指定凭据,以便将物理主机加入域,或者在新的或现有模板、新的或现有的来宾操作系统配置文件或新虚拟机上指定凭据,以便将虚拟机加入域。
类型: | VMMCredential |
别名: | JoinDomainCredential |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-DomainJoinOrganizationalUnit
指定在无人参与的微型设置期间计算机加入到的组织单位。
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-DRProtectionRequired
此参数保留供将来使用。
类型: | Boolean |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-DynamicMemoryBufferPercentage
指定虚拟机当前内存分配上方的内存百分比,主机应尝试将其保留为缓冲区。 默认值为 20。
示例格式:-DynamicMemoryTargetBufferPercentage 20
类型: | Int32 |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-DynamicMemoryEnabled
启用在设置为$True虚拟机的动态内存时启用。 可以直接在虚拟机上启用动态内存,也可以在将用于创建虚拟机的模板或硬件配置文件上启用动态内存。 默认值为 False。
必需:仅当虚拟机部署在运行 Windows Server 2008 SP1 或更高版本的主机上,或者虚拟机存储在处于停止状态的库中(仅当虚拟机没有快照时,才能为虚拟机启用动态内存)。 在存储在库中的虚拟机上启用动态内存会将该计算机的位置限制为运行 Windows Server 2008 SP1 或更高版本的主机。
示例格式:-DynamicMemoryEnabled $True
类型: | Boolean |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-DynamicMemoryMaximumMB
指定启用动态内存时可以分配给虚拟机的最大内存量。 默认值为 65536。
必需:仅当虚拟机部署在运行 Windows Server 2008 R2 SP1 或更高版本的主机上,或者虚拟机存储在处于停止状态的库中时,才能为虚拟机启用动态内存(仅当虚拟机没有快照时,才能对存储的虚拟机进行硬件更改)。 在存储在库中的虚拟机上启用动态内存会将该计算机的位置限制为运行 Windows Server 2008 R2 SP1 或更高版本的主机。
示例格式:-DynamicMemoryMaximumMB 1024
类型: | Int32 |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-DynamicMemoryMinimumMB
指定启用动态内存时可以分配给虚拟机的最小内存量。 默认值为 65536。
必需:仅当虚拟机部署在运行 Windows Server 2008 R2 SP1 或更高版本的主机上,或者虚拟机存储在处于停止状态的库中时,才能为虚拟机启用动态内存(仅当虚拟机没有快照时,才能对存储的虚拟机进行硬件更改)。 在存储在库中的虚拟机上启用动态内存会将该计算机的位置限制为运行 Windows Server 2008 R2 SP1 或更高版本的主机。
示例格式:-DynamicMemoryMinimumMB 1024
类型: | Int32 |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-EnableNestedVirtualization
启用嵌套虚拟化。
注意
此参数适用于 VMM 2019 UR1 及更高版本。
类型: | Boolean |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-FullName
指定注册虚拟机名称的人员的名称。
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-Generation
指示创建的虚拟机的生成。
类型: | Int32 |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-GuestOSProfile
指定来宾操作系统配置文件对象。
类型: | GuestOSProfile |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-GuiRunOnceCommands
指定要添加到无人参与应答文件的 [GuiRunOnce] 节的命令数组。 在用双引号括住的每个字符串周围使用单引号。
示例格式:-GuiRunOnceCommands '"C:\APF\APFPostSysPrepCopy.cmd PARAMS1"', '"C:\APF\APFPostSysPrepCopy.cmd PARAMS1"'
有关 Windows PowerShell 如何使用引号的信息,请键入 Get-Help about_Quoting_Rules
。
类型: | String[] |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-HardwareProfile
指定硬件配置文件对象。
类型: | HardwareProfile |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-HAVMPriority
指定虚拟机优先级。 虚拟机按优先级顺序开始,达到主机群集节点的限制。 此参数的有效输入是优先级的数字表示形式:
- 高。 3000
- 中等。 2000
- 低。 1000
如果指定值为零(0),则虚拟机不会自动重启。
类型: | UInt32 |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-HighlyAvailable
指示是否将虚拟机放置在属于主机群集的 Hyper-V 主机上。 在虚拟机或用于创建虚拟机的模板或硬件配置文件上配置此设置。
类型: | Boolean |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-JobGroup
指定一系列命令的标识符,该命令将在包含相同作业组标识符的最终命令运行之前作为集运行。
类型: | Guid |
Position: | Named |
默认值: | None |
必需: | True |
接受管道输入: | False |
接受通配符: | False |
-JobVariable
指定在此参数命名的变量中跟踪和存储作业进度。
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-LibraryServer
指定 VMM 库服务器对象。
类型: | LibraryServer |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-LinuxAdministratorSSHKey
指定 Linux SSH 密钥的公钥文件。
类型: | SSHKey |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-LinuxAdministratorSSHKeyString
将 Linux 管理员 SSH 密钥指定为字符串。
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-LinuxDomainName
指定要与 Linux 操作系统专用化结合使用的完全限定域名(FQDN)。
示例格式:-LinuxDomainName "Domain01.Corp.Contoso.com"
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-LocalAdministratorCredential
指定本地管理员帐户(或 Linux 根帐户(在 Linux 兼容的来宾操作系统配置文件的情况下)的用户名和密码。
在新的或现有的模板、新的或现有的来宾操作系统配置文件或新虚拟机上指定凭据会替代任何现有的管理员密码。
类型: | VMMCredential |
别名: | AdminPasswordCredential |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-MemoryMB
指定此 cmdlet 分配给转换后的虚拟机的主机上的随机访问内存(RAM),以兆字节(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。
类型: | Int32 |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-MemoryPerVirtualNumaNodeMaximumMB
指定允许每个虚拟 NUMA 节点的最大内存量(以 MB 为单位)。
类型: | Int32 |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-MemoryWeight
指示将内存分配给虚拟机的优先级,相对于同一主机上的其他虚拟机。 具有较高设置的虚拟机分配的内存资源比具有较低设置的虚拟机分配的内存资源更多。
对于运行 Windows Server 2008 R2 SP1 或更高版本的主机,5000 = 普通,10000 = 高,0 = 低,1 到 10000 = 自定义。
类型: | Int32 |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-MergeAnswerFile
指示此 cmdlet 是否将应答文件与来宾操作系统设置合并。 默认值为$True。 VMM 控制台使用此参数。 请勿指定此参数。
类型: | Boolean |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-MonitorMaximumCount
指定虚拟视频适配器支持的最大监视器数。
类型: | Int32 |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-MonitorMaximumResolution
将值指定为字符串,该值表示虚拟视频适配器的最大可能的监视器分辨率。 此参数的可接受值为:
- 1024x768
- 1280x1024
- 1600x1200
- 1920x1200
默认值为 1280x1024。
示例格式:-MonitorMaximumResolution "1600x1200"
类型: | String |
别名: | MonitorResolutionMaximum |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-Name
指定 VMM 对象的名称。
类型: | String |
Position: | 0 |
默认值: | None |
必需: | True |
接受管道输入: | True |
接受通配符: | False |
-NoCustomization
指定无法自定义此模板上的来宾操作系统设置。
类型: | SwitchParameter |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-NumaIsolationRequired
指示是否需要 NUMA 隔离。
类型: | Boolean |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-OperatingSystem
指定虚拟机的操作系统类型。
若要列出 VMM 中所有可用操作系统的名称,请键入 Get-SCOperatingSystem
。
类型: | OperatingSystem |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-OrganizationName
指定注册虚拟机名称的人员的组织名称。
类型: | String |
别名: | OrgName |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-Owner
以有效的域用户帐户的形式指定 VMM 对象的所有者。
- 示例格式:
-Owner "Contoso\PattiFuller"
- 示例格式:
-Owner "PattiFuller@Contoso"
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-ProductKey
指定产品密钥。 产品密钥是标识产品许可证的 25 位数字。 产品密钥可用于注册 VMM 或要安装在虚拟机或主机上的操作系统。
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-ProtectionProvider
指定保护提供程序。
类型: | ProtectionProvider |
接受的值: | None, HVR8, HVRBlue, HVRAzure, DiskReplication, SANReplication |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-PROTipID
指定触发此操作的性能和资源优化提示(PRO 提示)的 ID。 此参数允许你审核 PRO 提示。
类型: | Guid |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-RecoveryPointObjective
指定由于重大事件而无法容忍从 IT 服务丢失数据的最大时间段。
类型: | Int32 |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-RemoveDomainJoinOrganizationalUnit
删除计算机在安装过程中加入的组织单位(OU)。
类型: | SwitchParameter |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-RemoveServerFeatures
从模板中删除所有服务器角色和功能。
类型: | SwitchParameter |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-ReplicationGroup
指定复制组。
类型: | ReplicationGroup |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-RunAsynchronously
指示作业以异步方式运行,以便控件立即返回到命令行界面。
类型: | SwitchParameter |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-SecureBootEnabled
指示是否启用了安全启动。
类型: | Boolean |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-SecureBootTemplate
指定要用于第 2 代虚拟机的安全启动模板。
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-SharePath
指定使用通用命名约定 (UNC) 路径的现有库服务器上的有效库共享的路径。
示例格式:-SharePath "\\LibServer01\LibShare"
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-Shielded
指示对象是否受到防护。
类型: | Boolean |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-SkipRearm
跳过运行 Windows 软件许可重排计划。 此计划将 Windows 操作系统还原为其原始的现用许可状态。
重要说明:请参阅有关激活和重排计划的许可协议。 使用此参数可能会违反许可协议。
类型: | SwitchParameter |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-SQLProfile
指定 SQL Server 配置文件对象。
类型: | SQLProfile |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-TimeZone
指定一个数字(索引),用于标识共享同一标准时间的地理区域。
有关时区索引的列表,请参阅
指定 GMT 标准时区的示例格式:-TimeZone 085
类型: | Int32 |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-UnattendSettings
指定由 String、String组成的键/值对。
类型: | System.Collections.Generic.Dictionary`2[System.String,System.String] |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-UserRole
指定用户角色对象。
类型: | UserRole |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-VirtualHardDisk
指定虚拟硬盘对象。
类型: | StandaloneVirtualHardDisk |
Position: | Named |
默认值: | None |
必需: | True |
接受管道输入: | True |
接受通配符: | False |
-VirtualNumaNodesPerSocketMaximum
指定每个套接字允许的最大 NUMA 节点数。
类型: | Byte |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-VirtualVideoAdapterEnabled
启用,设置为$True时,虚拟机的 Microsoft 合成 3D 虚拟视频适配器。 可以直接在虚拟机上启用虚拟视频适配器,也可以在将用于创建虚拟机的模板或硬件配置文件上启用虚拟视频适配器。
必需:仅当虚拟机部署在运行 Windows Server 2008 R2 SP1 的主机上(安装了远程桌面服务角色和远程桌面虚拟图形角色服务)或更高版本,或者虚拟机存储在处于停止状态的库中(仅当存储的虚拟机的硬件更改时,才能启用虚拟机的Microsoft合成 3D 虚拟视频适配器计算机没有快照。 在库中存储的虚拟机上启用Microsoft合成 3D 虚拟视频适配器会将该计算机的位置限制为运行 Windows Server 2008 R2 SP1 的主机(安装了远程桌面服务角色和远程桌面虚拟图形角色服务)或更高版本。
示例格式:-VirtualVideoAdapterEnabled $True
类型: | Boolean |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-VM
指定虚拟机对象。
类型: | VM |
Position: | Named |
默认值: | None |
必需: | True |
接受管道输入: | True |
接受通配符: | False |
-VMMServer
指定 VMM 服务器对象。
类型: | ServerConnection |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | True |
接受通配符: | False |
-VMTemplate
指定用于创建虚拟机的 VMM 模板对象。
类型: | Template |
别名: | Template |
Position: | Named |
默认值: | None |
必需: | True |
接受管道输入: | True |
接受通配符: | False |
-Workgroup
在新的或现有的模板、新的或现有的来宾操作系统配置文件或新虚拟机上指定要加入虚拟机的工作组的名称。 可以使用此参数替代模板或来宾操作系统配置文件上的现有值。
类型: | String |
别名: | JoinWorkgroup |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
输出
Template
此 cmdlet 返回 模板 对象。