Skip to main content
Set-HpcClusterProperty

Sets the specified cluster-wide properties. Cluster-wide properties include parameters, environment variables, installation credentials, the naming series for new compute nodes, and the Windows Deployment Services mode.

Syntax

Set-HpcClusterProperty [-CollectCounters <bool>] [-Scheduler <string>] [<CommonParameters>]

Set-HpcClusterProperty [-MinuteCounterRetention <int>] [-Scheduler <string>] [<CommonParameters>]

Set-HpcClusterProperty [-Environment <string[]>] [-Scheduler <string>] [<CommonParameters>]

Set-HpcClusterProperty [-ForwardEvents <bool>] [-Scheduler <string>] [<CommonParameters>]

Set-HpcClusterProperty [-InstallCredential <PSCredential>] [-Scheduler <string>] [<CommonParameters>]

Set-HpcClusterProperty [-NodeNamingSeries <string>] [-Scheduler <string>] [<CommonParameters>]

Set-HpcClusterProperty [-ActivationFilterProgram <string>] [-ActivationFilterTimeout <int>] [-AutomaticGrowthEnabled <bool>] [-AutomaticShrinkEnabled <bool>] [-BackfillLookAhead <int>] [-BrokerTaskProgram <string>] [-HeartbeatInterval <int>] [-InactivityCount <int>] [-JobCleanUpHour <int>] [-JobRetryCount <int>] [-PreemptionType <PreemptionMode>] [-Scheduler <string>] [-ServiceTaskProgram <string>] [-SubmissionFilterProgram <string>] [-SubmissionFilterTimeout <int>] [-TaskRetryCount <int>] [-TtlCompletedJobs <int>] [<CommonParameters>]

Set-HpcClusterProperty [-Scheduler <string>] [-WDSMode <WDSMode>] [<CommonParameters>]

Detailed Description

Sets the specified cluster-wide properties. Cluster-wide properties include parameters, environment variables, installation credentials, the naming series for new compute nodes, and the Windows Deployment Services mode.

Parameters

-ActivationFilterProgram <string>

Specifies the path and file name of the activation filter program, if one exists. The activation filter program is called every time a job starts. You can use the activation filter program to delay the start of a job.

You cannot specify both the ActivationFilterProgram parameter and any of the following parameters: CollectCounters, MinuteCounterRetention, Environment, ForwardEvents, InstallCredentials, NodeNamingSeries, and WDSMode.

 

Required?

false

Position?

named

Default Value

no default

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-ActivationFilterTimeout <int>

Specifies the number of seconds that the activation filter program can run before the job scheduler cancels the activation filter program and starts the job. The range of valid values is from 1 to 120.

You cannot specify both the ActivationFilterTimeout parameter and any of the following parameters: CollectCounters, MinuteCounterRetention, Environment, ForwardEvents, InstallCredentials, NodeNamingSeries, and WDSMode.

 

Required?

false

Position?

named

Default Value

15

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-AutomaticGrowthEnabled <bool>

Specifies whether to automatically add free resources to running jobs that still have additional tasks to run.

A non-zero value or $true indicates that the job scheduler should automatically add free resources to running jobs that still have additional tasks to run.

A value of 0 or $false indicates that the job scheduler should not automatically add free resources to running jobs that still have additional tasks to run.

You cannot specify both the AutomaticGrowthEnabled parameter and any of the following parameters: CollectCounters, MinuteCounterRetention, Environment, ForwardEvents, InstallCredentials, NodeNamingSeries, and WDSMode.

 

Required?

false

Position?

named

Default Value

$true

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-AutomaticShrinkEnabled <bool>

Specifies whether to automatically remove unneeded resources from running jobs that have no additional tasks to run.

A non-zero value or $true indicates that the job scheduler should automatically remove unneeded resources from running jobs that have no additional tasks to run.

A value of 0 or $false indicates that the job scheduler should not automatically remove unneeded resources from running jobs that have no additional tasks to run.

You cannot specify both the AutomaticShrinkEnabled parameter and any of the following parameters: CollectCounters, MinuteCounterRetention, Environment, ForwardEvents, InstallCredentials, NodeNamingSeries, and WDSMode.

 

Required?

false

Position?

named

Default Value

$true

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-BackfillLookAhead <int>

Specifies the number of jobs that the job scheduler searches to find jobs that can backfill the jobs at the top of the job queue.

A value of 0 indicates that the job scheduler should not backfill the jobs at the top of the job queue.

A negative value indicates that the job scheduler should search though the entire job queue to find jobs that can backfill the jobs at the top of the job queue.

You cannot specify both the BackfillLookAhead parameter and any of the following parameters: CollectCounters, MinuteCounterRetention, Environment, ForwardEvents, InstallCredentials, NodeNamingSeries, and WDSMode.

 

Required?

false

Position?

named

Default Value

1000

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-BrokerTaskProgram <string>

Specifies the command that the job scheduler runs to start a broker task. By changing this value, you can replace the Windows Communication Foundation (WCF) Broker that Microsoft® HPC Pack 2008 includes with a custom WCF Broker.

You cannot specify both the BrokerTaskProgram parameter and any of the following parameters: CollectCounters, MinuteCounterRetention, Environment, ForwardEvents, InstallCredentials, NodeNamingSeries, and WDSMode.

 

Required?

false

Position?

named

Default Value

%CCP_HOME%bin\HpcWcfBroker.exe

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-CollectCounters <bool>

Specifies whether to turn the collection of performance counter data on or off. If you turn off the collection of performance counter data, the heat maps and charts will not show any data from the moment you turn off data collection, and the Get-HpcMetricValue cmdlet will not show any performance counter values.

A non-zero or $true value turns the collection of performance counter data on. A value of 0 or false turns the collection of performance counter data off.

You cannot specify the CollectCounters parameter if you also specify any of the following parameters: MinuteCounterRetention, Environment, ForwardEvents, InstallCredential, NodeNamingSeries, WDSMode, or any of the job scheduler parameters.

 

Required?

false

Position?

named

Default Value

$true

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-Environment <string[]>

Sets cluster-wide environment variables in the environments on all of the compute nodes so that applications that run on the HPC cluster can use the environment variables. Specify the environment variables you want to set and their values in the following format:

"name1=value1"[,"name2=value2"[,"name3=value3"...]

To delete an environment variable, set the variable to nothing. For example, "name1=","name2=20" deletes the environment variable named name1 and sets the environment variable named name2 to 20.

You cannot specify the Environment parameter if you also specify any of the following parameters: CollectCounters, MinuteCounterRetention, ForwardEvents, InstallCredential, NodeNamingSeries, WDSMode, or any of the job scheduler parameters.

 

Required?

false

Position?

named

Default Value

no default

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-ForwardEvents <bool>

Specifies whether to turn event forwarding for the compute nodes on or off. Event forwarding enables you to view events on all compute nodes in the HPC cluster in one place. If you turn off event forwarding, events on the compute nodes stop appearing in the list of forwarded events on the head node.

A non-zero or $true value turns on event forwarding for the compute nodes. A value of 0 or $false turns off event forwarding for the compute nodes.

You cannot specify the ForwardEvents parameter if you also specify any of the following parameters: CollectCounters, MinuteCounterRetention, Environment, InstallCredential, NodeNamingSeries, WDSMode, or any of the job scheduler parameters.

 

Required?

false

Position?

named

Default Value

$true

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-HeartbeatInterval <int>

Specifies how often the job scheduler sends health probes to the HPC Node Manager Service to confirm that the nodes in the HPC cluster are still reachable. This interval is specified in seconds.

You cannot specify both the HeartbeatInterval parameter and any of the following parameters: CollectCounters, MinuteCounterRetention, Environment, ForwardEvents, InstallCredentials, NodeNamingSeries, and WDSMode.

 

Required?

false

Position?

named

Default Value

30

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-InactivityCount <int>

Specifies the number of heartbeats a compute node can miss before the job scheduler declares the node unreachable. A compute node misses a heartbeat if there is no reply from the health probes.

You cannot specify both the InactivityCount parameter and any of the following parameters: CollectCounters, MinuteCounterRetention, Environment, ForwardEvents, InstallCredentials, NodeNamingSeries, and WDSMode.

 

Required?

false

Position?

named

Default Value

3

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-InstallCredential <PSCredential>

Specifies a PSCredential object for the credentials to use to install compute nodes and run diagnostic tests. Use the Get-Credential cmdlet to get a PSCredential object. Alternatively, you can specify a user in the domain\user_name format, and the Set-HpcClusterProperty cmdlet prompts you for a password.

You cannot specify the InstallCredential parameter if you also specify any of the following parameters: CollectCounters, MinuteCounterRetention, Environment, ForwardEvents, NodeNamingSeries, WDSMode, or any of the job scheduler parameters.

 

Required?

false

Position?

named

Default Value

no default

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-JobCleanUpHour <int>

Specifies the hour of the day in 24-hour time at which the job scheduler should delete old job records from the database. For example, a value of 23 causes the job scheduler to delete job records that are older than the number of days that the TTLCompletedJobs property specifies at 11:00 PM each day. The value of this parameter must be between 0 and 23.

You cannot specify both the JobCleanupHour parameter and any of the following parameters: CollectCounters, MinuteCounterRetention, Environment, ForwardEvents, InstallCredentials, NodeNamingSeries, and WDSMode.

 

Required?

false

Position?

named

Default Value

2

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-JobRetryCount <int>

Specifies the maximum number of times that the job scheduler automatically tries to rerun a job before marking the job as failed. The value range for this parameter is from 0 to 2,147,483,647.

You cannot specify both the JobRetryCount parameter and any of the following parameters: CollectCounters, MinuteCounterRetention, Environment, ForwardEvents, InstallCredentials, NodeNamingSeries, and WDSMode.

 

Required?

false

Position?

named

Default Value

3

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-MinuteCounterRetention <int>

Specifies how often data for the minute performance counters gets deleted from the database, in days. For example, if the value is 3, the data for the minute performance counters is deleted every 3 days.

You cannot specify the MinuteCounterRetention parameter if you also specify any of the following parameters: CollectCounters, Environment, ForwardEvents, InstallCredential, NodeNamingSeries, WDSMode, or any of the job scheduler parameters.

 

Required?

false

Position?

named

Default Value

3

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-NodeNamingSeries <string>

Specifies the naming series to use to generate names for new compute nodes. The format of the naming series should consist of alphabetic characters and a number between percent signs (%), such as MyCluster%1000%. The maximum length of the string for the naming series is 17 characters.

The name for the first compute node will be the string for the naming series without the percent signs; for example, MyCluster1000. The names for subsequent compute nodes increment the numeric portion of the name by one for each new node, until the highest number with the same number of digits that the naming series specifies is reached; for example, MyCluster1001, MyCluster1002, MyCluster1003,...MyCluster9999.

You cannot specify the NodeNamingSeries parameter if you also specify any of the following parameters: CollectCounters, MinuteCounterRetention, Environment, ForwardEvents, InstallCredential, WDSMode, or any of the job scheduler parameters.

 

Required?

false

Position?

named

Default Value

no default

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-PreemptionType <PreemptionMode>

Specifies the type of preemption that the job scheduler applies. The valid values are: None, Graceful, and Immediate.

Graceful indicates that queued job will take resources away from lower priority jobs that are running as the tasks that are running for those jobs complete.

Immediate indicates that the job scheduler automatically cancels running jobs when a job with higher priority is waiting in the queue.

None indicates that preemption is turned off. Jobs that are running will continue to run until they complete, and higher priority jobs in the queue must wait for the lower priority jobs to complete before they can begin to run.

You cannot specify both the PreemptionType parameter and any of the following parameters: CollectCounters, MinuteCounterRetention, Environment, ForwardEvents, InstallCredentials, NodeNamingSeries, and WDSMode.

 

Required?

false

Position?

named

Default Value

Graceful

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-Scheduler <string>

Specifies the host name or IP address of the head node for the cluster for which you want to set the properties. The value must be a valid computer name or IP address. If you do not specify the Scheduler parameter, this cmdlet uses the scheduler on the head node that the CCP_SCHEDULER environment variable specifies. To set this environment variable, run the following cmdlet:

Set-Content Env:CCP_SCHEDULER <head_node_name>

 

Required?

false

Position?

named

Default Value

%CCP_SCHEDULER%

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-ServiceTaskProgram <string>

Specifies the command that the job scheduler runs to start a Windows Communication Foundation (WCF) service task on the compute nodes. By changing this value, you can replace the WCF service host that the HPC Pack includes with a custom WCF service host.

You cannot specify both the ServiceTaskProgram parameter and any of the following parameters: CollectCounters, MinuteCounterRetention, Environment, ForwardEvents, InstallCredentials, NodeNamingSeries, and WDSMode.

 

Required?

false

Position?

named

Default Value

%CCP_HOME%bin\HpcWcfServiceHost.exe

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-SubmissionFilterProgram <string>

Specifies the file name and path for the submission filter program, if one exists. The submission filter program runs every time a job is submitted. You can use the submission filter program to reject or change jobs that users submit to the job scheduler.

You cannot specify both the SubmissionFilterProgram parameter and any of the following parameters: CollectCounters, MinuteCounterRetention, Environment, ForwardEvents, InstallCredentials, NodeNamingSeries, and WDSMode.

 

Required?

false

Position?

named

Default Value

no default

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-SubmissionFilterTimeout <int>

Specifies the number of seconds that the submission filter program can run before the job scheduler cancels the submission filter program and rejects the job. The range of valid values is from 1 to 120.

You cannot specify both the SubmissionFilterTimeout parameter and any of the following parameters: CollectCounters, MinuteCounterRetention, Environment, ForwardEvents, InstallCredentials, NodeNamingSeries, and WDSMode.

 

Required?

false

Position?

named

Default Value

15

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-TaskRetryCount <int>

Specifies the maximum number of times that the job scheduler automatically tries to rerun a task before marking the task as failed.

You cannot specify both the TaskRetryCount parameter and any of the following parameters: CollectCounters, MinuteCounterRetention, Environment, ForwardEvents, InstallCredentials, NodeNamingSeries, and WDSMode.

 

Required?

false

Position?

named

Default Value

3

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-TtlCompletedJobs <int>

Specifies the number of days that records for completed jobs remain in the SQL database before the job scheduler deletes the records. A completed job is a job in the finished, failed, or canceled state.

You cannot specify both the TtlCompletedJobs parameter and any of the following parameters: CollectCounters, MinuteCounterRetention, Environment, ForwardEvents, InstallCredentials, NodeNamingSeries, and WDSMode.

 

Required?

false

Position?

named

Default Value

5

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-WDSMode <WDSMode>

Specifies the value of the setting that indicates whether Windows Deployment Services on the head node responds to all Pre-Boot Execution Environment (PXE) requests, or only the requests that come from existing compute nodes. A value of AutoCapture indicates that the head node responds to all requests, and a value of IgnoreUnknown indicates that the head node responds only to requests from existing compute nodes.

You cannot specify the WDSMode parameter if you also specify any of the following parameters: CollectCounters, MinuteCounterRetention, Environment, ForwardEvents, InstallCredential, NodeNamingSeries, or any of the job scheduler parameters.

 

Required?

false

Position?

named

Default Value

IgnoreUnknown

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.

Input and Return Types

The input type is the type of the objects that you can pipe to the cmdlet. The return type is the type of the objects that the cmdlet emits.

 

Input Type

None.

Return Type

None.

Example 1

C:\PS>Set-HpcClusterProperty -InstallCredential CONTOSO\someone

Sets the credential used to install compute nodes and run diagnostics tasks.

Example 2

C:\PS>Set-HpcClusterProperty -NodeNamingSeries "MyCluster%1000%"

Sets the naming series used to name new compute nodes added to the HPC cluster in the future. The naming series in this example generates compute node names like MyCluster1000, MyCluster1001, and so on.

Example 3

C:\PS>Set-HpcClusterProperty -Environment "CCP_CLUSTER_NAME=mycluster"

Sets a cluster-wide environment variable named CCP_CLUSTER_NAME to mycluster.

Example 4

C:\PS>Set-HpcClusterProperty -HeartbeatInterval 40

Sets a cluster-wide parameter named HeartbeatInterval to 40. This value means that the job scheduler will send a health probe to the HPC Node Manager Service every 40 seconds.

See Also