[BSD] Server load - nem értem! :-(

Laszlo Nagy gandalf at shopzeus.com
2010. Május. 3., H, 15:35:49 CEST


  Sziasztok,

Van egy server, gstat szerint I/O terhelés 0-20% között mozog általában:

dT: 1.007s  w: 1.000s
 L(q)  ops/s    r/s   kBps   ms/r    w/s   kBps   ms/w   %busy Name
    0      0      0      0    0.0      0      0    0.0    0.0| ad4
    0      0      0      0    0.0      0      0    0.0    0.0| da0
    0      0      0      0    0.0      0      0    0.0    0.0| ad4s1
    0      0      0      0    0.0      0      0    0.0    0.0| ad4s1c
    0      0      0      0    0.0      0      0    0.0    0.0| ad4s1d
    0      0      0      0    0.0      0      0    0.0    0.0| da0s1
    3   2856     19    592    6.3   2838  46189    1.6   23.4| da1
    0      0      0      0    0.0      0      0    0.0    0.0| da0s1a
    0      0      0      0    0.0      0      0    0.0    0.0| da0s1b
    0      0      0      0    0.0      0      0    0.0    0.0| da0s1c
    0      0      0      0    0.0      0      0    0.0    0.0| da0s1d
    0      0      0      0    0.0      0      0    0.0    0.0| da0s1e
    0      0      0      0    0.0      0      0    0.0    0.0| da0s1f
    3   2856     19    592    6.4   2838  46189    1.7   24.6| da1s1
    0      0      0      0    0.0      0      0    0.0    0.0| da1s1c
    3   2856     19    592    6.4   2838  46189    1.7   25.9| da1s1d


Közben a TOP a következőt írja:

last pid: 54038;  load averages:  2.36,  2.45,  
2.59                                                  up 9+20:46:37  
08:51:46
780 processes: 3 running, 769 sleeping, 8 zombie
CPU states: 17.9% user,  0.0% nice, 10.5% system,  2.4% interrupt, 69.2% 
idle
Mem: 2874M Active, 16G Inact, 795M Wired, 57M Cache, 214M Buf, 3673M Free
Swap: 16G Total, 596K Used, 16G Free

  PID USERNAME        VCSW  IVCSW   READ  WRITE  FAULT  TOTAL PERCENT 
COMMAND
21660 pgsql           1545   1016      1    610      0    611  96.37% 
postgres: zeusd1 zeusd1 127.0.0.1(49251)  (postgres)
21600 pgsql             14      0      7      0      0      7   1.10% 
postgres: autovacuum worker process    (postgres)
48954 postfix            5      0      0      4      0      4   0.63% 
cleanup -z -t unix -u -c
22291 pgsql             12      0      4      0      0      4   0.63% 
postgres: autovacuum worker process    (postgres)
25286 pgsql              9      0      3      0      0      3   0.47% 
postgres: autovacuum worker process    (postgres)



Általában igaz, hogy ilyenkor a TOTAL oszlopban 100 és 2000 közötti 
értékek vannak. Ebben az állapotában a gép teljesen jól használható, 
megfelelően gyors. Nincs vele probléma.

Aztán néha (kb. percenként) a következő történik:

- gstat-ban fölmegy a terhelés 300% körüli értékre, és 10-20 másodpercig 
úgy is marad
- közben a TOP-ban a TOTAL oszlopban mindenhol nulla van, a legfelső 2-3 
processznél 1-4 körüli értékek szerepelnek
- erre az időre semmiféle program nem működik rendesen, még a root-ként 
elindított top is belassul, sőt ki sem tudok belőle lépni Ctrl+C-vel sem
- 10-20 sec után abbamarad, és megint megy tovább minden egy ideig.

Sajnos a belassulásról nem tudok küldeni konkrét értékeket, mert 
újraindítottam a gépet. Újraindítás után néhány napig nem csinálja, 
aztán megint kezdi előről. Egyre gyakrabban és egyre durvábban belassul, 
ezért kell újraindítani.

Gondolom valami program lehet a ludas. De az nem fér a fejembe, hogy a 
top -ban a TOTAL oszlopban miért van KISEBB érték, miközben a gstat 
szerint sokkal nagyobb az I/O terhelés? Konkrétan a top-ból semmit nem 
lehet látni arról, hogy melyik program okozza a nagy terhelést. (Feltéve 
hogy program okozza...)

Ötletek?

Köszi

   Laci




További információk a(z) BSD levelezőlistáról