Plesk, 128 MB RAM und etliche Dienste die nicht gebraucht werden!

gammla

Member
Hallo alle zusammen!
Ich habe schon mal in einem anderen Thread mein Speicherproblem geschildert.
Will das aber hier nocheinmal gesondert zusammenfassen.

Anfänglich wollte ich auf dem V-Server alles mögliche laufen lassen. DNS-Server, E-Mail Server etc. Das geht leider nicht! Die erfahrung musste ich machen. Der Speicher von 128MB reicht einfach nicht aus.

Code:
top - 21:13:33 up 14 min,  1 user,  load average: 0.05, 0.03, 0.00
Tasks:  29 total,   2 running,  27 sleeping,   0 stopped,   0 zombie
Cpu(s):  0.0% us,  0.0% sy,  0.0% ni, 100.0% id,  0.0% wa,  0.0% hi,  0.0% si
Mem:   4032336k total,   295380k used,  3736956k 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      16   0   700  300  252 S    0  0.0   0:00.00 init
13698 root      11  -4  7048  696  424 S    0  0.0   0:00.00 udevd
14047 messageb  16   0 12952  972  712 S    0  0.0   0:00.00 dbus-daemon
14064 root      16   0 11776 1712 1356 S    0  0.0   0:00.00 hald
15380 root      18   0 21244 1008  648 S    0  0.0   0:00.00 saslauthd
15381 root      18   0 21244  644  284 S    0  0.0   0:00.00 saslauthd
15388 root      16   0  3636  660  528 S    0  0.0   0:00.00 syslogd
15400 root      21   0  9468  864  600 S    0  0.0   0:00.00 couriertcpd
15402 root      18   0  7188 1000  764 S    0  0.0   0:00.00 courierlogger
15415 root      20   0  9468  864  600 S    0  0.0   0:00.00 couriertcpd
15418 root      24   0  7188 1000  764 S    0  0.0   0:00.00 courierlogger
15426 root      20   0  9468  864  600 S    0  0.0   0:00.00 couriertcpd
15429 root      18   0  7188 1000  764 S    0  0.0   0:00.00 courierlogger
15438 root      18   0  9468  864  600 S    0  0.0   0:00.00 couriertcpd
15440 root      18   0  7188 1000  764 S    0  0.0   0:00.00 courierlogger
15461 root      16   0  7904 1476 1136 S    0  0.0   0:00.00 mysqld_safe
15514 mysql     16   0  117m  12m 4764 S    0  0.3   0:00.23 mysqld
15537 root      16   0 28888 1380  876 S    0  0.0   0:00.00 sshd
15543 root      18   0 10664  936  732 S    0  0.0   0:00.00 xinetd
15591 root      16   0  164m  13m 6908 S    0  0.4   0:00.16 httpd2-prefork
15593 wwwrun    16   0  187m  33m 4076 S    0  0.9   0:04.42 httpd2-prefork
15600 root      16   0 10016  736  584 S    0  0.0   0:00.00 cron
15630 wwwrun    15   0  187m  33m 4064 S    0  0.9   0:03.58 httpd2-prefork
20382 root      16   0 48144 3168 2396 R    0  0.1   0:00.02 sshd
20401 root      16   0 12612 2304 1468 S    0  0.1   0:00.03 bash
21617 wwwrun    16   0  186m  33m 4008 S    0  0.8   0:00.72 httpd2-prefork
21622 wwwrun    16   0  186m  32m 4020 S    0  0.8   0:01.72 httpd2-prefork
21624 wwwrun    16   0  187m  34m 4012 S    0  0.9   0:01.42 httpd2-prefork
22270 root      16   0  9488 1260  964 R    0  0.0   0:00.04 top

Jetzt versuche ich alles Dienste raus zu werfen, die ich nicht brauche! Da ich keinen Mailserver betreiben möchte brauche ich auch folglich nicht die Dienste "courier". Soweit ich mir das angelesen habe sind die für die IMAP-Postfächer.

Ich würde liebendgerne diesen Dienst über Plesk deaktivieren. Leider funktioniert das nicht und ich bin mir unsicher, ob ich die Dienste einfach so "killen" soll. Das ist ja auch keine wirkliche Lösung.

Meine Speichernutzung sieht momentan so aus:

Code:
VPS Speichernutzung:
Momentan genutzt:       289.066 MB
Maximal genutzt:        289.215 MB
Zugesichert:            128 MB
Maximal nutzbar:        1288 MB

Das ist einfach viel zu viel! Ich würde gerne versuchen in meinem zugesicherten Bereich zu bleiben!

Habe schon überlegt, den kompletten Server ohne Plesk neu installieren zu lassen. Traue mir aber noch nicht wirklich zu den Apache etc. alleine zu "Grundkonfigurieren".....

Also soll es erstmal bei der Kombination bleiben, damit ich Plesk im notfall nochmal einchalten kann....

Könnt ihr mir dabei helfen?

Gruß,

gammla
 
Hi,

du kannst Plesk ja auch beenden: /etc/init.d/psa stop

Dann frisst das ganzen nur noch Plattenplatz und du kannst es bei Bedarf dann wieder starten.

Ansonten fang mal an deine Dienste die richtig Speicher fressen zu optimieren. Siehe mysqld und apache...

Dazu gibts hier jede Menge Threads, da braucht man nix mehr zu schreiben.

Ich habe auch nur ein Vserver mit 128MB. Dort hab ich Plesk ausgemacht und sogar mit Maildiensten komme ich nicht über 150MB Verbrauch (mysql ist bei mir etwas größer wegen typo3)
 
Hallo!
Das Problem an der ganzen Sache ist, dass Plesk alles wieder willkürlich startet. Bzw. der Courier-IMAP gar nicht zum beenden überredet werden konnte. Auch qmail sollte eigentlich beendet sein, was mir virtuozzo anzeigt, aber in der "top" Liste noch auftaucht. Habe jetzt mal an alles ein SIGTERM gesendet, was aus meiner Sicht nicht gebraucht wird und sich auch irgendwie nicht abschalten lässt.

Ich komme der ganzen Sache schon etwas näher:

Code:
top - 10:31:47 up  1:06,  0 users,  load average: 0.01, 0.04, 0.06
Tasks:  15 total,   1 running,  14 sleeping,   0 stopped,   0 zombie
Cpu(s):  0.0% us,  0.0% sy,  0.0% ni, 100.0% id,  0.0% wa,  0.0% hi,  0.0% si
Mem:   4032336k total,   220012k used,  3812324k free,        0k buffers
Swap:        0k total,        0k used,        0k free,        0k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
21816 wwwrun    16   0  189m  35m 4028 S    0  0.9   0:02.24 httpd2-prefork
21899 wwwrun    15   0  189m  35m 3928 S    0  0.9   0:00.64 httpd2-prefork
11277 mysql     16   0  121m  18m 5176 S    0  0.5   0:09.33 mysqld
11348 root      16   0  167m  17m 7680 S    0  0.4   0:01.02 httpd2-prefork
20069 root      16   0 48172 3228 2424 S    0  0.1   0:00.25 sshd
20145 root      15   0 12744 2332 1472 S    0  0.1   0:00.04 bash
 9810 root      16   0 11776 1712 1356 S    0  0.0   0:00.00 hald
10206 root      17   0  7904 1476 1136 S    0  0.0   0:00.00 mysqld_safe
11293 root      16   0 28888 1380  876 S    0  0.0   0:00.00 sshd
17581 root      16   0  9488 1256  964 R    0  0.0   0:00.26 top
 9796 messageb  16   0 12952  972  712 S    0  0.0   0:00.00 dbus-daemon
11365 root      16   0 10016  736  584 S    0  0.0   0:00.00 cron
 9487 root      13  -4  7048  696  424 S    0  0.0   0:00.00 udevd
10137 root      16   0  3636  660  528 S    0  0.0   0:00.00 syslogd
    1 root      16   0   700  300  252 S    0  0.0   0:00.00 init

Leider kann ich mir gut vorstellen, dass die ganzen Dienste bei einem Neustart wieder gestartet werden und die "Arbeit" wieder von vorne beginnt.

An der SQL Optimierung mache ich mit dem tuning-primer-script ganz gute vortschritte.
Leider blicke ich bei dem Apache tuning noch nicht so ganz durch!

Ich bin der meinung, dass die httpd2-prefork Prozesse viel zu viel Speicher benötigen!

Jetzt wird erst mal weiter gelesen und geschaut, dass der Apache optimiert wird!

Vielleicht bekomme ich hier noch ein paar hilfreiche Tips?

Gruß,

gammla
 
Ich bin der meinung, dass die httpd2-prefork Prozesse viel zu viel Speicher benötigen!

Zwei Faktoren für den Speicherbedarf sind die Anzahl der VHosts sowie die geladenenen Module.

Für die Module gibt dir ein
Code:
httpd2-prefork -t -D DUMP_MODULES
(falls das wirklich der Name des Executables ist) schonmal eine Liste, was überhaupt alles eingebunden wird. Die da mit shared aufgelisteten Module werde dynamisch geladen und können prinzipiell aus der Konfiguration entfernt werden. Was du davon wirklich brauchst, hängt natürlich entscheidend von deinen Webseiten ab. Dazu kommt auch, daß die Module teilweise voneinander abhängen und deshalb ein Schritt-für-Schritt-Vorgehen nicht trivial ist.
 
So, dann will ich mal berichten, was ich bis jetzt unternommen habe!

Anfänglich wurden folgende Module geladen:

Code:
#APACHE_MODULES="rewrite actions alias auth_basic authn_file authz_host authz_groupfile authz_default authz_user authn_dbm autoindex cgi dir env expires include log_config mime negotiation setenvif ssl   userdir php5 perl python   suexec"

Habe das ganze wie folgt reduziert:
Code:
APACHE_MODULES="rewrite alias authz_host dir log_config mime setenvif php5"

Wenn euch noch etwas einfällt, was man an der Stelle raus nehmen könnte, wäre ich für jeden Tip dankbar!

Mein Speicherverbrauch ist auf jeden Fall schon mal besser geworden:

Code:
VPS Speichernutzung:
Momentan genutzt:       161.938 MB
Maximal genutzt:        162.07 MB
Zugesichert:            128 MB
Maximal nutzbar:        1288 MB
Code:
top - 15:31:30 up  4:01,  1 user,  load average: 0.04, 0.27, 0.26
Tasks:  25 total,   1 running,  24 sleeping,   0 stopped,   0 zombie
Cpu(s):  0.5% us,  0.1% sy,  0.0% ni, 54.0% id, 45.4% wa,  0.0% hi,  0.0% si
Mem:   4032336k total,   189764k used,  3842572k 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      16   0   700  300  252 S    0  0.0   0:00.00 init
29976 root      11  -4  7048  696  424 S    0  0.0   0:00.00 udevd
30282 messageb  16   0 12952  972  712 S    0  0.0   0:00.00 dbus-daemon
30291 root      15   0 11776 1712 1356 S    0  0.0   0:00.00 hald
30606 root      16   0  3636  660  528 S    0  0.0   0:00.00 syslogd
30617 root      18   0 21244 1008  648 S    0  0.0   0:00.00 saslauthd
30620 root      18   0  9468  864  600 S    0  0.0   0:00.00 couriertcpd
30621 root      18   0 21244  644  284 S    0  0.0   0:00.00 saslauthd
30623 root      20   0  7188 1000  764 S    0  0.0   0:00.00 courierlogger
30632 root      20   0  9468  864  600 S    0  0.0   0:00.00 couriertcpd
30634 root      18   0  7188 1000  764 S    0  0.0   0:00.00 courierlogger
30641 root      21   0  9468  864  600 S    0  0.0   0:00.00 couriertcpd
30643 root      23   0  7188 1000  764 S    0  0.0   0:00.00 courierlogger
30651 root      19   0  9468  864  600 S    0  0.0   0:00.00 couriertcpd
30654 root      18   0  7188 1000  764 S    0  0.0   0:00.00 courierlogger
31774 root      16   0 28888 1380  876 S    0  0.0   0:00.00 sshd
31805 root      16   0 48144 3180 2400 S    0  0.1   0:00.79 sshd
32029 root      16   0 10016  736  584 S    0  0.0   0:00.00 cron
32204 root      15   0 12744 2344 1472 S    0  0.1   0:00.11 bash
24492 root      16   0  7904 1492 1136 S    0  0.0   0:00.00 mysqld_safe
24539 mysql     16   0  122m  22m 4960 S    0  0.6   0:03.88 mysqld
 7505 root      16   0  122m 7644 4228 S    0  0.2   0:00.03 httpd2-prefork
 9548 wwwrun    16   0  122m 4972 1228 S    0  0.1   0:00.02 httpd2-prefork
 9570 wwwrun    15   0  144m  28m 3648 S    0  0.7   0:00.61 httpd2-prefork
10019 root      15   0  9484 1172  884 R    0  0.0   0:00.00 top

Jetzt habe ich da noch eine Verständnisfrage....

Warum ist dieser Prozess:
Code:
9570 wwwrun    15   0  144m  28m 3648 S    0  0.7   0:00.61 httpd2-prefork
größer als dieser:
Code:
9548 wwwrun    16   0  122m 4972 1228 S    0  0.1   0:00.02 httpd2-prefork

Und eigentlich ist 28M immernoch sehr groß. Lese hier im Forum teilweise werte im Bereich 15M....?!
Wobei das natürlich auch von der Webseite abhängig sein kann!

Bei mir läuft Joomla!

Werde jetzt mal schauen, ob sich Plesk dazu schalten lässt und dann wieder abschalten lässt ohne etliche Prozesse wieder neu zu starten!

Habt ihr noch Ideen, was man optimieren könnte? Mir kommt die Seite noch recht langsam vor.
Und eigentlich habe ich mein Speicherziel von 128 M noch nicht erreicht....!

Gruß,

gammla
 
Hallo gammla,

wo hast du dir denn das

Code:
VPS Speichernutzung:
Momentan genutzt:       289.066 MB
Maximal genutzt:        289.215 MB
Zugesichert:            128 MB
Maximal nutzbar:        1288 MB

immer anzeigen lassen?

Ich habe neuerdings auch einen vserver von united hoster und finde das nirgends...
 
Such mal hier im Forum nach "vzfree" . DAs ist ein Script was dir die userbeancounts ausliest und anders darstellt.
 
Vielen Dank...

Hab's inzwischen hinbekommen.

Code:
VPS Speichernutzung:
Momentan genutzt: 282.996 MB
Zugesichert: 320 MB
Maximal nutzbar: 512 MB

Man sieht ich hab noch einiges zu tun...
Suse 10.1 mit Plesk 8.3 auf United-Hoster vserver

  • Plesk ist schon aus
  • Apache Module auch schon stark eingeschränkt

Und trotzdem noch viel zu viel Speicherverbrauch. Denn es ist noch kein Traffic auf dem Server!
 
Du kannst den Service Courier ohne weiteres stoppen.
Wichtig ist desweiteren die php.ini und die MySQL Config zu optimieren.
Die Default Konfigurationen gehen oft sehr grosszügig mit der Menge Speicher um die beide Dienste für sich beanspruchen dürfen. :(
 
Nutze doch statt Apache den lighttpd. Er ist schneller, sicherer, ressourcenschonender, perfekt für kleine Server :-).

MfG
 
Auch bei MySQL kann man eine Menge Speicher sparen: Einfach die ganzen Cache-Sizes und Buffer-Sizes runtersetzen. Teilweise sind die Query-Buffer per default größer als die komplette DB einer kleinen Site.

Mein VServer läuft mit lighttpd, php5-fcgi, php5-xcache, mysqld, sshd, cron und exim4 im Leerlauf mit 44MB RAM. Und zwar ohne, dass sich das bei meiner kleinen Seite auf die Performance auswirkt :-)
 
Wenn Du keine InnoDB brauchst, einfach in der mysql-config datei die "skip innodb" auskommentieren, spart bei mir bis zu 100mb arbeitsspeicher, und myisam klappt genauso ;)

lg
Basti
 
Auch bei MySQL kann man eine Menge Speicher sparen: Einfach die ganzen Cache-Sizes und Buffer-Sizes runtersetzen. Teilweise sind die Query-Buffer per default größer als die komplette DB einer kleinen Site.
Klasse Idee. Wenn das dann vielleicht 2, 3 Leute auf dem gleichen Hostsystem machen, steigt die I/O-Last ins unermessliche und alle darauf gehosteten VPS werden lahm, weil die DB bei jedem zweiten Query die Festplatte bemühen muss. Die Puffer haben durchaus ihre Daseinsberechtigung.
 
Weiss jemand zufällig welche module man benötigt fürs vbulletin 3.7 ?

Kann man den lighthttpd auch nachträglich als http server einspielen?
 
1. Keine Ahnung, steht das nicht in den requirements von vBulletin?

2. Klar kann man im lighttpd auch nachträglich als Ersatz für apache installieren.
 
Back
Top