Hackerboard Wiki HaboBlog
Hackerboard bei Facebook Hackerboard bei Google+ Hackerboard bei Twitter

[HaBo]

 
Linux/UNIX Linuxverfechter finden hier Weggefährten.

SIGSEGV im Tomcat, wenn er in OpenVZ läuft

Diskussion: SIGSEGV im Tomcat, wenn er in OpenVZ läuft im Forum Linux/UNIX, in der Kategorie Operating Systems; Anzeige Ich bin gerade dabei ein paar Tomcats in OpenVZ-VMs auszulagern. Das stellt auch soweit kein Problem dar, solange diese ...

Antwort
Alt 26.03.10, 12:52   #1 (permalink)
Moderator
 
Benutzerbild von bitmuncher
 
Registriert seit: 30.09.06
bitmuncher Quadcorebitmuncher Quadcorebitmuncher Quadcorebitmuncher Quadcorebitmuncher Quadcorebitmuncher Quadcore
Likes: 441
Standard SIGSEGV im Tomcat, wenn er in OpenVZ läuft

Anzeige

Ich bin gerade dabei ein paar Tomcats in OpenVZ-VMs auszulagern. Das stellt auch soweit kein Problem dar, solange diese quasi mit Default-Libraries arbeiten. Da ich aber zum Senken der BusyThreads den AJP-Connector mit tomcat-native verwenden will, müssen ein paar zusätzliche Bibliotheken geladen werden. Das funktioniert solange es nicht innerhalb einer VM ist. Sobald diese Bibliotheken im System verfügbar gemacht werden, kommt es zum Crash des Tomcats schon beim Hochfahren, bevor überhaupt die Webapp angesprochen wird. Laut hs_err-Log wird ein SIGSEGV, also ein Segmentation Fault ausgelöst. Einen Fehler in der Webapp, die auf den Tomcats läuft, kann ich schonmal ausschliessen, da der Tomcat ohne die eingebundenen Zusatz-Bibliotheken läuft. Das Start-Skript für den Tomcat sollte eigentlich so aussehen:

Code:
#!/bin/sh

export CATALINA_OPTS=" -Xmx2000m -Xms2000m -XX:MaxPermSize=128m -Djvm.process.name=192.168.0.131-p0 -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.port=12090 "
export LC_ALL=C
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/data/meinefirma/app/p0/lib
export LD_LIBRARY_PATH

./startup.sh
Funktionieren tut's aber nur, wenn das Setzen des LD_LIBRARY_PATH entfernt wird. in dem zusätzlich angegebenen Ordner befinden sich Dateien für tcnative. Verursacher ist vermutlich die libtcnative-1.so.

Die Systemdaten:

Code:
rlimit: STACK 8192k, CORE 0k, NPROC infinity, NOFILE 8192, AS infinity
CPU:total 8 (4 cores per cpu, 1 threads per core) family 6 model 7 stepping 10, cmov, cx8, fxsr, mmx, sse, sse2, sse3, ssse3

Memory: 4k page, physical 7340032k(6082848k free), swap 9767512k(9767512k free)

vm_info: Java HotSpot(TM) 64-Bit Server VM (11.2-b01) for linux-amd64 JRE (1.6.0_12-b04)

uname:Linux 2.6.26-2-openvz-amd64

libc:glibc 2.7 NPTL 2.7 
Tomcat: 6.0.26
Das Problem scheint aber an der VM zu liegen, denn auf dem Host-System geht es ja. Ich denke daher, dass die libtcnative-1.so an irgendeiner Stelle nicht ausreichend Speicher o.ä. bekommt. Daher hier noch die OpenVZ-Einstellungen:

Code:
KMEMSIZE="16384000:18022400"
LOCKEDPAGES="1835008:1835008"
PRIVVMPAGES="1835008:1835008"
SHMPAGES="1835008:1835008"
NUMPROC="64000:64000"
PHYSPAGES="1835008:1835008"
VMGUARPAGES="1835008:1835008"
OOMGUARPAGES="1835008:1835008"
NUMTCPSOCK="9223372036854775807:9223372036854775807"
NUMFLOCK="8192:8192"
NUMPTY="1024:1024"
NUMSIGINFO="1024:1024"
TCPSNDBUF="402653184:402653184"
TCPRCVBUF="402653184:402653184"
OTHERSOCKBUF="9223372036854775807:9223372036854775807"
DGRAMRCVBUF="9223372036854775807:9223372036854775807"
NUMOTHERSOCK="9223372036854775807:9223372036854775807"
DCACHESIZE="9223372036854775807:9223372036854775807"
NUMFILE="9223372036854775807:9223372036854775807"
AVNUMPROC="2000:2000"
NUMIPTENT="128:128"

# Disk quota parameters (in form of softlimit:hardlimit)
DISKSPACE="31457280:31457280"
DISKINODES="3200000:3200000"
QUOTATIME="0"

# CPU fair sheduler parameter
CPUUNITS="1000"
Vielleicht hat hier ja jemand eine Idee, wo genau das Problem liegt und ggf. auch gleich, wie ich es beheben kann.
__________________
Mein Blog - Mein Job - Diaspora

Der Ring uns zu knechten besteht aus 12 Sternen auf blauem Grund.

Neue Beiträge im Habo via Twitter - Das HaBo auf FB - Das HaBo bei G+
bitmuncher ist offline   Mit Zitat antworten
Alt 29.03.10, 12:00   #2 (permalink)
Moderator
 
Registriert seit: 30.06.08
Chromatin Leistung: K 6-3Chromatin Leistung: K 6-3Chromatin Leistung: K 6-3Chromatin Leistung: K 6-3
Likes: 227
Standard

Zitat:
KMEMSIZE="16384000:18022400"
LOCKEDPAGES="1835008:1835008"
Darf der KMEM Parameter 2 verschiedene Werte haben?
Ansonsten wuerd mich mal interessieren obs laeuft und was es war.
__________________
Wenn ein Gesetz nicht gerecht ist, dann geht die Gerechtigkeit vor dem Gesetz!

Habo Blog - http://blog.hackerboard.de/
Chromatin ist offline   Mit Zitat antworten
Antwort
   
- Anzeige -

Werbung ist gerade online    

[HaBo] » Operating Systems » Linux/UNIX » SIGSEGV im Tomcat, wenn er in OpenVZ läuft
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind aus
Pingbacks sind aus
Refbacks sind aus



1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61