Ich bekomme Probleme mit Solr Absturz auf meinem Server. Es ist kaum eine geschäftige Seite, also bin ich verblüfft, warum es so weiter macht.solr/tomcat7 kommt nicht wieder nach einem Absturz
Wie auch immer, als Vermittler - Ich bin ein Shell-Skript geschrieben, das auf einem cron als root läuft:
#!/bin/bash
declare -a arr=(tomcat7 nginx mysql);
for i in "${arr[@]}"
do
echo "Checking $i"
if (($(ps -ef | grep -v grep | grep $i | wc -l) > 0))
then
echo "$i is running!!!"
else
echo "service $i start\n"
service $i start
fi
done
# re-run, but this time do a restart if its still not going!
for i in "${arr[@]}"
do
echo "Checking $i"
if (($(ps -ef | grep -v grep | grep $i | wc -l) > 0))
then
echo "$i is running!!!"
else
service $i restart
fi
done
..then diese cron (als root)
*/5 * * * * bash /root/script-checks.sh
Die cron selbst scheint ganz gut zu laufen:
Checking tomcat7
service tomcat7 start\n
Checking nginx
nginx is running!!!
Checking mysql
mysql is running!!!
Checking tomcat7
Checking nginx
nginx is running!!!
Checking mysql
mysql is running!!!
... und Tomcats Status scheint ok:
[email protected]:~# service tomcat7 status
â tomcat7.service - LSB: Start Tomcat.
Loaded: loaded (/etc/init.d/tomcat7)
Active: active (exited) since Mon 2016-03-21 06:33:28 GMT; 4 days ago
Process: 2695 ExecStart=/etc/init.d/tomcat7 start (code=exited, status=0/SUCCESS)
Warning: Journal has been rotated since unit was started. Log output is incomplete or unavailable.
... doch mein Skript kann nicht auf Solr verbinden:
Could not parse JSON response: malformed JSON string, neither tag, array, object, number, string or atom, at character offset 0 (before "Can't connect to loc...") at /srv/www/domain.net/www/cgi-bin/admin/WebService/Solr/Response.pm line 42. Can't connect to localhost:8080 Connection refused at /usr/share/perl5/LWP/Protocol/http.pm line 49.
Wenn ich manuell einen "Neustart" laufen:
service tomcat7 restart
... es dann zu arbeiten beginnt nochmal. Es ist fast wie der zweite Teil in meinem Shell-Skript funktioniert nicht.
Irgendwelche Vorschläge?
Meine Solr Versionen sind wie folgt:
Solr Specification Version: 3.6.2.2014.10.31.18.33.47
Solr Implementation Version: 3.6.2 debian - pbuilder - 2014-10-31 18:33:47
Lucene Specification Version: 3.6.2
UPDATE: Ich habe manchmal gelesen, dass die maxThreads Aktualisierung mit Abstürzen helfen kann, so habe ich es auf 10.000 geändert:
<Connector port="8443" protocol="org.apache.coyote.http11.Http11Protocol"
maxThreads="10000" SSLEnabled="true" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS" />
Ich denke, die Zeit wird es zeigen, um zu sehen, ob dies das Problem behebt.
Was sagen die Protokolle über Solr, wenn es abstürzt? – TMBT
Welche Version von Solr? – MatsLindh
Ich habe ein Problem mit dem Admin-Panel. Ich gebe ein: mysite.net:8080/solr, aber es hängt nur (und gibt schließlich einen "* Die Verbindung hat Zeitüberschreitung *" Fehler). Etwas verwirrend, wenn man in SSH über "lynx" darauf zugreift, funktioniert es ok (einfach nicht sehr schön oder einfach zu benutzen!). Ich kann die Versionsnummer eigentlich nicht herausfinden, da es nur eine Ladung Text nicht schön formatiert :( –