Invoke-XenCluster

Last published : Nov 12, 2026
Invokes an operation on a Cluster object.

Syntax

Invoke-XenCluster [-Cluster] <Cluster>
    -XenAction {PoolCreate | PoolForceDestroy | PoolDestroy | PoolResync} [-PassThru]
    [-BestEffort] [-SessionOpaqueRef <string>] [-WhatIf] [-Confirm] [-Async]
    [<CommonParameters>]
Invoke-XenCluster [-Ref] <XenRef[Cluster]>
    -XenAction {PoolCreate | PoolForceDestroy | PoolDestroy | PoolResync} [-PassThru]
    [-BestEffort] [-SessionOpaqueRef <string>] [-WhatIf] [-Confirm] [-Async]
    [<CommonParameters>]
Invoke-XenCluster [-Uuid] <guid>
    -XenAction {PoolCreate | PoolForceDestroy | PoolDestroy | PoolResync} [-PassThru]
    [-BestEffort] [-SessionOpaqueRef <string>] [-WhatIf] [-Confirm] [-Async]
    [<CommonParameters>]

Description

Invokes an operation on a Cluster object. Use the -XenAction parameter to select which operation to perform.
PoolCreate: Attempt to create a Cluster from the entire pool.
PoolForceDestroy: Attempt to force destroy the Cluster\_host objects, and then destroy the Cluster.
PoolDestroy: Attempt to destroy the Cluster\_host objects for all hosts in the pool and then destroy the Cluster.
PoolResync: Resynchronise the cluster\_host objects across the pool. Creates them where they need creating and then plugs them.

Parameters

-Async

If set, the operation runs asynchronously and returns a Task object that can be used to track its progress.
Attribute Value
Type SwitchParameter
Required False
Position Named
Accepts pipeline input False

-BestEffort

If set, the cmdlet continues processing further objects instead of throwing a terminating error when an operation fails for one object.
Attribute Value
Type SwitchParameter
Required False
Position Named
Accepts pipeline input False

-Cluster

The Cluster object to operate on.
Attribute Value
Type Cluster
Required True
Position 0
Accepts pipeline input True (ByValue)

-ClusterStack

simply the string 'corosync'. No other cluster stacks are currently supported. Accepted when -XenAction is PoolCreate.
Attribute Value
Type string
Required False
Position Named
Accepts pipeline input False

-Confirm

Prompts for confirmation before running the cmdlet.
Attribute Value
Type SwitchParameter
Required False
Position Named
Accepts pipeline input False
Aliases cf

-Network

the single network on which corosync carries out its inter-host communications. Accepted when -XenAction is PoolCreate.
Attribute Value
Type XenRef[Network]
Required False
Position Named
Accepts pipeline input False

-PassThru

If set, the cmdlet returns the affected object. By default the cmdlet does not generate any output.
Attribute Value
Type SwitchParameter
Required False
Position Named
Accepts pipeline input False

-Ref

The Cluster object to operate on, specified by its opaque reference.
Attribute Value
Type XenRef[Cluster]
Required True
Position 0
Accepts pipeline input True (ByPropertyName)
Aliases opaque_ref

-SessionOpaqueRef

The session object on which to run the cmdlet. This overrides the default session and lets you target a specific open XenServer connection.
Attribute Value
Type string
Required False
Position Named
Accepts pipeline input False

-TokenTimeout

Corosync token timeout in seconds. Accepted when -XenAction is PoolCreate.
Attribute Value
Type double
Required False
Position Named
Accepts pipeline input False

-TokenTimeoutCoefficient

Corosync token timeout coefficient in seconds. Accepted when -XenAction is PoolCreate.
Attribute Value
Type double
Required False
Position Named
Accepts pipeline input False

-Uuid

The UUID of the Cluster to operate on.
Attribute Value
Type guid
Required True
Position 0
Accepts pipeline input True (ByPropertyName)

-WhatIf

Shows what would happen if the cmdlet runs. The cmdlet is not run.
Attribute Value
Type SwitchParameter
Required False
Position Named
Accepts pipeline input False
Aliases wi

-XenAction

Selects which action to use.
Attribute Value
Type XenClusterAction
Required True
Position Named
Accepts pipeline input False
Accepted values PoolCreate, PoolForceDestroy, PoolDestroy, PoolResync

Inputs

  • Cluster
  • XenRef[Cluster]
  • guid

Outputs

  • System.Object

Examples

Example 1: Run the PoolCreate operation

PS> Get-XenCluster -Uuid 1871ac51-ce6b-efc3-7fd0-28bc65aa39ff | Invoke-XenCluster -XenAction PoolCreate -PassThru
Invokes the PoolCreate operation on a Cluster. -PassThru writes the result to the pipeline.

Example 2: Run the PoolCreate operation by uuid

PS> Invoke-XenCluster -XenAction PoolCreate -Uuid 1871ac51-ce6b-efc3-7fd0-28bc65aa39ff -PassThru
Invokes the PoolCreate operation on a Cluster. -Uuid is the way to be sure of exactly one object. -PassThru writes the result to the pipeline.

Example 3: Run PoolCreate asynchronously

PS> Invoke-XenCluster -Uuid 1871ac51-ce6b-efc3-7fd0-28bc65aa39ff -XenAction PoolCreate -Async -PassThru | Wait-XenTask -ShowProgress
Runs the same operation asynchronously and follows the task it returns.