Automatische Restartfunktion

Hier finden YaCy User Hilfe wenn was nicht funktioniert oder anders funktioniert als man dachte. Bei offensichtlichen Fehlern diese bitte gleich in die Bugs (http://bugs.yacy.net) eintragen.
Forumsregeln
In diesem Forum geht es um Benutzungsprobleme und Anfragen für Hilfe. Wird dabei ein Bug identifiziert, wird der thread zur Bearbeitung in die Bug-Sektion verschoben. Wer hier also einen Thread eingestellt hat und ihn vermisst, wird ihn sicherlich in der Bug-Sektion wiederfinden.

Automatische Restartfunktion

Beitragvon Vega » Mi Dez 16, 2009 9:09 am

Kurz eine Frage zur Restart Funktion - die ich durch Zufall gefunden
habe. Ich möchte diese gern unter Linux verwenden, in den Erweiterten
Einstellungen gibt es folgende Punkte dazu:

restart.process = off - das ist klar, muss ich auf on setzen.
restart.cycle = 20 - aller wie viel Stunden neu gestartet werden soll ????
restart.hour = 03 - klar, Uhrzeit zu der neu gestartet werden soll
restart.time = 0

Also restart.cycle und restart.hour beeinflussen sich doch gegenseitig,
oder ? Kannst das jemand kurz erklären ????

Gruß,
Thomas
Vega
 
Beiträge: 824
Registriert: Mi Jun 27, 2007 3:34 pm
Wohnort: Dresden

Re: Automatische Restartfunktion

Beitragvon dulcedo » Mi Dez 16, 2009 10:56 am

Nach solch einer Funktion hatte ich im Herbst gefragt, muss man dafür nur diese Einträge setzen?
Wenn das funktionieren würde müsste man ja Wartungsaufgaben nur in das zugehörige Script eintragen und hätte sichergestellt dass YaYy auch wirklich gestoppt ist.
dulcedo
 
Beiträge: 1006
Registriert: Do Okt 16, 2008 6:36 pm
Wohnort: Bei Karlsruhe

Re: Automatische Restartfunktion

Beitragvon Orbiter » Mi Dez 16, 2009 1:50 pm

höhö, das hatte ich angefangen aber nicht zuende gebracht. Von der Restartfunktion gibts bislang leider nur die Attribute, nicht aber die Funktion selber...
und die Attribute beeinflussen sich natürlich auch selber, da muss ich nochmal nachdenken. Im Prinzip ist das aber nicht so wild. Da muss nur eine Funktion in den Clean-Up Prozess rein, der die restart-Werte interpretiert. Wie hättet ihr das denn gerne?
Orbiter
 
Beiträge: 5796
Registriert: Di Jun 26, 2007 10:58 pm
Wohnort: Frankfurt am Main

Re: Automatische Restartfunktion

Beitragvon Vega » Mi Dez 16, 2009 4:19 pm

Mir würde folgendes reichen:

restart.process = off - das ist klar, on oder off aktiviert bzw. deaktiviert diese Funktion
restart.hour = 03 - Uhrzeit zu der neu gestartet werden soll, möglichst im 24 Stunden Format, eventuell etwas genauer einstellbar, also 02:30.
restart.error.mail=haumichblau@xxx.de - Mailadresse an die im Falle eines Fehlers eine Mail gesendete wird - wenn das schwierig ist, dann halt
restart.success.mail=

Die Mailsachen sind aber nicht zwingend notwendig, sondern nur nette Gimmicks......
Aktuell stoppe und starte ich YACY über einen Cron-Job Nachts neu, dabei kann es vorkommen, das wenn das Herunterfahren fehl schlägt Yacy quasie ein zweites mal gestartet wird, das ist bestimmt nicht gesund für die Datenbank, das sollte mit der in Yacy eingebauten Variante möglichst vermieden werden.

Gruß,
Thomas
Vega
 
Beiträge: 824
Registriert: Mi Jun 27, 2007 3:34 pm
Wohnort: Dresden

Re: Automatische Restartfunktion

Beitragvon dulcedo » Mi Dez 16, 2009 5:32 pm

Am besten sollte YaCy im htroot eine Statusdatei (mit der eignen pid) anlegen, zeitgleich mit dem geloggten "This is the last line", und die gleich bei Systemstart wieder löschen.
Ausserdem wäre es gut wenn man ein flag stzen könnte damit sich YaCy beendet und startYACY.sh weiter ausführt, ist das möglich?
dulcedo
 
Beiträge: 1006
Registriert: Do Okt 16, 2008 6:36 pm
Wohnort: Bei Karlsruhe

Re: Automatische Restartfunktion

Beitragvon dulcedo » Mo Jan 11, 2010 6:12 am

Orbiter hat geschrieben:Da muss nur eine Funktion in den Clean-Up Prozess rein, der die restart-Werte interpretiert.


Ich teste gerade eine Konfiguration in der sich 2 peers gegenseitig überwachen, dazu wäre diese Funktion sehr viel besser als ein cronjob. Damit kann ich dann sicherstellen dass die betreffende Instanz auch wirklich beendet ist bevor sie neu gestartet wird.
Abgefragt werden die zusammengeschalteten peers dann über einen Proxy (php oder ruby) der eine bestimmte Anzahl von peers anspricht, den ersten erreichbaren abfragt und das gelieferte xml/json an die Anwendung weiterreicht. Das löst auch das Firewall-Problem da der Proxy problemlos auf Port 80 laufen kann und die abgefragten Ports für die Anwendung keine Rolle mehr spielen.
dulcedo
 
Beiträge: 1006
Registriert: Do Okt 16, 2008 6:36 pm
Wohnort: Bei Karlsruhe

Re: Automatische Restartfunktion

Beitragvon Orbiter » Di Jan 12, 2010 3:27 pm

in dem Zusammenhang ist mir wieder eine ältere Idee zum Steuern von wiederkehrenden Vorgängen eingefallen: einfach über einen Scheduler das entsprechende Servlet aufrufen. Das kann man ganz generisch machen, so dass ein einzelner Scheduler sowohl das Restart als auch bsp. re-indexierungen anstossen kann. Da wir momentan beim recrawl so ein Problem mit den Parametern haben, die das bisherige cron nicht kann, würde ich den Weg mal ins Auge fassen. Mit dem Resultat, dass sich dann nahezu jedes Servlet in YaCy aber auch ausserhalb von YaCy über den Scheduler triggern liesse.
Orbiter
 
Beiträge: 5796
Registriert: Di Jun 26, 2007 10:58 pm
Wohnort: Frankfurt am Main

Re: Automatische Restartfunktion

Beitragvon dulcedo » Di Jan 12, 2010 5:57 pm

Das hört sich sehr gut an, wie kann man den Sheduler dann von ausserhalb ansprechen? Es muss auf alle Fälle möglich sein ihn anzusprechen wenn YaCy auf dem belegten Port nicht mehr reagiert, somit fällt HTML/XML über den YaCY-eigenen httpd aus.
dulcedo
 
Beiträge: 1006
Registriert: Do Okt 16, 2008 6:36 pm
Wohnort: Bei Karlsruhe

Re: Automatische Restartfunktion

Beitragvon Orbiter » Di Jan 12, 2010 8:42 pm

ich wollte eine Tabelle machen mit den Feldern:
- URL, die die Funktion aufruft
- Kommentar
- Zeitpunkt letzte Ausführung
- Pause bis zur nächsten Ausführung
dabei habe ich nicht daran gedacht das von aussen auszuführen, sondern das würde einfach der bereits existierende cleanup-Prozess übernehmen, die Tabelle durchzugehen und ausgelaufene Pausen aufzusammeln und dann den http request an die angegebene URL zu senden. Wieso von aussen?
Orbiter
 
Beiträge: 5796
Registriert: Di Jun 26, 2007 10:58 pm
Wohnort: Frankfurt am Main

Re: Automatische Restartfunktion

Beitragvon dulcedo » Di Jan 12, 2010 9:05 pm

Es geht um Fälle wo ein peer nicht mehr reagiert und der Prozess beendet werden muss um ihn neu zu starten. Anders lässt sich ein automatischer Restart nicht sicherstellen.
Ergänzung: Ich habe fast jeden morgen solch einen Fall: YaCY läuft noch und crawlt auch aber kann keine Verbindungen mehr verwalten, das sieht man deutlich im log. also ist er auch nicht über seinen Port erreichbar. Ein stopYACY.sh bewirkt allerdings auch nichts, warum eigentlich?
Also könnte ich ohne externen httpd nur per 'blindem' kill sicherstellen dass die Instanz nicht mehr läuft. Mache ich das mehrmals in diesem noch crawlenden Zustand ist sehr wahrscheinlich eine der Tabellen korrupt die ich dann löschen muss.
dulcedo
 
Beiträge: 1006
Registriert: Do Okt 16, 2008 6:36 pm
Wohnort: Bei Karlsruhe

Re: Automatische Restartfunktion

Beitragvon dulcedo » Do Jan 14, 2010 2:27 pm

Hierzu eine Anregung, damit YaCy ein Standalone-Paket bleibt könnte man einen minimalen Webserver ebenfalls unter Java auf einem anderen Port starten der die Überwachungsfunktionen verwaltet. Dazu braucht er dann lediglich Zugriff auf zu konfigurierende oder auszulesende Dateien innerhalb von YaCy und ist wesentlich einfacher nutzbar als ein SSH-Zugang den man alternativ verwenden könnte.
dulcedo
 
Beiträge: 1006
Registriert: Do Okt 16, 2008 6:36 pm
Wohnort: Bei Karlsruhe

Re: Automatische Restartfunktion

Beitragvon dulcedo » Fr Feb 05, 2010 6:32 am

@orbiter: Sehr guter Ansatz!
Bitte dran denken Table_API_p.html auch als XML verfügbar zu machen, dann ist alles abgedeckt was ich "von aussen" angedacht hatte.
dulcedo
 
Beiträge: 1006
Registriert: Do Okt 16, 2008 6:36 pm
Wohnort: Bei Karlsruhe


Zurück zu Fragen und Antworten

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 3 Gäste

cron