New-ClusterAffinityRule

Creates new affinity rules.

Syntax

New-ClusterAffinityRule
   [-Name] <String>
   [-RuleType <RuleType>]
   [-CimSession <CimSession[]>]
   [-ThrottleLimit <Int32>]
   [-AsJob]
   [<CommonParameters>]

Description

This cmdlet allows the creation of new affinity rules for a cluster, which can be used to control whether certain roles (that is, virtual machines, resource groups, and so on) should run on the same node. For more information, see Cluster affinity.

The available rule types are: the same fault domain, different fault domain, same node, and different node.

Examples

Example 1 - Create a new affinity rule

New-ClusterAffinityRule -Name AffinityRule1 -RuleType SameFaultDomain -Cluster Cluster1

This command creates a new affinity rule for Cluster1 to ensure resources stay within the same fault domain.

Parameters

-AsJob

Runs the cmdlet as a background job. Use this parameter to run commands that take a long time to complete.

The cmdlet immediately returns an object that represents the job and then displays the command prompt. You can continue to work in the session while the job completes. To manage the job, use the *-Job cmdlets. To get the job results, use the Receive-Job cmdlet.

For more information about PowerShell background jobs, see about_Jobs.

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

-CimSession

Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session object, such as the output of a New-CimSession or Get-CimSession cmdlet. The default is the current session on the local computer.

Type:CimSession[]
Aliases:Session
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Name

The name of the rule to create.

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

-RuleType

The affinity type for the new rule. The valid values for this parameter are:

  • SameFaultDomain - Resources must stay within the same fault domain.
  • SameFaultDomain - Resources must stay within the same fault domain.
  • SameNode - Resources must stay on the same cluster node.
  • DifferentFaultDomain - Resources must stay in different fault domain (anti-affinity).
  • DifferentNode - Resources must stay on different cluster nodes (anti-affinity).
Type:RuleType
Accepted values:SameFaultDomain, SameNode, DifferentFaultDomain, DifferentNode
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ThrottleLimit

Specifies the maximum number of concurrent operations that can be established to run the cmdlet. If this parameter is omitted or a value of 0 is entered, then PowerShell calculates an optimum throttle limit for the cmdlet based on the number of CIM cmdlets that are running on the computer. The throttle limit applies only to the current cmdlet, not to the session or to the computer.

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

Inputs

None

This cmdlet doesn't accept any input from the pipeline.

Outputs

CimInstance

CimInstance

The cmdlet returns an object representing an affinity rule as a CIM instance within the root/MSCLUSTER/MSCluster_AffinityRule path.