coreknabe
Goto Top

HyperV-VM - Statusabfrage und Autostart mit Powershell

Moin,

eine unserer HyperV-VMs macht immer mal wieder gern Zicken. Vor der Datensicherung in der Nacht fahre ich die VM runter (ist Ubuntu Linux), nach der Sicherung wird sie wieder automatisiert hochgefahren. Blöderweiser bleibt die VM jetzt ab und an unten und ist morgens nicht wieder online.

Habe schon etliche Stunden mit der Fehlersuche verbracht und nix gefunden, lief auch schon monatelang problemlos... Idee: Ich checke per Powershell-Skript, ob die VM online ist, falls nicht, wird sie gestartet:

get-vm VM | where {$_.state -eq 'Off'} | start-vm  

Fein, klappt. Jetzt wüsste ich aber gern, wann das Skript "erfolgreich" zugeschlagen hat, ich brauche also eine Rückmeldung in irgendeiner Form. Mir würde es reichen, wenn das bspw. in einer Textdatei steht. Allerdings stehe ich gerade auf dem weltberühmten Schlauch und habe keine Ahnung, wie ich das anstelle. Ich müsste den obigen Code in eine If-Schleife bekommen und eine Art Rückgabewert / Exitcode generieren. Mit "$lastExitCode" und "$?" komme ich aber nicht weiter. Hat jemand einen Schlauchlöser für mich ?

Gruß

Content-Key: 325331

Url: https://administrator.de/contentid/325331

Printed on: April 27, 2024 at 14:04 o'clock

Member: Kakinger
Solution Kakinger Jan 03, 2017 at 13:31:39 (UTC)
Goto Top
Hi,
hier eine Möglichkeit:

$VM = "VM"  
$x = get-vm $VM
if ($x.State -ne "Running")  
{
    Write-Host "Die VM $VM läuft nicht"  
    Start-VM -Name $VM
}
else
{
    Write-Host "Die VM $VM läuft"  
}

Das kann dann beliebig erweitert werden mit Mails, weiteren Befehlen usw...

Gruß, Jan
Member: Coreknabe
Coreknabe Jan 03, 2017 at 13:47:45 (UTC)
Goto Top
Hi Jan,

kaum sieht man's, schlägt man sich vor den Kopf...

Vielen Dank!

Gruß
Member: Pjordorf
Pjordorf Jan 03, 2017 at 14:03:47 (UTC)
Goto Top
Hallo,

Zitat von @Coreknabe:
Blöderweiser bleibt die VM jetzt ab und an unten und ist morgens nicht wieder online.
Bleibt die beim Herunterfahren stehen oder beim Hochfahren? Was sagt denn dein Linux dazu warum es nicht will? Von alleine bleibt ein Linux eher nicht stehen, oder kupfern die von Windows schon an? face-smile Unüblich das ein Linux dir nicht sagt warum. Oder spinnt der Hyper-V Horst selbst?

Gruß,
Peter
Member: Coreknabe
Coreknabe Jan 03, 2017 at 14:11:56 (UTC)
Goto Top
Hi Peter,

da steht ... nix! Ist aber auch nicht verwunderlich, weil aus Linux-Sicht ja alles OK ist. Das Rauf- und Runterfahren erledigt Veeam über Prescript / Postscript. Was Veeam dazu sagt? Jaaaaa.... Müsste eigentlich so gehen und ich kann mich ja gern melden, wenn das Problem regelmäßig und dauerhaft auftritt. Verständlich aus deren Sicht, mit meiner Powershell-Lösung kann ich aber gut leben.

Gruß
Member: Kakinger
Kakinger Jan 03, 2017 at 14:15:08 (UTC)
Goto Top
Ich hatte das schon ein paar Mal, dass bei Beendigung von dem Backup-Prozess mehr RAM als üblich in Nutzung war und dieser dann nicht frei ist beim Start der VM. Nach einigen Minuten geht es dann wieder problemlos, weil der RAM wieder verfügbar ist. Vielleicht liegt es an sowas.
Gruß, Jan
Member: Coreknabe
Coreknabe Jan 03, 2017 at 14:27:35 (UTC)
Goto Top
Unwahrscheinlich... Der Host hat mehr als genug RAM und es ist immer wieder diese eine VM, bei der es hakt. Wir haben noch einen zweiten Host, auf dem schnurren zwei Linux-VMs brav vor sich hin, das Prinzip der Datensicherung ist dort dasselbe. An irgendeiner Stelle wird es also haken, ich habe aber schon sehr viel Zeit in die Ursachensuche versenkt und das Powershellskript tut, es geht nix kaputt (so weit ich das sehe), so what? Gibt schlimmeres, also behelfe ich mir mit dieser Krücke...

Trotzdem danke!