New-SCVMHostProfile
New-SCVMHostProfile
Creates a host profile.
Syntax
Parameter Set: CloneProfile
New-SCVMHostProfile [-Name] <String> -VMHostProfile <PhysicalComputerProfile> [-AnswerFile <Script> ] [-BypassVHDConversion <Boolean]> ] [-Description <String> ] [-JobVariable <String> ] [-Owner <String> ] [-PROTipID <Guid]> ] [-RunAsynchronously] [-VMMServer <ServerConnection> ] [ <CommonParameters>]
Parameter Set: CreateNewFileServerProfile
New-SCVMHostProfile [-Name] <String> -Domain <String> -DomainJoinRunAsAccount <RunAsAccount> -LocalAdministratorCredential <VMMCredential> -VirtualHardDisk <VirtualHardDisk> [-AnswerFile <Script> ] [-BypassVHDConversion <Boolean]> ] [-Description <String> ] [-DiskConfiguration <String> ] [-DriverMatchingTag <List`1> ] [-FullName <String> ] [-GuiRunOnceCommands <String[]> ] [-JobVariable <String> ] [-OrganizationName <String> ] [-Owner <String> ] [-ProductKey <String> ] [-PROTipID <Guid]> ] [-RunAsynchronously] [-TimeZone <Int32]> ] [-VMMServer <ServerConnection> ] [-VMPaths <String> ] [ <CommonParameters>]
Parameter Set: CreateNewHostProfileData
New-SCVMHostProfile [-Name] <String> -Domain <String> -DomainJoinRunAsAccount <RunAsAccount> -LocalAdministratorCredential <VMMCredential> -VirtualHardDisk <VirtualHardDisk> [-AnswerFile <Script> ] [-BypassVHDConversion <Boolean]> ] [-Description <String> ] [-DiskConfiguration <String> ] [-DriverMatchingTag <List`1> ] [-FullName <String> ] [-GuiRunOnceCommands <String[]> ] [-JobVariable <String> ] [-OrganizationName <String> ] [-Owner <String> ] [-ProductKey <String> ] [-PROTipID <Guid]> ] [-RunAsynchronously] [-TimeZone <Int32]> ] [-VMHostNetworkAdapterProfile <PhysicalComputerNetworkAdapterProfile[]> ] [-VMMServer <ServerConnection> ] [-VMPaths <String> ] [ <CommonParameters>]
Parameter Set: CreateNewWorkgroupHostProfileData
New-SCVMHostProfile [-Name] <String> -JoinWorkgroup -LocalAdministratorCredential <VMMCredential> -VirtualHardDisk <VirtualHardDisk> [-AnswerFile <Script> ] [-BypassVHDConversion <Boolean]> ] [-Description <String> ] [-DiskConfiguration <String> ] [-DriverMatchingTag <List`1> ] [-FullName <String> ] [-GuiRunOnceCommands <String[]> ] [-JobVariable <String> ] [-OrganizationName <String> ] [-Owner <String> ] [-ProductKey <String> ] [-PROTipID <Guid]> ] [-RunAsynchronously] [-TimeZone <Int32]> ] [-VMMServer <ServerConnection> ] [-VMPaths <String> ] [ <CommonParameters>]
Detailed Description
The New-SCVMHostProfile cmdlet creates a host profile. Host profiles contain the hardware and operating system configuration settings used to deploy a physical computer as a Hyper-V host.
Before you create a host profile, ensure that the .vhd file that you specify exists in a library share.
Parameters
-AnswerFile<Script>
Specifies a script object stored in the VMM library to use as an answer file. The name of the answer file script depends on the operating system that you want to install on a virtual machine:
-- Sysprep.inf. Windows XP, Windows Server 2000, or Windows Server 2003.
-- Unattend.xml. Windows Vista, Windows 7, or Windows Server 2008.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
True (ByValue) |
Accept Wildcard Characters? |
false |
-BypassVHDConversion<Boolean]>
Indicates whether a dynamic VHD attached to a host profile is converted to a fixed type during deployment.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
-Description<String>
States a description for the specified object.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
-DiskConfiguration<String>
Specifies the disk and partition configuration for the physical computer that is to be deployed with Windows Hyper-V.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
-Domain<String>
Specifies a fully qualified domain name (FQDN) for an Active Directory domain.
Example format: -Domain "Domain01.Corp.Contoso.com"
Aliases |
none |
Required? |
true |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
-DomainJoinRunAsAccount<RunAsAccount>
Specifies a Run As account that has permission to join the specified domain.
Aliases |
none |
Required? |
true |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
-DriverMatchingTag<List`1>
Specifies the custom tags to match with driver properties during deployment. When tags are specified, the deployment process matches the tags specified in the host profile with the tags in the drivers in order to download matching drivers and install them in the target image.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
-FullName<String>
Specifies the name of the person in whose name a virtual machine is registered.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
-GuiRunOnceCommands<String[]>
Specifies one or more commands to add to the [GuiRunOnce] section of an unattended answer file (such as Unattend.xml). Use single quotes around each string enclosed in double quotes.
Example format:
-GuiRunOnceCommands '"C:\APF\APFPostSysPrepCopy.cmd PARAMS1"', '"C:\APF\APFPostSysPrepCopy.cmd PARAMS1"'
For information about how Windows PowerShell uses quotes, type Get-Help about_Quoting_Rules
.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
-JobVariable<String>
Specifies that job progress is tracked and stored in the variable named by this parameter.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
-JoinWorkgroup
Indicates that the computer joins a workgroup.
Aliases |
none |
Required? |
true |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
-LocalAdministratorCredential<VMMCredential>
Specifies the user name and password for the Local Administrator account (or Linux root account in the case of a Linux compatible Guest Operating System profile).
Specifying credentials on a new or existing template, on a new or existing guest operating system profile, or on a new virtual machine overrides any existing Administrator password.
Aliases |
none |
Required? |
true |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
-Name<String>
Specifies the name of a VMM object.
Aliases |
none |
Required? |
true |
Position? |
1 |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
-OrganizationName<String>
Specifies the name of the organization for the person in whose name a virtual machine is registered.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
-Owner<String>
Specifies the owner of a VMM object in the form of a valid domain user account.
Example format: -Owner "Contoso\ReneeLo"
Example format: -Owner "ReneeLo@Contoso"
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
-ProductKey<String>
Specifies a product key. The product key is a 25-digit number that identifies the product license. A product key can be used to register VMM or an operating system to be installed on a virtual machine or host.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
-PROTipID<Guid]>
Specifies the ID of the PRO tip that triggered this action. This allows for auditing of PRO tips.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
-RunAsynchronously
Indicates that the job runs asynchronously so that control returns to the command shell immediately.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
-TimeZone<Int32]>
Specifies a number (an index) that identifies a geographical region that shares the same standard time. For a list of time zone indexes, see Microsoft Time Zone Index Values (https://go.microsoft.com/fwlink/?LinkId=120935) on the Microsoft Developer Network. If no time zone is specified, the default time zone used for a virtual machine is the same time zone setting that is on the virtual machine host.
Example format to specify the GMT Standard Time zone: -TimeZone 085
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
-VirtualHardDisk<VirtualHardDisk>
Specifies a virtual hard disk object.
Aliases |
none |
Required? |
true |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
-VMHostNetworkAdapterProfile<PhysicalComputerNetworkAdapterProfile[]>
Specifies a host network adapter profile object or objects.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
-VMHostProfile<PhysicalComputerProfile>
Specifies a virtual machine host profile object.
Aliases |
none |
Required? |
true |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
True (ByValue) |
Accept Wildcard Characters? |
false |
-VMMServer<ServerConnection>
Specifies a VMM server object.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
True (ByValue) |
Accept Wildcard Characters? |
false |
-VMPaths<String>
Specifies a set of default paths (as strings separated by the pipeline operator) on a host where virtual machine files can be stored.
Example format: -VMPaths "C:\Folder1|C:\Folder2|C:\Folder3"
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
<CommonParameters>
This cmdlet supports the common parameters: -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer, and -OutVariable. For more information, see about_CommonParameters (https://go.microsoft.com/fwlink/p/?LinkID=113216).
Inputs
The input type is the type of the objects that you can pipe to the cmdlet.
Outputs
The output type is the type of the objects that the cmdlet emits.
- HostProfile
Examples
Example 1: Create a host profile
The first command gets the virtual hard disk object named VHD01.vhd, and then stores the object in the $VHD variable.
The second command gets a Run As account that has the name RunAsAcct01, and then saves it in the $RunAsAccnt variable.
The third command prompts you for credentials. At the prompt, enter the credentials of an Administrator account. For more information, type Get-Help Get-Credential
. The command stores the credentials in the $Credential variable.
The fourth command creates a host profile named HostProfile01 using the virtual hard disk stored in $VHD, and the credentials stored in $Credential, and then stores it in the $HostProfile variable.
The last command displays information about the newly created host profile to the user.
PS C:\> $VHD = Get-SCVirtualHardDisk -Name "VHD01.vhd"
PS C:\> $RunAsAcct = Get-SCRunAsAccount -Name "RunAsAcct01"
PS C:\> $Credential = Get-Credential
PS C:\> $HostProfile = New-SCVMHostProfile -Name "HostProfile01" -Owner "Contoso\Katarina" -Description "Host Profile 01" -Domain "Contoso.com" -DomainJoinRunAsAccount $RunAsAcct -VirtualHardDisk $VHD -LocalAdministratorCredential $Credential
PS C:\> $HostProfile
Example 2: Clone an existing host profile
The first command gets the host profile object named HostProfile01, and then stores the object in the $OrigHostProfile variable.
The second command copies the host profile stored in $OrigHostProfile, gives it the specified name, and then stores the new profile object in the $NewHostProfile variable.
PS C:\> $OrigHostProfile = Get-SCVMHostProfile -Name "HostProfile01"
PS C:\> $NewHostProfile = New-SCVMHostProfile -Name "HostProfile02" -VMHostProfile $OrigHostProfile
Example 3: Create a host profile that includes a host network adapter profile
The first command gets the virtual hard disk object named VHDX01.vhdx, and then stores the object in the $VHDX variable.
The second command gets the Run As account object named DomainJoinRAA, and then stores the object in the $DomainJoinCreds variable.
The third command prompts the user for local administrator credentials, and then stores the provided credentials in the $LocalAdminCreds variable.
The fourth command gets the host network adapter profile object with the ID of 259f47c7-c5a9-429d-a421-d232f9b34991, and then stores the object in the $HostNetAdapterProf variable.
The last command creates a host profile named Host Profile 03 using VHDX01 and the host network adapter profile stored in $HostNetAdapterProf.
PS C:\> $VHDX = Get-SCVirtualHardDisk -Name "VHDX01.vhdx"
PS C:\> $DomainJoinCreds = Get-SCRunAsAccount -Name "DomainJoinRAA"
PS C:\> $LocalAdminCreds = Get-Credential
PS C:\> $HostNetAdapterProf = Get-SCVMHostNetworkAdapterProfile -ID "259f47c7-c5a9-429d-a421-d232f9b34991"
PS C:\> New-SCVMHostProfile -Name "HostProfile03" -Owner "Contoso\Katarina" -Description "Host Profile 03" -Domain "Contoso.com" -DomainJoinRunAsAccount $DomainJoinCreds -VirtualHardDisk $VHDX -LocalAdministratorCredential $LocalAdminCreds -VMHostNetworkAdapterProfile $HostNetAdapterProf