Fhem mit Powershell / Powercli

Begonnen von docb, 09 Juni 2020, 09:17:33

Vorheriges Thema - Nächstes Thema

docb

Grüß Euch, nachdem ich fast 10 Stunden gebraucht habe, um das auszutüfteln, teile ich mal meine Lösung.
Ausgangsproblem: Eine VM auf ESXI kann man nicht wirklich über WOL starten (darauf habe ich schon einige Stunden Lebenszeit verschwendet). Aber ich will eine VM über das WOL-Modul in fhem starten. Also gut, dann bleibt nur Powercli. Anleitungen dazu, wie man das installiert, gibt es zu genüge. Wenn man aber ein Skript als fhem laufen lassen möchte, bekommt man dauernd Fehler - der Trick (da muss man erstmal drauf kommen): man braucht eine Homevariable (die habe ich einfach auf das Verzeichnis /opt/pwcli gelegt, nachdem ich das vorher schon angelegt hatte). Lange Rede, kurzer Sinn - hier mein Skript zum starten einer VM:


#!/usr/bin/pwsh
$Env:HOME = "/opt/pwcli"
[Environment]::SetEnvironmentVariable("PSModulePath","/opt/pwcli")
Import-Module VMware.VimAutomation.Core
Set-PowerCLIConfiguration -InvalidCertificateAction ignore -confirm:$false
Set-PowerCLIConfiguration -Scope User -ParticipateInCEIP $false -confirm:$false
Connect-VIServer -Server ipadresse -User esxibenutzer -Password passwort
Start-VM -VM namedervm
Disconnect-VIServer -confirm:$false

Zeilen 4, 5 und 6 könnt ihr nach dem ersten Ausführen auch Auskommentieren (mit #)

Wichtig: ihr müsst das Modul vorher lokal speichern: ich habe das einfach in das Verzeichnis /opt/pwcli gemacht, dass ich auch im Skript als Homevariable nutze. So speichert ihr das Modul lokal:
pwsh -Command "Save-Module -Name VMware.PowerCLI -Path /opt/pwcli"

Erschöpfte Grüße
doc
I love FHEM!

rudolfkoenig

Hast Du die ESXi direkt angesprochen oder ueber eine vSphere Installation?
Fuer Letzteres existieren auch python Module.

docb

I love FHEM!