PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Festplatten Auslastung ermitteln



Stargate
15.11.08, 09:35
Hi,

ich habe mir mit zwei Freunden zusammen einen Root Server gemietet auf dem wir VMWare Server laufen haben und jeder seine eigene VM hat. Wir haben allerdings das Problem, dass sporadisch immer für einige Stunden/Minuten die Festplattenauslastung der Systemfestplatte permant bei 100% liegt (ermittelt mit atop). Auf der Systemfestplatte liegt eine VM, die Swap Partition und halt das Hostsystem. Wenn man die VM runter fährt bringt das aber nicht. Also die vm ist es nicht. Swappen tut der Host auch nicht.

Wie kann ich ermitteln welcher Prozess dafür verantwortlich ist? Rein an der CPU Auslastung ist nichts zu sehen... Der Prozess 3186 liegt übrigens auf der zweiten Festplatten sdb. Hat aber hier hauptsächlich wait last... Weil sobald die erste Festplatte voll zieht, kriegt die zweite kaum mehr was ab.. Der Controller scheint net so der Hit zu sein..




PRC | sys 0.49s | user 0.05s | #thr 71 | #zombie 0 | #exit 0 |
CPU | sys 48% | user 7% | irq 1% | idle 61% | wait 84% |
cpu | sys 34% | user 4% | irq 1% | idle 3% | cpu000 w 58% |
cpu | sys 14% | user 3% | irq 0% | idle 56% | cpu001 w 27% |
MEM | tot 5.8G | free 101.0M | cache 5.3G | buff 4.8M | slab 41.1M |
SWP | tot 4.0G | free 3.8G | | vmcom 1.0G | vmlim 6.9G |
DSK | sda | busy 97% | read 128 | write 15 | avio 6 ms |
NET | transport | tcpi 1 | tcpo 1 | udpi 0 | udpo 0 |
NET | network | ipi 199 | ipo 199 | ipfrw 198 | deliv 1 |
NET | dev eth0 | pcki 116 | pcko 84 | in 742 Kbps | out 50 Kbps |
NET | dev vmnet1 | pcki 83 | pcko 115 | in 0 Kbps | out 0 Kbps |

PID SYSCPU USRCPU VGROW RGROW USERNAME THR ST EXC S CPU CMD 1/1
3186 0.40s 0.04s 0K 20K root 22 -- - S 44% vmware-vmx
3159 0.04s 0.01s 0K 212K root 22 -- - S 5% vmware-vmx
3192 0.03s 0.00s 0K 0K root 1 -- - S 3% vmware-rtc
20129 0.01s 0.00s 0K 0K root 30 -- - S 1% vmware-vmx
7489 0.01s 0.00s 0K 0K root 1 -- - R 1% atop


Vielen Dank für eure Hilfe!

Gruß
Stargate

Wene
15.11.08, 09:53
Kann es sein dass es sich bei diesem Server um einen VRoot Server handelt?
Um Hardwareprobleme finden zu können brauchen wir schon wesentlich mehr Infos über die Hardware.

Stargate
15.11.08, 10:02
Nein es ist ein Root Server bei Hetzner.
AMD Athlon 64 X2 6000+ Dual Core
6 GB RAM, 2x750 GB Sata II
Festplatten controller ist nur der onboard auf einem MSI Board.

Was brauchst du noch für Angaben? Mir würde es helfen wenn ich wie unter Windows Vista eine Übersicht darüber bekomme, welcher Prozess gerade am meisten schreibt/liest...

Wene
15.11.08, 10:17
Meistens verursachen diese Prozesse auch eine erhöhte CPU Auslastung. Daher kannst Du mit "top" schonmal die üblichen verdächtigen herauslesen.

Ich tippe ja auf VMware. Eine CPU Auslastung von 44% kommt ja nicht von ungefähr. Fahr diesen Gast doch zum Test mal runter.

Stargate
15.11.08, 10:54
Schon versucht. Hat nichts geändert. System kann an sich bei uns bloß 10% Auslastung haben und trotzdem tritt das auf... Das ist echt komisch

Wene
15.11.08, 12:12
Dann beende doch einfach mal spasseshalber der Reihe nach alle Dienste und Programme. Sobald Du den Sünder beendet hast müste das System wieder anständig laufen. Danach kannst Du ja alles andere wieder starten.

joki
15.11.08, 15:35
Hmm kannst ja mal
http://guichaz.free.fr/iotop/
probieren, damit siehst die IO-Last von Prozessen.
http://guichaz.free.fr/iotop/iotop_big.png

Stargate
16.11.08, 10:17
@joki

Das ist echt ein fettes Programm. Bloß finde ich nirgends eine Installationsanleitung. Kann mir jemand sagen wie man das installiert? Für Debian Etch gibts leider kein Paket.

DaGrrr
16.11.08, 13:11
Nimm doch das das *.tar.gz Paket.

Es ist ein Python Script. Du brauchst nichts kompilieren, vorausgesetzt der Kernel unterstützt IO Accounting, was aber bei einem Distributionskernel aktiviert sein sollte.

Grüße
DaGrrr

Stargate
16.11.08, 13:47
Nimm doch das das *.tar.gz Paket.

Es ist ein Python Script. Du brauchst nichts kompilieren, vorausgesetzt der Kernel unterstützt IO Accounting, was aber bei einem Distributionskernel aktiviert sein sollte.

Grüße
DaGrrr

Habe ich versucht. Python 2.5 ist auch installiert. Kommt aber immre die Meldung:



Debian-40-etch-64-minimal:~/iotop-0.2.1# ./iotop.py
Traceback (most recent call last):
File "./iotop.py", line 8, in ?
from iotop.ui import main
File "/root/iotop-0.2.1/iotop/ui.py", line 11, in ?
from iotop.data import find_uids, TaskStatsNetlink, ProcessList
File "/root/iotop-0.2.1/iotop/data.py", line 9, in ?
from netlink import Connection, NETLINK_GENERIC, U32Attr, NLM_F_REQUEST
File "/root/iotop-0.2.1/iotop/netlink.py", line 29, in ?
raise ImportError("This is neither python 2.5 nor is "
ImportError: This is neither python 2.5 nor is the _netlink C module available

joki
16.11.08, 19:04
Hmm


Hmm strange. Python 2.5 sollte das hier koennen.


>>> import socket
>>> _dummysock = socket.socket(socket.AF_NETLINK, socket.SOCK_RAW, 0)
>>> _dummysock.bind((0, 0))

Genau hier schlaegts bei iotop fehl und es wird deshalb versucht das _netlink C modul zu laden.

Starte mal den Python Interpreter /usr/bin/python (in der Konsole) und gib die 3 Zeilen mal ein.

Welche Python Version versteckt sich denn hinter /usr/bin/python. Finde es heraus mit

/usr/bin/python -V

zyrusthc
16.11.08, 19:51
Ich vermute mal das der Symlink /usr/bin/python noch auf /usr/bin/python2.4 anstatt auf /usr/bin/python2.5 steht.


Greeez Oli

zyrusthc
16.11.08, 21:13
Habe es eben mal selber auf Etch probiert...

ncdbox:~/iotop-0.2.1# ./iotop.py
Could not run iotop as some of the requirements are not met:
- Python >= 2.5 for AF_NETLINK support: Found
- Linux >= 2.6.20 with I/O accounting support: Not found
ncdbox:~/iotop-0.2.1# uname -r
2.6.22-3-486
:eek: Das ärgert mich jetzt aber schon das das in nen Distributionkernel nicht enthalten ist :(


Greeez Oli

DaGrrr
17.11.08, 07:52
Hallo,

iotop funktioniert ab Kernel 2.6.20 bzw. die Funktion ist erst ab diesem Kernel verfügbar. Etch bnutzt doch noch den 2.6.18er Kernel oder?

Grüße
DaGrrr

Stargate
17.11.08, 09:10
Hallo,

...Etch bnutzt doch noch den 2.6.18er Kernel oder?

Jop leider.

zyrusthc
17.11.08, 16:15
Hallo,

iotop funktioniert ab Kernel 2.6.20 bzw. die Funktion ist erst ab diesem Kernel verfügbar. Etch bnutzt doch noch den 2.6.18er Kernel oder?

Grüße
DaGrrr
Also bei meinen Etch ist nen 2.6.22-3-486 am laufen wie ich bereits schon in meinen letzten Beitrag geschrieben. Und mit dem gehts nicht! Merkwürdig....


Greeez Oli

DaGrrr
17.11.08, 20:23
Hi,

schau mal in die config Datei vom Kernel.
Ist folgendes aktiviert:

CONFIG_TASKSTATS=y
CONFIG_TASK_DELAY_ACCT=y
CONFIG_TASK_XACCT=y
CONFIG_TASK_IO_ACCOUNTING=y

oder kommt:

# CONFIG_TASKSTATS is not set

Falls letzteres kommen sollte vermute ich mal das es deshalb nicht vom Debian Maintainer aktiviert wurde weil es noch als Experimentell bezeichnet ist und da Debian ein stabiles System ist...

Grüße
DaGrrr

zyrusthc
17.11.08, 20:30
ncdbox:~# cat /boot/config-2.6.22-3-486 | grep CONFIG_TASKSTATS
# CONFIG_TASKSTATS is not set
Ist deaktiviert wie befürchtet.

Greeez Oli