Problem mit plötzlicher Auslastung

Rund um die Sicherheit des Systems und die Applikationen
transmitter
Posts: 147
Joined: 2005-01-20 03:07

Problem mit plötzlicher Auslastung

Post by transmitter » 2005-12-11 23:51

Hi

Ich habe ein Problem mit meinem Debian Server (2400er AMD, 1GB RAM).
Im Moment liegen da ca. 10 kleine Webs von Kunden drauf, und eine Community, jedoch noch in der Entwicklungsphase.
Also kaum Traffic bzw. Besucher auf dem Server.

Ein Kunde hatte mich letztens schon angesprochen, dass seine Seite ewig gebraucht hätte zum Laden, dann gings aber wieder.
Jetzt habe ich das gleiche beobachtet, hat ca. 1 min gedauert, bis die Seite komplett geladen war, sonst in 0,.. sec.

Dann wollte ich mich gleich per SSH einloggen, Timeout, Timeout, kam erst beim 3. mal rein.
Nach ca. 2 min lief der Server wieder schön flüssig.

Habe hier im Forum gesucht, und folgendes eingegeben:

free -m

Code: Select all

             total       used       free     shared    buffers     cached
Mem:           993        978         14          0         80        121
-/+ buffers/cache:        776        216
Swap:          964        120        844
netstat

Code: Select all

Active Internet connections (w/o servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State
tcp        0      0 domain.d:SSHPort p54AFDE10.dip.t-d:60868 ESTABLISHED
tcp        0    268 domain.d:SSHPort p54AFDE10.dip.t-d:60869 ESTABLISHED
Active UNIX domain sockets (w/o servers)
Proto RefCnt Flags       Type       State         I-Node Path
unix  6      [ ]         DGRAM                    408207   /dev/log
unix  3      [ ]         STREAM     CONNECTED     2091780  /var/run/dovecot/login/default
unix  3      [ ]         STREAM     CONNECTED     2091779
unix  3      [ ]         STREAM     CONNECTED     2091778  /var/run/dovecot/login/default
unix  3      [ ]         STREAM     CONNECTED     2091777
unix  3      [ ]         STREAM     CONNECTED     2091776  /var/run/dovecot/login/default
unix  3      [ ]         STREAM     CONNECTED     2091775
unix  3      [ ]         STREAM     CONNECTED     2091770
unix  3      [ ]         STREAM     CONNECTED     2091769
unix  3      [ ]         STREAM     CONNECTED     2091768
unix  3      [ ]         STREAM     CONNECTED     2091767
unix  3      [ ]         STREAM     CONNECTED     2091766
unix  3      [ ]         STREAM     CONNECTED     2091765
unix  2      [ ]         DGRAM                    2076561
unix  3      [ ]         STREAM     CONNECTED     2076560
unix  3      [ ]         STREAM     CONNECTED     2076559
unix  3      [ ]         STREAM     CONNECTED     2076540
unix  3      [ ]         STREAM     CONNECTED     2076539
unix  3      [ ]         STREAM     CONNECTED     2076538
unix  3      [ ]         STREAM     CONNECTED     2076537
unix  3      [ ]         STREAM     CONNECTED     2076534
unix  3      [ ]         STREAM     CONNECTED     2076533
unix  3      [ ]         STREAM     CONNECTED     2072734  /var/run/mysqld/mysqld.sock
unix  3      [ ]         STREAM     CONNECTED     2072733
unix  2      [ ]         DGRAM                    973658
unix  3      [ ]         STREAM     CONNECTED     676221
unix  3      [ ]         STREAM     CONNECTED     676220
unix  2      [ ]         DGRAM                    439638
unix  2      [ ]         DGRAM                    408850
unix  2      [ ]         DGRAM                    370639
mysqladmin -u root -p -h 127.0.0.1 processlist

Code: Select all

+-------+-------+-----------------+-------+---------+------+-------+------------------+
| Id    | User  | Host            | db    | Command | Time | State | Info             |
+-------+-------+-----------------+-------+---------+------+-------+------------------+
| 32253 | vexim | localhost       | vexim | Sleep   | 796  |       |                  |
| 32594 | root  | localhost:48584 |       | Query   | 0    |       | show processlist |
+-------+-------+-----------------+-------+---------+------+-------+------------------+
> ps axw|grep httpd|wc -l
> 0

pstree

Code: Select all

init─┬─apache2─┬─apache2
     │         ├─apache2─┬─2*[php-fcgi───3*[php-fcgi]]
     │         │         └─2*[php-fcgi───2*[php-fcgi]]
     │         └─2*[apache2───apache2───26*[apache2]]
     ├─apmd
     ├─atd
     ├─bdflush
     ├─clamd───clamd
     ├─cron
     ├─dovecot─┬─dovecot-auth
     │         └─3*[pop3-login]
     ├─exim4
     ├─freshclam
     ├─6*[getty]
     ├─inetd
     ├─kapmd
     ├─keventd
     ├─kjournald
     ├─klogd
     ├─ksoftirqd_CPU0
     ├─kswapd
     ├─kupdated
     ├─mysqld_safe───mysqld_safe─┬─logger
     │                           └─mysqld───mysqld───9*[mysqld]
     ├─pure-ftpd
     ├─spamd───5*[spamd]
     ├─sshd─┬─sshd─┬─sshd
     │      │      └─sshd───sftp-server
     │      └─sshd─┬─sshd
     │             └─sshd───bash───bash───pstree
     └─syslogd
Ich habe fast 30 Apache Childs laufen, das ist aber noch nicht schlimm, oder?

Irgendwie mache ich mir sorgen um die Sicherheit, nicht, dass da ein Spammer drin ist oder DoSs oder sonst irgendwas :-/

Was kann ich denn machen um der Sache weiter auf den Grund zu gehen und könnt ihr mir anhand der Ausgaben irgendwas sagen, was mir weiterhelfen könnte?

PS: Habe in diesem Monat noch kein GB Traffic gehabt .. also DoS wird es wohl nicht sein!?

Danke schon mal.
Bye, Transmitter

cronet
Posts: 83
Joined: 2003-07-21 13:37
Location: Augsburg

Re: Problem mit plötzlicher Auslastung

Post by cronet » 2005-12-12 09:56

So etwas ähnliches hatte ich auch ...


was sagt

Code: Select all

hdparm -tT /dev/hda
und

Code: Select all

#hdparm /dev/hda

Gruß,
Alex

transmitter
Posts: 147
Joined: 2005-01-20 03:07

Re: Problem mit plötzlicher Auslastung

Post by transmitter » 2005-12-12 10:43

Einmal jenes hier:

Code: Select all

/dev/hda:
 Timing cached reads:   1216 MB in  2.00 seconds = 608.00 MB/sec
 Timing buffered disk reads:   18 MB in  3.35 seconds =   5.37 MB/sec

Code: Select all

/dev/hda:
 multcount    = 16 (on)
 IO_support   =  1 (32-bit)
 unmaskirq    =  1 (on)
 using_dma    =  0 (off)
 keepsettings =  0 (off)
 readonly     =  0 (off)
 readahead    =  8 (on)
 geometry     = 19457/255/63, sectors = 312581808, start = 0
Sieht doch nicht schlimm aus, oder?

cronet
Posts: 83
Joined: 2003-07-21 13:37
Location: Augsburg

Re: Problem mit plötzlicher Auslastung

Post by cronet » 2005-12-12 10:51

Nur mal zum vergleich:

Code: Select all

# hdparm -tT /dev/hda

/dev/hda:
 Timing cached reads:   1964 MB in  2.00 seconds = 981.94 MB/sec
 Timing buffered disk reads:  172 MB in  3.02 seconds =  56.87 MB/sec
Ich denke dein Problem ist dass die Fesplatte keinen DMA verwendet.

Versuch mal das hier:

Code: Select all

#hdparm -d1 /dev/hda
Gruß,
Alex

transmitter
Posts: 147
Joined: 2005-01-20 03:07

Re: Problem mit plötzlicher Auslastung

Post by transmitter » 2005-12-12 10:59

Code: Select all

/dev/hda:
 setting using_dma to 1 (on)
 HDIO_SET_DMA failed: Operation not permitted
 using_dma    =  0 (off)
Sehr merkwürdig .. unterstützt die HD dann einfach kein DMA oder gibt es einen User der mehr Rechte hat als root, von dem ich nichts weiß? :(

cronet
Posts: 83
Joined: 2003-07-21 13:37
Location: Augsburg

Re: Problem mit plötzlicher Auslastung

Post by cronet » 2005-12-12 11:15

zeig mal was

Code: Select all

#lspci 
anzeigt...

transmitter
Posts: 147
Joined: 2005-01-20 03:07

Re: Problem mit plötzlicher Auslastung

Post by transmitter » 2005-12-12 11:20

Da bekomme ich folgendes:

Code: Select all

0000:00:00.0 Host bridge: VIA Technologies, Inc. VT8378 [KM400] Chipset Host Bridge
0000:00:01.0 PCI bridge: VIA Technologies, Inc. VT8237 PCI Bridge
0000:00:0f.0 IDE interface: VIA Technologies, Inc. VT82C586A/B/VT82C686/A/B/VT823x/A/C PIPC Bus Master IDE (rev 06)
0000:00:10.0 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (rev 81)
0000:00:10.1 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (rev 81)
0000:00:10.2 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (rev 81)
0000:00:10.3 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (rev 81)
0000:00:10.4 USB Controller: VIA Technologies, Inc. USB 2.0 (rev 86)
0000:00:11.0 ISA bridge: VIA Technologies, Inc. VT8237 ISA bridge [K8T800 South]
0000:00:12.0 Ethernet controller: VIA Technologies, Inc. VT6102 [Rhine-II] (rev 78)
0000:01:00.0 VGA compatible controller: VIA Technologies, Inc. VT8378 [S3 UniChrome] Integrated Video (rev 01)

cronet
Posts: 83
Joined: 2003-07-21 13:37
Location: Augsburg

Re: Problem mit plötzlicher Auslastung

Post by cronet » 2005-12-12 11:43

Du musst deinen Kernel mit folgenden optionen kompilieren:

z.b. bei

Code: Select all

#make menuconfig


Device Drivers --> ATA/ATAPI/MFM/RLL support -->
<*>Generic PCI bus-master DMA support
<*>Use PCI DMA by default when available 
<*>VIA82CXXX chipset support
Danach sollte es funktionieren. Bei mir war es das gleiche Problem. Ich musste meinen kernel mit der Intel PIIXn Chipsatz unterstützung kompilieren.
Der Standard IDE Chipsatz Treiber kann nämlich nicht den DMA einschalten. Dann kommt exact die Fehlermeldung die du beschrieben hast.
Mit dem neuen Kernel hat alles auf anhieb funktioniert, und ich musste nicht mal mehr mit hdparm Hand anlegen.

Viele Grüße,
Alex

transmitter
Posts: 147
Joined: 2005-01-20 03:07

Re: Problem mit plötzlicher Auslastung

Post by transmitter » 2005-12-12 12:25

Aber nachdem ich den Kernel neu kompiliert habe, muss ich den Server neu starten, oder?

Ich traue mich irgendwie nich, den Server auszumachen, der läuft so schön und ich befürchte schlimmstes, wenn ich da jetzt einen neuen Kernel reinhänge :-/

Kann ich irgendwie rausfinden, ob ich noch irgendwelche Parameter benötige, bzw. welche Parameter für den aktuellen Kernel verwendet wurden?
Und soll ich dann gleich die neuste Kernelverison einspielen, oder lieber doch wieder 2.4 mit security patch?

cronet
Posts: 83
Joined: 2003-07-21 13:37
Location: Augsburg

Re: Problem mit plötzlicher Auslastung

Post by cronet » 2005-12-12 12:38

Code: Select all

Aber nachdem ich den Kernel neu kompiliert habe, muss ich den Server neu starten, oder?
Ja, Du musst neu starten.

Code: Select all

Ich traue mich irgendwie nich, den Server auszumachen, der läuft so schön und ich befürchte schlimmstes, wenn ich da jetzt einen neuen Kernel reinhänge :-/
Ich weiß ja nicht wie alt dein Kernel ist. Aber früher oder später MUSST Du den Server eh neustarten.

Code: Select all

Kann ich irgendwie rausfinden, ob ich noch irgendwelche Parameter benötige, bzw. welche Parameter für den aktuellen Kernel verwendet wurden?
Deine Kernel config liegt im /boot Verzeichnis.

Wenn Du deinen Kernel selbst gebaut hast, kannst Du in dein kernel-src Verzeichnis wechseln und

Code: Select all

#make menuconfig
eingeben.
Alternativ kannst Du dir eine neue Kernel-src von kernel.org laden, und dann die aktuelle config aus /boot laden.

Code: Select all

Und soll ich dann gleich die neuste Kernelverison einspielen, oder lieber doch wieder 2.4 mit security patch?
Wenn Du im Moment 2.4 verwendest, kannst Du das auch weiterhin tun...

transmitter
Posts: 147
Joined: 2005-01-20 03:07

Re: Problem mit plötzlicher Auslastung

Post by transmitter » 2005-12-12 12:44

Danke dir .. dann mache ich das am besten nächstes WE Nachts, damit die Webs nicht so lange down sind. :)