Update VMware/vCenter/KillQueuedTasks.ps1

This commit is contained in:
Timur 2025-02-19 17:58:34 +00:00
parent 11c13f4c00
commit e9b4d77e04

View file

@ -1,57 +1,50 @@
<#
.SYNOPSIS
Skript zum Beenden von hängenden Tasks im Status "Queued"
.DESCRIPTION
Dieses Skript wurde erstellt, um im vCenter Jobs mit dem Status "Queued" abzubrechen.
Dies kann notwendig sein, wenn Networker Backups abbrechen / sich aufhängen, deren Jobs man im vCenter nicht per GUI abgebrochen bekommt.
Das Skript kann mit folgenden Parametern aufgerufen werden:
-vcenter: gibt an, mit welchem vCenter sich das Skript verbinden soll
-Username: Benutzername zum Verbinden mit dem vCenter
-Password: Kennwort zum Verbinden mit dem vCenter
.Example
KillQueuedTasks.ps1 -vCenter "vmware.asl.local" -Username "your user" -Password "your password"
.LINK
.NOTES
Historie:
v0.1 : 06.07.2018
erste laufende Version
Author : awe
last change : 06.071.2018
#>
# Parameterabfrage
PARAM (
[Parameter(HelpMessage="vCenter Server Hostname/IP Address", Mandatory=$true)][string] $vCenter,
[Parameter(HelpMessage="vCenter account's username.", Mandatory=$true)][string] $Username,
[Parameter(HelpMessage="vCenter account's password.", Mandatory=$true)][string] $Password
)
cls
#Initialisierung der Powershell Module
import-module vmware.vimautomation.core
#Verbindung mit vCenter
Connect-VIServer $vCenter -user $Username -Password $Password
#Jobs ermitteln
$hangingtasks = get-task -Status queued | select ID
#Alle gefundenen Jobs abbrechen
foreach ($task in $hangingtasks) {
write-host "Killing Task: " $task.Id
Get-Task | where {$_.id -eq $task.Id } | stop-task -confirm:$false
}
#vom vCenter trennen
disconnect-viserver -Server $vCenter -Confirm:$false
<#
.SYNOPSIS
Skript zum Beenden von hängenden Tasks im Status "Queued"
.DESCRIPTION
Dieses Skript wurde erstellt, um im vCenter Jobs mit dem Status "Queued" abzubrechen.
Dies kann notwendig sein, wenn Networker Backups abbrechen / sich aufhängen, deren Jobs man im vCenter nicht per GUI abgebrochen bekommt.
Das Skript kann mit folgenden Parametern aufgerufen werden:
-vcenter: gibt an, mit welchem vCenter sich das Skript verbinden soll
-Username: Benutzername zum Verbinden mit dem vCenter
-Password: Kennwort zum Verbinden mit dem vCenter
.Example
KillQueuedTasks.ps1 -vCenter "vmware.asl.local" -Username "your user" -Password "your password"
.LINK
.NOTES
#>
# Parameterabfrage
PARAM (
[Parameter(HelpMessage="vCenter Server Hostname/IP Address", Mandatory=$true)][string] $vCenter,
[Parameter(HelpMessage="vCenter account's username.", Mandatory=$true)][string] $Username,
[Parameter(HelpMessage="vCenter account's password.", Mandatory=$true)][string] $Password
)
cls
#Initialisierung der Powershell Module
import-module vmware.vimautomation.core
#Verbindung mit vCenter
Connect-VIServer $vCenter -user $Username -Password $Password
#Jobs ermitteln
$hangingtasks = get-task -Status queued | select ID
#Alle gefundenen Jobs abbrechen
foreach ($task in $hangingtasks) {
write-host "Killing Task: " $task.Id
Get-Task | where {$_.id -eq $task.Id } | stop-task -confirm:$false
}
#vom vCenter trennen
disconnect-viserver -Server $vCenter -Confirm:$false