Register-ClusteredScheduledTask

Register-ClusteredScheduledTask

Registers a scheduled task on a failover cluster.

Syntax

Parameter Set: Object
Register-ClusteredScheduledTask [-TaskName] <String> [[-TaskType] <ClusterTaskTypeEnum> ] [-InputObject] <CimInstance> [[-Cluster] <String> ] [[-Resource] <String> ] [-AsJob] [-CimSession <CimSession[]> ] [-ThrottleLimit <Int32> ] [ <CommonParameters>]

Parameter Set: Params
Register-ClusteredScheduledTask [-TaskName] <String> [[-TaskType] <ClusterTaskTypeEnum> ] [-Action] <CimInstance[]> [[-Trigger] <CimInstance[]> ] [[-Settings] <CimInstance> ] [[-Description] <String> ] [[-Cluster] <String> ] [[-Resource] <String> ] [-AsJob] [-CimSession <CimSession[]> ] [-ThrottleLimit <Int32> ] [ <CommonParameters>]

Parameter Set: Xml
Register-ClusteredScheduledTask [-TaskName] <String> [[-TaskType] <ClusterTaskTypeEnum> ] [-Xml] <String> [[-Cluster] <String> ] [[-Resource] <String> ] [-AsJob] [-CimSession <CimSession[]> ] [-ThrottleLimit <Int32> ] [ <CommonParameters>]

Detailed Description

The Register-ClusteredScheduledTask cmdlet registers a clustered scheduled task on a failover cluster. The new task runs scheduled actions as defined by task triggers. As specified in the TaskType parameter, an action runs on a resource specific node, an active failover node, or on all cluster nodes.

For more information about the Windows Server® 2012 Task Scheduler, see the Task Scheduler Overview topic in the TechNet Library at https://technet.microsoft.com/en-us/library/cc721871.aspx.

Parameters

-Action<CimInstance[]>

Specifies an array of action objects to use in the task. To obtain a task action object, use the New-ScheduledTaskAction cmdlet.

A task can have a single action or up to 32 actions. If you specify more than one action, the cluster runs them in sequence.

Aliases

none

Required?

true

Position?

3

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-AsJob

Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-CimSession<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.

Aliases

Session

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-Cluster<String>

Specifies a name of a failover cluster. If you do not specify a cluster, the cmdlet uses the current node cluster name.

Aliases

none

Required?

false

Position?

4

Default Value

"."

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-Description<String>

Specifies a description of a task.

Aliases

none

Required?

false

Position?

6

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-InputObject<CimInstance>

Specifies the input to this cmdlet. You can use this parameter, or you can pipe the input to this cmdlet. This is a clustered scheduled task object. To obtain a clustered scheduled task object, use the Get-ClusteredScheduledTask cmdlet.

Aliases

none

Required?

true

Position?

3

Default Value

none

Accept Pipeline Input?

True (ByValue)

Accept Wildcard Characters?

false

-Resource<String>

Specifies a cluster resource identifier. This identifier defines a set of failover cluster nodes. If you define a value of ResourceSpecific for the TaskType parameter, the task runs on the defined cluster nodes.

Aliases

none

Required?

false

Position?

5

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-Settings<CimInstance>

Specifies a CimInstance object that contains properties that Windows Task Scheduler uses to configure running of a task. To obtain a settings object, use the New-ScheduledTaskSettingSet cmdlet.

Aliases

none

Required?

false

Position?

5

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-TaskName<String>

Specifies a name of a scheduled task.

Aliases

none

Required?

true

Position?

1

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-TaskType<ClusterTaskTypeEnum>

Specifies a type for the task. The acceptable values for this parameter are:

-- ResourceSpecific. Resource specific cluster nodes.
-- AnyNode. Active cluster nodes.
-- ClusterWide. All cluster nodes.

Aliases

none

Required?

false

Position?

2

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-ThrottleLimit<Int32>

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 Windows 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.

Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-Trigger<CimInstance[]>

Specifies an array of trigger objects to use in the task. To obtain a task trigger object, use the New-ScheduledTaskTrigger cmdlet.

A trigger is a set of criteria that starts the running of a task. You can use both time-based and event-based triggers. One or more triggers can start a task. You can specify up to 48 triggers.

Aliases

none

Required?

false

Position?

4

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-Xml<String>

Specifies an XML-formatted string that contains a task definition. You can export a task definition from Task Scheduler.

The string represents the triggers, actions, and other settings for a task. The string uses the Task Scheduler Schema.

Aliases

none

Required?

true

Position?

3

Default Value

none

Accept Pipeline Input?

True (ByValue)

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.

  • Microsoft.Management.Infrastructure.CimInstance#MSFT_ClusteredScheduledTask

Examples

Example 1: Register a task on a cluster

This example registers a cluster-wide task.

The first command uses the New-ScheduledTaskAction cmdlet to create a task action and stores that action in the $Action variable.

The second command uses the New-ScheduledTaskTrigger cmdlet to create a task trigger and stores that trigger in the $Trigger variable.

The final command registers a scheduled task named CalcTask01 for all cluster nodes in the cluster Cluster01. The task uses the action and trigger stored in the two variables.

PS C:\> $Action = New-ScheduledTaskAction -Execute Calc
PS C:\> $Trigger = New-ScheduledTaskTrigger -At 12:00 -Once
PS C:\> Register-ClusteredScheduledTask -TaskName "CalcTask01" -TaskType ClusterWide -Action $Action -Trigger $Trigger -Cluster "Cluster01"

Example 2: Register a task on the current cluster

This example registers an active cluster nodes scheduled task.

The first command uses the New-ScheduledTaskAction cmdlet to create a task action and stores that action in the $Action variable.

The second command uses the New-ScheduledTaskTrigger cmdlet to create a task trigger and stores that trigger in the $Trigger variable.

The final command registers a scheduled task named CalcTask02 for active cluster nodes. Because the command does not specify a cluster, it uses the current cluster. The task uses the action and trigger stored in the two variables.

PS C:\> $Action = New-ScheduledTaskAction -Execute Calc
PS C:\> $Trigger = New-ScheduledTaskTrigger -At 12:00 -Once
PS C:\> Register-ClusteredScheduledTask -TaskName "CalcTask02" -TaskType AnyNode -Action $Action -Trigger $Trigger

New-ScheduledTaskAction

New-ScheduledTaskTrigger

New-ScheduledTaskSettingsSet

Get-ClusteredScheduledTask

Set-ClusteredScheduledTask

Unregister-ClusteredScheduledTask