Invoke-XenVMSS

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

Syntax

Invoke-XenVMSS [-VMSS] <VMSS> -XenAction {SnapshotNow} [-PassThru] [-BestEffort]
    [-SessionOpaqueRef <string>] [-WhatIf] [-Confirm] [<CommonParameters>]
Invoke-XenVMSS [-Ref] <XenRef[VMSS]> -XenAction {SnapshotNow} [-PassThru] [-BestEffort]
    [-SessionOpaqueRef <string>] [-WhatIf] [-Confirm] [<CommonParameters>]
Invoke-XenVMSS [-Uuid] <guid> -XenAction {SnapshotNow} [-PassThru] [-BestEffort]
    [-SessionOpaqueRef <string>] [-WhatIf] [-Confirm] [<CommonParameters>]
Invoke-XenVMSS [-Name] <string> -XenAction {SnapshotNow} [-PassThru] [-BestEffort]
    [-SessionOpaqueRef <string>] [-WhatIf] [-Confirm] [<CommonParameters>]

Description

Invokes an operation on a VMSS object. Use the -XenAction parameter to select which operation to perform.
SnapshotNow: This call executes the snapshot schedule immediately.

Parameters

-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

-Confirm

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

-Name

The name of the VMSS to operate on.
Attribute Value
Type string
Required True
Position 0
Accepts pipeline input True (ByPropertyName)
Aliases name_label

-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 VMSS object to operate on, specified by its opaque reference.
Attribute Value
Type XenRef[VMSS]
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

-Uuid

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

-VMSS

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

-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 XenVMSSAction
Required True
Position Named
Accepts pipeline input False
Accepted values SnapshotNow

Inputs

  • VMSS
  • XenRef[VMSS]
  • guid
  • string

Outputs

  • System.Object

Examples

Example 1: Run the SnapshotNow operation

PS> Get-XenVMSS -Name "Demo VMSS" | Invoke-XenVMSS -XenAction SnapshotNow -PassThru
Invokes the SnapshotNow operation on a VMSS. -PassThru writes the result to the pipeline.

Example 2: Run the SnapshotNow operation by name

PS> Invoke-XenVMSS -XenAction SnapshotNow -Name "Demo VMSS" -PassThru
Invokes the SnapshotNow operation on a VMSS. -Name matches on name\_label, which is not unique, so every match is operated on. -PassThru writes the result to the pipeline.

Example 3: Run the SnapshotNow operation by uuid

PS> Invoke-XenVMSS -XenAction SnapshotNow -Uuid 1871ac51-ce6b-efc3-7fd0-28bc65aa39ff -PassThru
Invokes the SnapshotNow operation on a VMSS. -Uuid is the way to be sure of exactly one object. -PassThru writes the result to the pipeline.
  • Class: VMSS
  • Using the XenServer PowerShell module