diff --git a/VMware/vCenter/KillQueuedTasks.ps1 b/VMware/vCenter/KillQueuedTasks.ps1 new file mode 100644 index 0000000..79c5c81 --- /dev/null +++ b/VMware/vCenter/KillQueuedTasks.ps1 @@ -0,0 +1,57 @@ +<# +.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