Virtuelle FHEM-Maschine ??

Begonnen von Prof. Dr. Peter Henning, 24 Februar 2017, 17:28:46

Vorheriges Thema - Nächstes Thema

Prof. Dr. Peter Henning

Wir haben in einem komplexen EU-Projekt diverse Serverkomponenten zusammenschalten müssen. Nach 3 Jahren waren wir schlauer, und haben den Projektpartnern nicht die Programmsysteme und seitenweise Installationsanweisungen mitgeliefert. Sondern einfach alles in eine virtuelle Maschine gepackt und nur diese als Datei ausgeliefert.

Das bringt micht zur Frage, ob man nicht einfach ein Standard-Linux in Minimalkonfiguration nehmen sollte, darauf FHEM mit allen notwendigen Ergänzungen installieren und aus dem Gesamtding dann eine portable VM generieren könnte. Dies zusammen mit einer kurzen Installationsanweisung für Virtual Box wäre ein Weg, um den ganzen Schwierigkeiten unter Windows aus dem Weg zu gehen.

LG

pah

betateilchen

Noch besser wäre es, den gesamten Schwierigkeiten durch Verzicht auf Windows aus dem Weg zu gehen...

Wie willst Du solch eine VM für die Verteilung auf einem aktuellen Stand halten, sowohl was das Betriebssystem als auch die Applikatin angeht?
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Prof. Dr. Peter Henning

Udo, komm doch mal in der bitteren Realität an. 95% der Menschen sind Windows-Nutzer.

Die VM stellt übrigens genauso einen FHEM-Server bereit, wie das gewöhnliche FHEM. Mit einem "Update" lässt sich also auch diese updaten, wenn sie denn installiert ist.


LG

pah

Icinger

Wobei man das ja sogar soweit konfigurieren könnte, um beim ersten śtarten der VM ein FHEM-Update automatisch auszulösen.
Verwende deine Zeit nicht mit Erklärungen. Die Menschen hören (lesen) nur, was sie hören (lesen) wollen. (c) Paulo Coelho

rudolfkoenig

Aber nachdem der Windows Benutzer ein bisschen Trockenuebungen mit FHEM gemacht hat, muss er FHEM nochmal auf seinem RPi installieren, da er ja sein PC nicht die ganze Zeit eingeschaltet lassen kann. Schon mal wegen den regelmaessigen Windows Updates nicht :)

Icinger

Eine VM mit Abschlusstest und Selbstzerstörungsmechanismus?  8)

Aber die Grundidee ist nicht schlecht.
Verwende deine Zeit nicht mit Erklärungen. Die Menschen hören (lesen) nur, was sie hören (lesen) wollen. (c) Paulo Coelho

zap

Mittlerweile gibt es ja auch Windows "PCs" in der Größe eines USB Sticks oder eines Pis. Die kann man dann auch immer anlassen. Allerdings erschließt sich mir nicht, warum man auf Windows FHEM in einer VM laufen lassen sollte. Ich denke die Windows-Nutzer möchten einfach kein Linux nutzen, auch nicht in einer VM.

Einziger Vorteil: Man könnte die VM so "narrensicher" machen (ich hoffe jetzt ist keiner beleidigt, ist nicht meine Absicht), dass ein Windows Nutzer erst gar nicht auf das OS-Level runter muss.
2xCCU3, Fenster, Rollläden, Themostate, Stromzähler, Steckdosen ...)
Entwicklung: FHEM auf AMD NUC (Ubuntu)
Produktiv inzwischen auf Home Assistant gewechselt.
Maintainer: FULLY, Meteohub, HMCCU, AndroidDB

betateilchen

Zitat von: Prof. Dr. Peter Henning am 24 Februar 2017, 18:22:43
Udo, komm doch mal in der bitteren Realität an. 95% der Menschen sind Windows-Nutzer.

FHEM wurde aber definitiv nicht für Windows entwickelt. Fritzbox war ja schon schlimm. Aber Win?

-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Thorsten Pferdekaemper

Hi,
technisch wäre das bestimmt interessant, aber mir ist nicht so ganz klar, welches Problem damit gelöst werden soll bzw. welchen Nutzen das wirklich hat. Wenn wir FHEM für "Standard-Windows-Benutzer" schmackhaft oder verwendbar (?) machen wollen, dann müsste man ja erst einmal FHEM selbst "verbessern".
...oder geht es darum, die Einstiegshürde zu verkleinern, so dass sich jemand mal kurz FHEM auf einen Windows PC installieren kann? Ich glaube, dann würde es ausreichen, wenn man tatsächlich die Beschreibung etwas entschlackt oder sogar jemand mal ein Installationspaket bastelt, das auch gleich Perl mit installiert.

Auch wenn es Windows-Rechner inzwischen im Miniformat gibt (es gibt auch ein Windows 10 für den RasPi, oder), denke ich nicht, dass Windows ein gutes Server-OS ist. Ich glaube, das tut sich nicht einmal Microsoft selbst an.

Gruß,
   Thorsten

FUIP

zap

Zitat von: Thorsten Pferdekaemper am 24 Februar 2017, 18:58:24
Auch wenn es Windows-Rechner inzwischen im Miniformat gibt (es gibt auch ein Windows 10 für den RasPi, oder), denke ich nicht, dass Windows ein gutes Server-OS ist. Ich glaube, das tut sich nicht einmal Microsoft selbst an.

Gruß,
   Thorsten

Zumindest die Desktop Version ist kein gutes Server-OS. Und die Server Version will vermutlich niemand kaufen.
2xCCU3, Fenster, Rollläden, Themostate, Stromzähler, Steckdosen ...)
Entwicklung: FHEM auf AMD NUC (Ubuntu)
Produktiv inzwischen auf Home Assistant gewechselt.
Maintainer: FULLY, Meteohub, HMCCU, AndroidDB

justme1968

mal unabhängig von der verwendeten virtualisierungs methode (vmware, virtual box, hyper v,...), oder dem vielleicht leichtgewichtigeren ansatz einen docker container zu verteilen, sehe ich nicht das es der zielgruppe die fhem nicht unter windows zum laufen bringt und es nicht unter linux probieren will wirklich hilft.

gerade dinge die für fhem wichtig sind wie usb und netzwerk in beide richtungen sind in all diesen lösungen der größte stolperstein. von host only über nat bis hin zu usb devices die entweder garnicht gehen oder bei jedem einstecken neu verbunden werden müssen kann hier sehr viel schief gehen und wird es weder diesen anwendern noch den supporten hier im forum leichter machen.

auch die tatsache das so ein windows rechner nicht dauernd läuft hilft bei der heimautomatisierung nicht wirklich.

ich denke mit einer aktuellen anleitung wie man fhem mit z.b. active perl unter windows laufen lassen kann um mal zu schnuppern geht man einigen dieser problem aus dem weg. das würde auch vermeiden das ein solches virtuelles fhem nicht mehr gepflegt wird weil es doch keinen maintainer gibt der es aus eigenem interesse pflegt.


ps: und zu windows auf dem raspberry: das ist weder ein vollwertiges windows noch laufen die normalen x86 desktop apps. damit fallen genau die beiden einzigen argumente für windows die es vielleicht geben könnte weg.

pps: ich habe viel mit vms zu und mit administratoren in diversen rechenzentren zu tun. es ist erstaunlich was sogar hier manchmal an unwissenheit zu sehen ist.
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

zap

Das Teilchen hier habe ich per Kickstarter Kampagne erworben:

http://www.lattepanda.com

Vollwertiger Windows 10 PC inkl. Arduino Board. Nutze ich allerdings als Sat>IP Server, nicht für FHEM. Wäre aber kein Problem.
2xCCU3, Fenster, Rollläden, Themostate, Stromzähler, Steckdosen ...)
Entwicklung: FHEM auf AMD NUC (Ubuntu)
Produktiv inzwischen auf Home Assistant gewechselt.
Maintainer: FULLY, Meteohub, HMCCU, AndroidDB

Prof. Dr. Peter Henning

Zitat...oder geht es darum, die Einstiegshürde zu verkleinern, so dass sich jemand mal kurz FHEM auf einen Windows PC installieren kann?

Genau darum.

ZitatIch glaube, dann würde es ausreichen, wenn man tatsächlich die Beschreibung etwas entschlackt oder sogar jemand mal ein Installationspaket bastelt, das auch gleich Perl mit installiert.

Das würde aber dazu verleiten, das dauerhaft unter Windows laufen  zu lassen.

LG

pah

chris1284

#13
Ich meine für win muss man auch Perl nicht installieren um fhem zu betreiben sondern nur bereitstellen (als Ordner). Warum nicht ein selbstextrahierendes zip mit fhem, Perl, Einsteiger PDF und einer Bath die fhem starten ) für den Einstieg optimal. Ggf. macht die Batch noch die Serviceinstallation, Firewall regeln und ein initiales fhem Update. Vm macht denke ich unterm Strich mehr Probleme (Hardware muss passen, man sollte Ahnung von vms haben( viele fhem Einsteiger haben nicht einmal von dem windows mit dem sie arbeiten wirklich wissen und sollen sich mit ner Linux vm rumschlagen???))

rudolfkoenig

Hat sich hier gerade ein freiwilliger Windows-Maintainer zu Wort gemeldet?

Prof. Dr. Peter Henning

Bei jedem kriminellen Akt braucht man ein Motiv. Und das besteht, wie gesagt, in der Senkung der Einstiegshürde und der Erschließung einer 20x größeren Zielgruppe.

Denken wir also in 2 Richtungen:

1. ein narrensicherer Windows-Installer, mit Perl und FHEM und allem Schnickschnack
2. wenn nicht eine VM - warum dann nicht so etwas: https://www.amazon.de/INTEL-Compute-Stick-Linux-Quad-Core/dp/B013QFQCNY, oder der hier: www.mediamarkt.de/de/product/_asus-vivo-pc-stick-ts10-b003d-2189568.html

LG

pah











Thorsten Pferdekaemper

Zitat von: Prof. Dr. Peter Henning am 26 Februar 2017, 06:40:34
Bei jedem kriminellen Akt braucht man ein Motiv. Und das besteht, wie gesagt, in der Senkung der Einstiegshürde und der Erschließung einer 20x größeren Zielgruppe.
Ok, wenn man mal voraussetzt, dass wir die FHEM-Benutzerschaft stark vergrößern wollen, dann würde ich auch sagen, dass eine Senkung der Einstiegshürde eine gute Sache ist. (Allerdings gibt es auch schon Diskussionen darüber, ob wie die ganzen Benutzer überhaupt haben wollen, die nach Senkung der Hürde z.B. im Forum landen. Das ist aber eine ganz andere Diskussion.)

Zitat2. wenn nicht eine VM - warum dann nicht so etwas: https://www.amazon.de/INTEL-Compute-Stick-Linux-Quad-Core/dp/B013QFQCNY, oder der hier: www.mediamarkt.de/de/product/_asus-vivo-pc-stick-ts10-b003d-2189568.html
Also bei der Sache mit der VM war ich ja noch einigermaßen dabei, aber das verstehe ich jetzt nicht. Sollen sich Windows-Benutzer so ein Teil kaufen? ...oder willst Du solche Teile mit FHEM fertig installiert verkaufen? Ich denke, dass das schon einmal am Preis scheitern wird. Außerdem glaube ich bei 90% der Windows-Benutzer nicht, dass sie Windows benutzen, weil sie Windows wollen, sondern weil das halt auf dem Aldi-PC (oder so) vorinstalliert war. Ich glaube nicht, dass da jemand groß etwas dazu kaufen will. Es muss mit der vorhandenen Hardware funktionieren.
Meiner Meinung gibt es zwei Wege, die Einstiegshürde für "Windows-Benutzer" zu senken:
Entweder ein narrensicherer Installer (Helau! Ahoi! Passt ja grade...), der auch gleich einen Link auf localhost:8083 auf dem Desktop (heißt das bei Win10 noch so?) ablegt, oder ein FHEM-USB-Stick, von dem man FHEM direkt starten kann. (Ok, letzteres fällt nicht mehr ganz unter "vorhandene Hardware", aber fast.)
Gruß,
   Thorsten   
FUIP

chris1284

Zitat von: rudolfkoenig am 25 Februar 2017, 22:49:53
Hat sich hier gerade ein freiwilliger Windows-Maintainer zu Wort gemeldet?
nicht wirklich, aber die lösung ist einfacher als eine vm bei der man
- sich auf eine Hostsoftware festlegen muss (die für alle szenarien die beste lösung ist, sprich freeware, windows 7-10 fähig, 32 und 64 bit....)
- diese SW will aktuell gehalten werden / die vm gegen aktuellere version stets getestet werden
- hardware der anwender beachten muss (cpu mit vt? / vom host supported?)
- das server os aktuell halten muss + perl + fhem

und zusammenfassend man mehr baustellen öffnet als man schließen will.
ich würde es testen, habe ja fhem als testsystem auf windows eine zeit laufen gehabt. die batch und das zip sollte kein problem sein wenn fhem erfolgreich mit lediglich kopiertem perl läuft (was kein problem sein sollte). heute nachmitag kann ich das probieren.

chris1284

#18
der spieltrieb....

ich habe nun eine portable fhem version. starten von stick, anderen windows pc kein problem ohne das man perl installieren muss. per localhost:8083 erreichbar.
dazu habe ich neben perl und fhem eine batch mit kleinem menue gepackt die
fhem startet
fhem stopt
das menue beendet

todo:
-fhem update beim ersten start einleiten, bei erfolg ein flagfile anlegen (so ist fhem nach dem ersten start  uptodate und muss danach durch den aw aktuell gehalten werden)
-beim ersten start die aktuelle version des einsteiger-pdfs laden oder dies als option ins menue packen --> Link im menue zur Doku
-menue um config-sachen erweitern (wie zb firewall regel um fhem von außen erreichbar machen zu können, bedingt adminrechte check), fhem reset (sprich das portable fhem in auslieferungszustand zurück zu versetzen -> fhem ordner löscehn, neu entpacken, flagfiles löschen
-perl window verstecken
-perl um die gängigen module erweitern die man so für fhem und das gro der fhemmodule braucht


einiges davon ist einfach realisierbar, anderes kann ich noch nicht beurteilen. grundsätzlich ist fhem so aber lauffähig ohne installation und zum (aktuell) lokalem rumspielen

Markus Bloch

Zitat von: Thorsten Pferdekaemper am 26 Februar 2017, 07:31:14
Entweder ein narrensicherer Installer (Helau! Ahoi! Passt ja grade...), der auch gleich einen Link auf localhost:8083 auf dem Desktop (heißt das bei Win10 noch so?) ablegt

Das finde ich eine sehr tolle Idee. Ist auch schnell gemacht. Man packt in den Installer entsprechend ActivePerl/StrawberryPerl mit dazu, so dass es per default mit installiert. Ich habe früher viel mit InnoSetup entsprechende Installer erstellt. Ist eine sehr feine Sache.

Gruß
Markus
Developer für Module: YAMAHA_AVR, YAMAHA_BD, FB_CALLMONITOR, FB_CALLLIST, PRESENCE, Pushsafer, LGTV_IP12, version

aktives Mitglied des FHEM e.V. (Technik)

HCS

Zitat von: chris1284 am 26 Februar 2017, 11:37:24
ich habe nun eine portable fhem version. starten von stick, anderen windows pc kein problem ohne das man perl installieren muss. per localhost:8083 erreichbar.
Das finde ich extrem praktisch. Stellst Du das irgendwo zur Verfügung?

Damian

Ich habe vom Anfang an FHEM unter Windows laufen, ca. 4 Jahre auf einem Atom-Netbook und nun auf einem Ideacentre 200 (für 150 Euro) (Stromverbrauch bei beiden 6-8 Watt). Performance bei beiden (der neue 4x schneller als der alte) mit einem Raspi nicht vergleichbar.
Bisher keinerlei Probleme als Dauerläufer. Warum Windows, weil der Home-Server zuvor schon unter Windows lief und ich dort noch andere Sachen unter Windows nutze. Linux wäre für mich als ehemaliger Unix-Softwareentwickler auch kein Problem, trotzdem habe ich es bei Windows belassen  und habe bisher keinen gewichtigen Grund gehabt es unter Linux laufen zu lassen.  Der einzige Nachteil unter Windows, den ich sehe, sind die fehlenden fork-Mechanismen, aber bei der Performance auch kein Problem - Plots werden in Sekundenbruchteilen aufgebaut.

Allerdings ist die Hürde FHEM unter Windows zum Laufen zu bringen höher gewesen, als wenn man es unter Linux installiert hätte. Daher wäre ein Install-Pack für Windows sicherlich eine Idee wert.




Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF