vServer Freeze

snowman_x2

New Member
Hallo,

ich habe folgendes Problem. Ich habe einen Server4you Vserver Medium mit Suse 9.3. Es ist ein kleines CMS (Phpkit) inkl. Apache 2 inkl. MySQL inkl. clamd (Mail) Virusscanner inkl. eines Ventrilo (wenig User) und ein Teamspeak (wenig User) server installiert. Dazu noch Denyhosts und eine kleine Firewall.
Der Server friert in regelmäßigen Abständen ein, d.h. es ist z.B. die Webseite nicht mehr zu erreichen. SSH geht meistens aber noch.

Hier meine Config:

Code:
vs123456:~ # cat /proc/user_beancounters
Version: 2.5
       uid  resource                     held              maxheld              barrier                limit              failcnt
    123456: kmemsize                  4964820              6669154              8467453              9314198                    0
            lockedpages                     0                  344                  344                  344                    6
            privvmpages                 40814                60317               131072               139264                    0
            shmpages                      694                  726                19567                19567                    0
            dummy                           0                    0                    0                    0                    0
            numproc                        44                   67                  128                  128                    0
            physpages                   25032                40912                    0  9223372036854775807                    0
            vmguarpages                     0                    0                65536  9223372036854775807                    0
            oomguarpages                25032                40912                65536  9223372036854775807                    0
            numtcpsock                    129                  165                  172                  172                    0
            numflock                       11                   30                  224                  246                    0
            numpty                          1                    2                   16                   16                    0
            numsiginfo                      0                   14                  512                  512                    0
            tcpsndbuf                  174912               315552              1416560              2768240                    0
            tcprcvbuf                 1237712              1472376              1416560              2768240                 3743
            othersockbuf               185176               447144               655717              1153621                    0
            dgramrcvbuf                     0                76560               655717               655717                    0
            numothersock                  108                  228                  228                  228                  219
            dcachesize                1226772              1424574              1503190              1548286                    0
            numfile                      2143                 3008                 3008                 3008                12433
            dummy                           0                    0                    0                    0                    0
            dummy                           0                    0                    0                    0                    0
            dummy                           0                    0                    0                    0                    0
            numiptent                      33                   33                   64                   64                    0

Code:
vs123456:~ # free -m
             total       used       free     shared    buffers     cached
Mem:           512        157        354          0          0          0
-/+ buffers/cache:        157        354
Swap:            0          0          0
vs123456:~ #

Code:
vs123456:~ # cat /etc/my.cnf
[client]
port            = 3306
socket          = /var/lib/mysql/mysql.sock

[mysqld]
port            = 3306
socket          = /var/lib/mysql/mysql.sock
skip-locking
key_buffer = 8M
max_allowed_packet = 1M
table_cache = 512
sort_buffer_size = 64K
net_buffer_length = 16K
read_buffer_size = 512K
read_rnd_buffer_size = 1M
myisam_sort_buffer_size = 8M

server-id       = 1

MASTER_PORT=3306,

[safe_mysqld]
err-log=/var/lib/mysql/mysqld.log

[mysqldump]
quick
max_allowed_packet = 16M

[mysql]
no-auto-rehash

[isamchk]
key_buffer = 20M
sort_buffer_size = 20M
read_buffer = 2M
write_buffer = 2M

[myisamchk]
key_buffer = 20M
sort_buffer_size = 20M
read_buffer = 2M
write_buffer = 2M

[mysqlhotcopy]
interactive-timeout

Code:
vs123456:~ # cat /etc/apache2/server-tuning.conf

# prefork MPM
<IfModule prefork.c>
        # number of server processes to start
        StartServers            1
        # minimum number of server processes which are kept spare
        MinSpareServers         1
        # maximum number of server processes which are kept spare
        MaxSpareServers         1
        # highest possible MaxClients setting for the lifetime of the Apache process.
        ServerLimit            1000
        # maximum number of server processes allowed to start
        MaxClients             2
        # maximum number of requests a server process serves
        MaxRequestsPerChild   500
</IfModule>

Code:
vs123456:~ # ps -aux
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         1  0.0  0.0    604   248 ?        Ss   Jun06   0:02 init [3]
root      7639  0.0  0.1   1456   612 ?        Ss   Jun06   0:14 /sbin/syslogd -a /var/lib/named/dev/log -a /var/lib/ntp/dev/log
root      7654  0.0  0.0   1396   372 ?        Ss   Jun06   0:00 /sbin/klogd -c 1 -x -x
root      7712  0.0  0.2   4308  1280 ?        Ss   Jun06   0:10 /usr/sbin/saslauthd -a pam -n 1
user1     7791  0.0  0.1   3004   600 ?        Ss   Jun06   0:04 /home/user1/ventsrv/ventrilo_srv -f/home/user1/ventsrv/ventrilo_srv -d
root      7950  0.0  0.2   4524  1128 ?        Ss   Jun06   0:00 /usr/sbin/sshd -o PidFile=/var/run/sshd.init.pid
root      7976  0.0  0.1   2076   876 ?        Ss   Jun06   0:00 /usr/sbin/xinetd
user1    11688  0.0  0.3  19628  1980 ?        SNl  Jun06   7:50 /home/user1/tss2/tss2_rc2/server_linux -PID=/home/user1/tss2/tss2_rc2/tsserver2.pid
vscan    13440  0.0  7.1  41856 37556 ?        Ss   Jun06   0:17 amavisd (master)
root     16114  0.0  0.2   4308  1524 ?        Ss   Jun06   0:18 /usr/lib/postfix/master
postfix  16201  0.0  0.3   4456  1640 ?        S    Jun06   0:07 qmgr -l -t fifo -u
root     16236  0.0  0.1   1668   692 ?        Ss   Jun06   0:00 /usr/sbin/cron
postfix  16267  0.0  0.2   4352  1568 ?        S    Jun06   0:02 tlsmgr -l -t unix -u
vscan    16278  0.0  0.2   2812  1332 ?        Ss   Jun06   1:18 /usr/bin/freshclam -d
root      5276  0.1  4.1  25268 21768 ?        S    Jun06  13:42 python /usr/bin/denyhosts.py --daemon --config=/usr/share/denyhosts/denyhosts.cfg
root     28117  0.0  2.2  26632 11632 ?        Ss   Jun06   0:03 /usr/sbin/httpd2-prefork -f /etc/apache2/httpd.conf -DSSL
root     32720  0.0  0.2   2376  1144 ?        S    Jun06   0:00 /bin/sh /usr/bin/mysqld_safe --user=mysql --pid-file=/var/lib/mysql/mysqld.pid --socket=/var/lib/mysql/mysql.s
mysql    32757  0.1  3.1  51780 16596 ?        Sl   Jun06  11:33 /usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --user=mysql --pid-file=/var/lib/mysql/mysqld.pid --s
root      5140  0.0  0.2   3200  1452 ?        S    Jun07   0:02 /usr/bin/perl /usr/local/confixx/pipelog.pl
wwwrun   28151  0.0  2.0  28288 10576 ?        S    Jun12   0:42 /usr/sbin/httpd2-prefork -f /etc/apache2/httpd.conf -DSSL
wwwrun   30524  0.0  2.0  28328 10524 ?        S    03:35   0:21 /usr/sbin/httpd2-prefork -f /etc/apache2/httpd.conf -DSSL
root     20373  0.0  0.5   7724  2756 ?        Rs   10:31   0:00 sshd: root@pts/0
root     22126  0.0  0.3   2840  1800 pts/0    Ss   10:31   0:00 -bash
postfix  16056  0.0  0.2   4352  1420 ?        S    10:34   0:00 pickup -l -t fifo -u
vscan    18162  0.0  6.9  42592 36552 ?        S    10:42   0:00 amavisd (virgin child)
root     23745  0.0  0.1   2380   860 pts/0    R+   10:50   0:00 ps -aux

Code:
top - 10:52:29 up 6 days, 20:54,  1 user,  load average: 0.00, 0.00, 0.00
Tasks:  26 total,   1 running,  25 sleeping,   0 stopped,   0 zombie
Cpu(s):  0.2% us,  0.1% sy,  0.0% ni, 99.6% id,  0.1% wa,  0.0% hi,  0.0% si
Mem:    524288k total,   161820k used,   362468k free,        0k buffers
Swap:        0k total,        0k used,        0k free,        0k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
    1 root      15   0   604  248  216 S  0.0  0.0   0:02.39 init
 7639 root      16   0  1456  612  512 S  0.0  0.1   0:14.14 syslogd
 7654 root      16   0  1396  372  312 S  0.0  0.1   0:00.00 klogd
 7712 root      16   0  4308 1280  876 S  0.0  0.2   0:10.77 saslauthd
 7791 user1     16   0  3004  600  468 S  0.0  0.1   0:04.93 ventrilo_srv
 7950 root      16   0  4524 1128  760 S  0.0  0.2   0:00.40 sshd
 7976 root      16   0  2076  876  716 S  0.0  0.2   0:00.00 xinetd
11688 user1     34  19 19628 1980 1428 S  0.0  0.4   7:51.09 server_linux
13440 vscan     16   0 41856  36m 2528 S  0.0  7.2   0:17.58 amavisd
16114 root      16   0  4308 1524 1212 S  0.0  0.3   0:18.25 master
16201 postfix   16   0  4456 1640 1224 S  0.0  0.3   0:07.86 qmgr
16236 root      15   0  1668  692  568 S  0.0  0.1   0:00.35 cron
16267 postfix   16   0  4352 1568 1196 S  0.0  0.3   0:02.10 tlsmgr
16278 vscan     15   0  2812 1332  980 S  0.0  0.3   1:18.96 freshclam
 5276 root      16   0 25268  21m 1632 S  0.0  4.2  13:43.22 python
28117 root      16   0 26632  11m 7020 S  0.0  2.2   0:03.85 httpd2-prefork
32720 root      17   0  2376 1144  920 S  0.0  0.2   0:00.01 mysqld_safe
32757 mysql     15   0 51780  16m 3940 S  0.0  3.2  11:33.49 mysqld
 5140 root      15   0  3200 1452 1212 S  0.0  0.3   0:02.94 pipelog.pl
28151 wwwrun    16   0 28156  10m 4180 S  0.0  2.0   0:42.45 httpd2-prefork
30524 wwwrun    15   0 28104  10m 4176 S  0.0  2.0   0:21.69 httpd2-prefork
20373 root      16   0  7724 2756 2236 S  0.0  0.5   0:00.14 sshd
22126 root      17   0  2840 1800 1300 S  0.0  0.3   0:00.06 bash
16056 postfix   15   0  4352 1420 1128 S  0.0  0.3   0:00.00 pickup
18162 vscan     18   0 42592  35m 1524 S  0.0  7.0   0:00.00 amavisd
17973 root      15   0  1976  980  760 R  0.0  0.2   0:00.00 top

Code:
vs123456:~ # iptables -L
Chain INPUT (policy DROP)
target     prot opt source               destination
ACCEPT     all  --  anywhere             anywhere
DROP       tcp  --  anywhere             anywhere            tcp flags:FIN,SYN,RST,PSH,ACK,URG/FIN,SYN,RST,PSH,ACK,URG
DROP       tcp  --  anywhere             anywhere            tcp flags:FIN,SYN,RST,PSH,ACK,URG/NONE
DROP       tcp  --  anywhere             anywhere            tcp flags:SYN,RST/SYN,RST
DROP       tcp  --  anywhere             anywhere            tcp flags:FIN,SYN,RST,PSH,ACK,URG/FIN,SYN,RST,ACK,URG
DROP       icmp -f  anywhere             anywhere
ACCEPT     tcp  --  anywhere             vs123456.vserver.de multiport dports ftp-data,ftp,ssh,smtp,http,pop3,https,pop3s,socks,bfd
ACCEPT     udp  --  anywhere             vs123456.vserver.de multiport dports bfd,8767
ACCEPT     icmp --  anywhere             vs123456.vserver.de icmp echo-request
ACCEPT     tcp  --  anywhere             vs123456.vserver.de tcp dpts:65000:65049
ACCEPT     tcp  --  anywhere             vs123456.vserver.de multiport sports ftp-data,ftp,ssh,smtp,http,https,smtps
ACCEPT     udp  --  anywhere             vs123456.vserver.de multiport sports domain,ntp
ACCEPT     icmp --  anywhere             vs123456.vserver.de icmp echo-reply
ACCEPT     tcp  --  balder784.startdedicated.com  vs123456.vserver.de tcp spt:5224

Chain FORWARD (policy DROP)
target     prot opt source               destination

Chain OUTPUT (policy DROP)
target     prot opt source               destination
ACCEPT     all  --  anywhere             anywhere
ACCEPT     tcp  --  vs123456.vserver.de  anywhere            multiport sports ftp-data,ftp,ssh,smtp,http,pop3,https,pop3s,socks,bfd
ACCEPT     udp  --  vs123456.vserver.de  anywhere            multiport sports bfd,8767
ACCEPT     icmp --  vs123456.vserver.de  anywhere            icmp echo-reply
ACCEPT     tcp  --  vs123456.vserver.de  anywhere            tcp spts:65000:65049
ACCEPT     tcp  --  vs123456.vserver.de  anywhere            multiport dports ftp-data,ftp,ssh,smtp,http,https,smtps
ACCEPT     udp  --  vs123456.vserver.de  anywhere            multiport dports domain,ntp
ACCEPT     icmp --  vs123456.vserver.de  anywhere            icmp echo-request
ACCEPT     tcp  --  vs123456.vserver.de  balder784.startdedicated.com tcp dpt:5224

Hoffentlich kann mir wer Tipps geben wie ich den vServer wieder zum stabilen laufen kriegen kann!
Danke
 
Hi,

Code:
resource                     held              maxheld              barrier                limit              failcnt
numfile                      2143                 3008                 3008                 3008                [B]12433[/B]

Dein grösstes Problem ist dass Du zu viele offene Dateien im System hast, bzw. die Grenze von 3008 zu oft überschreitest.

Basti
 
Ahh ok danke.

Wie macht man hier dann Troubleshooting?
Wie sieht man alle aktuell geöffneten Datien?

Kann man Apache so konfigurieren, das es weniger Dateien offen hat?
Oder ist mySQL schuld?
 
Wie sieht man alle aktuell geöffneten Datien?
Die Ausgabe von 'lsof' wird allerdings nicht mit den Werten in den UBCs übereinstimmen, da die Virtualisierungsumgebung die Filedescriptoren immer in Bündeln von 8 Stück alloziert. Daher musst Du bei deinen Optimierungsversuchen ziemlich großzügig rechnen.
 
Ich habe aehnliche Probleme mit meinen RootDS starter von S4Y.
Ich stoße auch ziemlich haeufig an das Limit von "numfile".

Den groeßten Teil der geoeffneten Dateien scheint wohl MySQL und dem Apache zugeordnet zu sein.

Code:
      7 klogd
      8 grep
      8 logger
      8 splogger
      8 uniq
      9 init
     12 watchdog
     16 sort
     17 dccifd
     18 cron
     19 lsof
     19 top
     21 monit
     23 xinetd
     24 syslogd
     28 drwebd
     30 bash
     33 named
     45 wdcollect
     52 courierlo
     64 couriertc
    120 sshd
    134 qmail
    135 spamd
    200 httpsd
   1009 mysqld
   2183 apache

Die Apache Konfiguration ist wie folgt :

Code:
<IfModule prefork.c>
        StartServers         3
        MinSpareServers      3
        MaxSpareServers      6
        ServerLimit          30
        MaxClients           30
        MaxRequestsPerChild  3000
</IfModule>

Auf dem Webserver laufen ca. 10 Domains.
Was bei lsof auffaellt ist, das der Webserver die access_log und die error_log so ziemlich fuer alle Domains mehrfach geoeffnet hat.
Alle unnoetigen Apache-Module habe ich bereits entfernt.

Die MySQL Konfiguration :

max_connections ist auf 100 gesetzt.
Die Variable table_cache habe ich schon auf 550 (was open_files_limit = 1210 files ergibt) begrenzen muessen, da sonst zuoft das numfile Limit erreicht wird.

Das tuning-primer Script macht schon folgende Ausgabe :

Code:
TABLE CACHE
Current table_cache value = 550 tables
You have a total of 564 tables
You have 550 open tables.
Current table_cache hit rate is 1%, while 100% of your table cache is in use
You should probably increase your table_cache

Was ich außerdem nicht verstehe ist, warum MySQL so viele Tabellen Cached, die meisten der 564 Tabellen werden sogar ziemlich selten verwendet.

Ausgabe der beancounter:
Code:
numfile                      6159                 6944                 6944                 6944               177627
Alle anderen Werte sind ok, bis eben auf numfile.

Jetzt braeuchte ich nur den entscheidenden Tip was ich dagegen machen kann (Außer, ja ich weiß, den Server zu Upgraden)

Vielen Dank im voraus.
 
Back
Top