Hallo an alle User des SSF!
Ich hänge gerade an einer Problemlösung für folgendes Szenario:
Server1 läuft mit einem Debian etch, in einer Minimalkonfiguration mit lediglich FTP und SSH. Der Server wird für verschiedenste Aufgaben eingesetzt, sollte aber um Ressourcen zu sparen und die Sicherheit nicht unnötig zu gefährden nach Möglichkeit nicht verändert werden.
Server2 läuft mit Suse, Standard Web-Konfiguration. Apache, MySQL, PHP5, usw. Dieser Server kann zum ausführen der Aufgabe beliebig verändert werden.
Auf Server2 befindet sich ein Webinterface, welches nach erfolgreichem Login einige Aufgaben automatisiert (mit nur einem Klick) erledigen soll. Diese Aufgaben sollen von bereits vorhandenen Perl-Skripten auf Server1 ausgeführt werden. Die Perl-Skripte liegen auf Server1 und erwarten abgesehen vom Start-Befehl auch Attribute wie start, stop, restart, uvm. Diese Attribute müssen beim Ausführen der Skripte irgendwie mit übergeben werden.
Jetzt die Frage: Wie kann ich, nach Möglichkeit ohne die Konfiguration von Server1 zu verändern, die auf Server1 befindlichen Perl Dateien über das Webinterface von Server2 ausführen?
Die einzige, meines Erachtens nach aber nicht unbedingt optimale, Lösung die mir eingefallen ist, ist die folgende:
Nach dem anklicken der Aufgabe im Webinterface wird per PHP eine Datei in einem vorher festgelegten Verzeichnis von Server1 (per FTP) angelegt. Server1 lässt jede Minute per Crontab ein Script über das Verzeichnis laufen, welches nach genau der Datei ausschau hält, die durch das PHP-Skript erzeugt wird. Ist die Datei, mit passendem Inhalt und Parametern vorhanden, wird das verantwortliche Perl-Skript gestartet und die Aufgabe ist erfüllt.
Die Nachteile: Die Aufgaben werden nicht gerade Zeitkritisch erfüllt, lediglich jede Minute. Das "Überwachungs-Skript" müsste sehr komplex sein um jede Möglichkeit abdecken und alle verschiedenen Perl-Dateien ausführen zu können.
Fällt vielleicht jemandem etwas besseres ein um das Problem zu lösen?
Gruß sMo
Ich hänge gerade an einer Problemlösung für folgendes Szenario:
Server1 läuft mit einem Debian etch, in einer Minimalkonfiguration mit lediglich FTP und SSH. Der Server wird für verschiedenste Aufgaben eingesetzt, sollte aber um Ressourcen zu sparen und die Sicherheit nicht unnötig zu gefährden nach Möglichkeit nicht verändert werden.
Server2 läuft mit Suse, Standard Web-Konfiguration. Apache, MySQL, PHP5, usw. Dieser Server kann zum ausführen der Aufgabe beliebig verändert werden.
Auf Server2 befindet sich ein Webinterface, welches nach erfolgreichem Login einige Aufgaben automatisiert (mit nur einem Klick) erledigen soll. Diese Aufgaben sollen von bereits vorhandenen Perl-Skripten auf Server1 ausgeführt werden. Die Perl-Skripte liegen auf Server1 und erwarten abgesehen vom Start-Befehl auch Attribute wie start, stop, restart, uvm. Diese Attribute müssen beim Ausführen der Skripte irgendwie mit übergeben werden.
Jetzt die Frage: Wie kann ich, nach Möglichkeit ohne die Konfiguration von Server1 zu verändern, die auf Server1 befindlichen Perl Dateien über das Webinterface von Server2 ausführen?
Die einzige, meines Erachtens nach aber nicht unbedingt optimale, Lösung die mir eingefallen ist, ist die folgende:
Nach dem anklicken der Aufgabe im Webinterface wird per PHP eine Datei in einem vorher festgelegten Verzeichnis von Server1 (per FTP) angelegt. Server1 lässt jede Minute per Crontab ein Script über das Verzeichnis laufen, welches nach genau der Datei ausschau hält, die durch das PHP-Skript erzeugt wird. Ist die Datei, mit passendem Inhalt und Parametern vorhanden, wird das verantwortliche Perl-Skript gestartet und die Aufgabe ist erfüllt.
Die Nachteile: Die Aufgaben werden nicht gerade Zeitkritisch erfüllt, lediglich jede Minute. Das "Überwachungs-Skript" müsste sehr komplex sein um jede Möglichkeit abdecken und alle verschiedenen Perl-Dateien ausführen zu können.
Fällt vielleicht jemandem etwas besseres ein um das Problem zu lösen?
Gruß sMo
Last edited by a moderator: