FHEM Forum

FHEM => Codeschnipsel => Thema gestartet von: docb am 09 Juni 2020, 09:17:33

Titel: Fhem mit Powershell / Powercli
Beitrag von: docb am 09 Juni 2020, 09:17:33
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
Titel: Antw:Fhem mit Powershell / Powercli
Beitrag von: rudolfkoenig am 09 Juni 2020, 09:33:37
Hast Du die ESXi direkt angesprochen oder ueber eine vSphere Installation?
Fuer Letzteres existieren auch python Module.
Titel: Antw:Fhem mit Powershell / Powercli
Beitrag von: docb am 09 Juni 2020, 09:44:23
Direkt, ich habe kein vSphere.