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

Ausgedruckt am: 29.03.2024 um 14:03 Uhr

Mitglied: Kakinger
Lösung Kakinger 03.01.2017 um 14:31:39 Uhr
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
Mitglied: Coreknabe
Coreknabe 03.01.2017 um 14:47:45 Uhr
Goto Top
Hi Jan,

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

Vielen Dank!

Gruß
Mitglied: Pjordorf
Pjordorf 03.01.2017 um 15:03:47 Uhr
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
Mitglied: Coreknabe
Coreknabe 03.01.2017 um 15:11:56 Uhr
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ß
Mitglied: Kakinger
Kakinger 03.01.2017 um 15:15:08 Uhr
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
Mitglied: Coreknabe
Coreknabe 03.01.2017 um 15:27:35 Uhr
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!