Add-SCCustomPlacementRule

Adds a custom placement rule to the placement configuration for a host group.

Syntax

Add-SCCustomPlacementRule [-Confirm] -CustomPropertyName <String> [-JobVariable <String>] [-MustMatch]
 [-PROTipID <Guid>] -PlacementConfiguration <PlacementConfigurationSettings> [-RunAsynchronously]
 [-VMMServer <ServerConnection>] [-WhatIf] [<CommonParameters>]
Add-SCCustomPlacementRule [-Confirm] -CustomPropertyName <String> [-JobVariable <String>] [-MustNotMatch]
 [-PROTipID <Guid>] -PlacementConfiguration <PlacementConfigurationSettings> [-RunAsynchronously]
 [-VMMServer <ServerConnection>] [-WhatIf] [<CommonParameters>]
Add-SCCustomPlacementRule [-Confirm] -CustomPropertyName <String> [-JobVariable <String>] [-PROTipID <Guid>]
 -PlacementConfiguration <PlacementConfigurationSettings> [-RunAsynchronously] [-ShouldMatch]
 [-VMMServer <ServerConnection>] [-WhatIf] [<CommonParameters>]
Add-SCCustomPlacementRule [-Confirm] -CustomPropertyName <String> [-JobVariable <String>] [-PROTipID <Guid>]
 -PlacementConfiguration <PlacementConfigurationSettings> [-RunAsynchronously] [-ShouldNotMatch]
 [-VMMServer <ServerConnection>] [-WhatIf] [<CommonParameters>]

Description

The Add-SCCustomPlacementRule cmdlet adds a custom placement rule to the placement configuration for a host group.

Examples

Example 1: Add a new custom placement rule to a placement configuration for a host group

PS C:\> $HostGroup = Get-SCVMHostGroup "HostGroup01"
PS C:\> $PlacementConfig = Get-SCPlacementConfiguration -VMHostGroup $HostGroup
PS C:\> $CustomProp = Get-SCCustomProperty -Name "Cost Center"
PS C:\> Add-SCCustomPlacementRule -PlacementConfiguration $PlacementConfig -MustMatch -CustomProperty $CustomProp

The first command gets the host group object named HostGroup01 and stores the object in the $HostGroup variable.

The second command gets the placement configuration object for the host group stored in $HostGroup and places the object in the $PlacementConfig variable.

The third command gets the custom property object named Cost Center and stores the object in the $CustomProp variable.

The last command adds a custom placement rule to the placement configuration stored in $PlacementConfig.

Parameters

-Confirm

Prompts you for confirmation before running the cmdlet.

Type:SwitchParameter
Aliases:cf
Required:False
Position:Named
Default value:False
Accept pipeline input:False
Accept wildcard characters:False
-CustomPropertyName

Specifies the name for a custom property.

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

Specifies that job progress is tracked and stored in the variable named by this parameter.

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

Indicates that the property value of the virtual machine must match the host.

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

Indicates that the property value of the virtual machine must not match the host.

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

Specifies the ID of the Performance and Resource Optimization tip (PRO tip) that triggered this action. This parameter lets you audit PRO tips.

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

Specifies a placement configuration object.

Type:PlacementConfigurationSettings
Required:True
Position:Named
Default value:None
Accept pipeline input:True (ByValue)
Accept wildcard characters:False
-RunAsynchronously

Indicates that the job runs asynchronously so that control returns to the command shell immediately.

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

Indicates that the property value of the virtual machine should match the host.

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

Indicates that the property value of the virtual machine should not match the host.

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

Specifies a VMM server object.

Type:ServerConnection
Required:False
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-WhatIf

Shows what would happen if the cmdlet runs. The cmdlet is not run.

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

Outputs

CustomPlacementRule

This cmdlet returns a **CustomPlacementRule** object.