PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Root-Server ausgelastet


David-Lynch
26.10.06, 13:13
Erstmal hi an alle. ;)

Vorweg gesagt ich bin nicht der Held was Linux angeht und meine Aufgabe ist eigentlich nur der CSS-Server. Genau dieser macht jetzt aber einige Probleme.

Unser Root-Server ist ein 3.2er Athlon 64 mit 1 GB RAM.
Es liegt eine Clan Homepage darauf die wenig besucht ist.
Ein TS² Server auf dem maximal 15 User sind
und ein 12 Slot CSS-Server der mit Tickrate 100 und max fps 500 läuft.
Der CSS-Server hat folgende Plugins:
Main Mods:
- SourceMetamod v 1.3a
- Mani Admin Plugin v1.1 zk
- Mattie EventScripts v1.1.1.015

Plugins:
Glittermod 1.2.0.16 (Weapon Restriction)
SteamBans 2.2
SBS CVAR-X v1.0 RC7 (blockt CVARs und Befehle die zu unfairem Gameplay führen)

Eventscripts:
GunGame 3

Unser Linux hat einen 2.6er Kernel der mit 1000 hz läuft.

In der Regel funktioniert das auch alles wunderbar.

Leider passiert es in unregelmäßigen Abständen (Stunden, Tage, Wochen) das der CSS-Server plötzlich einen Ping von 1000 - 3000 - Timeout hat. Das geht dann eine Zeitlang so und dann ist alles wider normal.

Wenn man in der Zeit in ssh top eingibt sieht man das der Root-Server ausgelasstet ist. Da sich das System plötzlich knapp 50 % CPU nimmt, reicht das was übrig bleibt natürlich nicht für den CSS-Server (Load Average über 2) was dann wohl zu dem beschriebenen Problem führt. Zumindest vermute ich das. Wenn ich den CSS-Server kille, löst sich das Problem langsam aber sicher. Load Average geht runter und ich kann den CSS-Server wider starten, welcher dann auch wider ganz normal läuft.

Nun hat unser WebAdmin gemutmaßt das der CSS-Server irgendein System Programm dazu bringt soviel CPU zu beanspruchen.

Hier ein Auszug aus top wärend das ganze passiert:


top - 22:24:08 up 19 days, 10:03, 1 user, load average: 2.02, 1.60, 1.03:eek:
Tasks: 56 total, 3 running, 53 sleeping, 0 stopped, 0 zombie
Cpu(s): 52.0% us, 47.3% sy, :confused: 0.0% ni, 0.0% id, 0.0% wa, 0.7% hi, 0.0% si
Mem: 905892k total, 883436k used, 22456k free, 89024k buffers
Swap: 1084348k total, 30040k used, 1054308k free, 481812k cached

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
7980 tcc 31 0 225m 139m 13m R 99.9 15.7 85:22.54 srcds_amd:eek:
1 root 20 0 1584 472 444 S 0.0 0.1 0:04.80 init
2 root 39 19 0 0 0 S 0.0 0.0 0:01.14 ksoftirqd/0
3 root 15 -5 0 0 0 S 0.0 0.0 0:08.64 events/0
4 root 15 -5 0 0 0 S 0.0 0.0 0:00.00 khelper
5 root 15 -5 0 0 0 S 0.0 0.0 0:00.00 kthread
7 root 15 -5 0 0 0 S 0.0 0.0 0:00.01 kblockd/0
70 root 24 0 0 0 0 S 0.0 0.0 0:00.02 pdflush
71 root 20 0 0 0 0 S 0.0 0.0 1:10.07 pdflush
73 root 39 19 0 0 0 S 0.0 0.0 0:02.72 kprefetchd
72 root 21 0 0 0 0 S 0.0 0.0 0:18.14 kswapd0
74 root 15 -5 0 0 0 S 0.0 0.0 0:00.00 aio/0
662 root 15 -5 0 0 0 S 0.0 0.0 0:00.00 kseriod
719 root 20 0 0 0 0 S 0.0 0.0 2:20.14 kjournald
937 root 20 0 1632 532 440 S 0.0 0.1 0:15.02 syslogd
940 root 20 0 1588 356 300 S 0.0 0.0 0:00.01 klogd
947 bind 20 0 30832 2336 1496 S 0.0 0.3 1:13.02 named
983 Debian-e 20 0 4732 764 692 S 0.0 0.1 0:00.03 exim4
988 root 20 0 1620 484 440 S 0.0 0.1 0:00.05 inetd
1007 root 20 0 2640 1048 1044 S 0.0 0.1 0:00.00 mysqld_safe
1044 mysql 20 0 122m 28m 3124 S 0.0 3.2 29:51.19 mysqld
1045 root 20 0 1568 436 432 S 0.0 0.0 0:00.00 logger
1096 root 20 0 2988 748 672 S 0.0 0.1 0:15.91 sshd
1102 root 20 0 1828 680 604 S 0.0 0.1 0:03.89 cron
1112 root 20 0 1772 592 528 S 0.0 0.1 13:28.35 smgmd
1169 tss 39 19 21036 1616 1004 S 0.0 0.2 0:03.87 server_linux
1170 tss 20 0 21036 1616 1004 S 0.0 0.2 0:01.63 server_linux
1171 tss 20 0 21036 1616 1004 S 0.0 0.2 5:03.80 server_linux
1172 tss 20 0 21036 1616 1004 S 0.0 0.2 7:37.21 server_linux
1173 tss 20 0 21036 1616 1004 S 0.0 0.2 6:35.47 server_linux
1177 tss 20 0 21036 1616 1004 S 0.0 0.2 0:04.95 server_linux
1178 tss 20 0 21036 1616 1004 S 0.0 0.2 2:13.41 server_linux
1179 tss 20 0 21036 1616 1004 S 0.0 0.2 2:12.72 server_linux
1180 tss 20 0 21036 1616 1004 S 0.0 0.2 0:12.12 server_linux
1183 root 20 0 1584 416 412 S 0.0 0.0 0:00.00 getty
1184 root 20 0 1584 416 412 S 0.0 0.0 0:00.00 getty
1185 root 20 0 1580 416 412 S 0.0 0.0 0:00.00 getty
1186 root 20 0 1584 416 412 S 0.0 0.0 0:00.00 getty
1187 root 20 0 1584 416 412 S 0.0 0.0 0:00.00 getty
1188 root 20 0 1584 416 412 S 0.0 0.0 0:00.00 getty
29683 root 20 0 13444 4460 3072 S 0.0 0.5 0:00.46 apache
7963 tcc 20 0 2536 1220 928 S 0.0 0.1 0:00.00 srcds_run
8148 www-data 20 0 14916 5564 2604 S 0.0 0.6 0:02.68 apache
8245 www-data 20 0 14868 5504 2592 S 0.0 0.6 0:02.24 apache
8367 www-data 20 0 14944 5536 2596 S 0.0 0.6 0:02.26 apache
8383 www-data 20 0 14824 5988 3132 S 0.0 0.7 0:02.10 apache
8385 www-data 20 0 14896 5496 2556 S 0.0 0.6 0:01.86 apache
8386 www-data 30 0 14808 5424 2572 S 0.0 0.6 0:01.57 apache
8395 www-data 20 0 14908 5716 2812 S 0.0 0.6 0:02.97 apache
8422 www-data 20 0 14720 5892 3140 S 0.0 0.7 0:02.11 apache
8425 www-data 21 0 14800 5412 2568 S 0.0 0.6 0:01.77 apache
9859 www-data 20 0 14808 5968 3128 S 0.0 0.7 0:01.55 apache
16642 root 20 0 5996 1588 1288 S 0.0 0.2 0:00.01 sshd
... usw



Falls ihr noch Informationen braucht sagt bescheid. Ansonsten bedanke ich mich schonmal bei allen die sich Gedanken über das Thema machen. :o

David-Lynch
05.11.06, 23:29
*push*
Keiner ne Idee?

bla!zilla
06.11.06, 06:06
Ja doch, ist ein Applikationsproblem, wie man unschwer an dieser Zeile erkennen kann.

7980 tcc 31 0 225m 139m 13m R 99.9 15.7 85:22.54 srcds_amd

99,9% CPU Zeit und 15m,7% Hauptspeicherverbrauch sind schon eine Hausnummer. Dafür verantwortlich ist srcds_amd. Was immer das auch ist...

-hanky-
06.11.06, 10:30
@ bla!zilla: Das dürfte der Counterstrike Source-Server sein.

@ David-Lynch: Hast du z.B. mal bei Valve in den Supportforen nachgesehen? Wenn ich mich recht entsinne ( oder die Suchfunktion des Forums bemühe... -> [1] ) war da was mit srcds + AMD. Im ersten genannten Thread ist auch ein Link zu einer Valve FAQ [2] die auf das Thema Intel vs AMD eingeht.

-hanky-

[1] http://www.linuxforen.de/forums/showthread.php?t=212653&page=6
[2] http://support.steampowered.com/cgi-bin/steampowered.cfg/php/enduser/std_adp.php?p_faqid=108&p_created=1093248464&p_sid=VTO3l48i&p_lva=&p_sp=cF9zcmNoPTEmcF9zb3J0X2J5PSZwX2dyaWRzb3J0PSZwX 3Jvd19jbnQ9MTgmcF9wcm9kcz02NCZwX2NhdHM9NTcmcF9wdj0 xLjY0OzIudTAmcF9jdj0xLjU3OzIudTAmcF9zZWFyY2hfdHlwZ T1hbnN3ZXJzLnNlYXJjaF9ubCZwX3BhZ2U9MQ**&p_li=&p_topview=1

bla!zilla
06.11.06, 10:56
Das es sich bei dem Prozess um den eigentlichen Gameserver handelt, habe ich mir fast gedacht. :) Trotzdem liegt hier kein Problem mit der Hardware oder der Betriebssysteminstallation vor. Ist halt Applikation. Aber die von dir geposteten Links bringen vielleicht die Lösung. Wäre auf jeden Fall schön wenn der OP hier die Lösung auch postet, damit sie über die SuFu erreichbar ist.

David-Lynch
13.11.06, 10:29
Also der Server läuft zwar mit Tickrate 100 aber mit 250 fps also den standard fps. Normalerweise benötigt der Server 30 - 50% CPU wenn er voll ist. Was mich wundert ist, dass die sys Prozesse plötzlich 47% CPU brauchen. Nur wenn das passiert zieht der CSS-Server 99% ansonsten läuft er ohne Probleme.

Der Server wird mit folgendem Befehl gestartet:

./srcds_run -game cstrike +map de_dust2 +maxplayers 12 -port 27015 -tickrate 100 -autoupdate -norestart

Wie man sieht sind die max_fps nicht erhöht.

Aber ich werde mich noch mal im Valve Forum umschauen. Wobei ich befürchte das mich das nicht viel weiter bringen wird. :/

David-Lynch
15.11.06, 23:44
Hm anscheinend ist das Problem gelöst oder einfach nicht mehr aufgetaucht.

Ich hab dem server eine höhere Priorität gegeben (n 5). Seid dem ist nichts mehr passiert oder ich habe es bisher noch nicht mitbekommen. :))

THEReapMan
16.11.06, 06:04
Meistens isigendeins von den servermod's dafür verantwortlich. die leistung die die dinger brauchen ist nicht zu unterschätzen. einfach mal auf den seiten der jeweiligen mods umschauen obs updates oder bugfixes gibt.

weil mit der priorität hast du ja nur die symptome erschlagen nich aber das problem selbst.

rudi_m
16.11.06, 12:56
Ich hab dem server eine höhere Priorität gegeben (n 5)

nice level 5?
Das ist niedrigere Prioritaet als 0.

man nice

David-Lynch
16.11.06, 17:18
Ich dacht es geht von -19 bis 20 wobei 20 die höchste Priorität ist?

stefan.becker
16.11.06, 18:51
man nice :)

othan
17.11.06, 09:36
Ich dacht es geht von -19 bis 20 wobei 20 die höchste Priorität ist?

Nice gibt an wie "nett" der Prozess zu einem Anderen sein soll.

bei einem Nice wert von 20 ist er "netter" gegenüber einem anderen Prozess. Mit einem Wert von -19 wird er mit höchster Priorität ausgeführt (ist also gar nicht nett gegenüber einem anderen Prozess).

Standard-Wert ist +10.

weitere infos gibts, wie stefan.becker geschrieben hat, unter "man nice" bzw. "man renice" ;)

David-Lynch
17.11.06, 19:30
Hm joa geht auch doch wieder nicht. :(
Zum verzweifeln ...

David-Lynch
26.11.06, 14:49
Ich habmich gestern mit nem Freund unterhalten ud der meinte das sowas auch an der Hardware liegen könnte. Eine langsame Festplatte könnte zum Beispiel ein auslöser für sowas sein. Vorallem da das Problem meistens beim Mapchange auftaucht.

Was meint ihr dazu? Jemand Erfahrug mit sowas?

bla!zilla
26.11.06, 15:53
Das müsste man mit iostat herausfinden können, oder auch mit top. Wenn das System einen hohen Prozentsatz im Bereich wa hat, wartet es auf I/Os, unter umständen auch auf I/Os der Platte.