Monitorare performance riga di comando | Interfaccie grafiche, Utilities, software di gestione

Topic: Pubblico - Composto da 20 Posts di 2 Utenti.

10 Febbraio, 2011 10:27 #1
paolocerruti
Utente

paolocerruti
Registrato: Feb, 2011
Posts: 15
Offline

Ciao a tutti, scusatemi sono completamente inesperto e nuovo...
Ho letto quasi tutti i post di questa sezione, ma non ho trovato risposta, quindi provo con la mia domanda...
Ho mysql installato su un server Ubuntu per gestire due e-commerce...da quando abbiamo un buon incremento di visite il server ad un certo punto crasha e non riesco più a raggiungerlo via ssh...lo faccio riavviare dalla webfarm (server in housing) e tutto torna come prima...questo è ciclico purtroppo.... secondo me è mysql che pianta tutto...ma devo iniziare delle indagini per affermarlo con certezza...
ho installato mytop e volevo chiedervi se ci sono tools per misurare le prestazioni e l'utilizzo di memoria e cpu o di query analyzing via riga di comando oppure via web...non ho interfaccia grafica installata... mysql tools sono GUI che necessitano di avere linux con interfaccia grafica?
Scusate le domande magari per voi banali...
CIao Paolo

10 Febbraio, 2011 10:37 #2
g2d
Moderatore

g2d
Registrato: Jul, 2008
Posts: 957
Offline
Segui g2d su Twitter!

Ciao Paolo,

benvenuto su MySQL Italia.

Beh per arrivare a dire che MySQL pianta la macchina significa che il carico è stratosferico.

Devi lavorare prima sul linux di base, esistono tantissimi tools di shell, alcuni di questi sono anche recensiti nella sezione recipes.

http://www.mysqlitalia.it/recipes

Io per mestiere sono un sistemista linux, ma per aiutarti ho bisogno di più info sulla macchina sull'installazione di Linux etc etc.

Stai tranquillo si risolve ma devi affrontare il problema con sistematicità quindi calma e sangue freddo.

algweb


Un tempo ero algweb ora sono g2d

10 Febbraio, 2011 11:02 #3
paolocerruti
Utente

paolocerruti
Registrato: Feb, 2011
Posts: 15
Offline

Grazie mille Algweb per il tuo benvenuto,
Ho seguito il tuo consiglio e ho iniziato a recuperare informazioni utili sul mio caso. inoltre ho intallato ora mysqlreport come da tuo link e ti incollo il risultato:

__ Key _________________________________________________________________
Buffer used 114.75M of 800.00M %Used: 14.34
Current 253.56M %Usage: 31.69
Write hit 84.35%
Read hit 99.97%

__ Questions ___________________________________________________________
Total 98.39M 1.4k/s
Slow 9.11k 0.1/s %Total: 0.01 %DMS: 0.23
DMS 4.05M 58.0/s 4.11

__ Table Locks _________________________________________________________
Waited 15.41k 0.2/s %Total: 0.23
Immediate 6.59M 94.4/s

__ Tables ______________________________________________________________
Open 940 of 1800 %Cache: 52.22
Opened 1.64k 0.0/s

__ Connections _________________________________________________________
Max used 54 of 500 %Max: 10.80
Total 71.23k 1.0/s

__ Created Temp ________________________________________________________
Disk table 270.36k 3.9/s
Table 763.30k 10.9/s
File 3.97k 0.1/s

Allora il mio server è:
Macchina HP Proliant ML350 G5, 1 XEON E5320 Quad Core 1.86 Ghz - 4Gb di RAM DDR 2-667 3 Dischi Raid 5 SAS146 Gb 10K rpm.
Il sistema operativo è Ubuntu Server 8.04.4, a bordo c'è apache 2.2.8 e Mysql 5.0.51

top indica questo (quando il server è abbastanza ok, in fase critica non sono riuscito a salvare i dati...)

top - 11:05:18 up 18:33, 2 users, load average: 1.94, 1.17, 1.93
Tasks: 136 total, 2 running, 128 sleeping, 4 stopped, 2 zombie
Cpu(s): 12.9%us, 4.5%sy, 0.0%ni, 47.0%id, 35.4%wa, 0.0%hi, 0.2%si, 0.0%st
Mem: 4056224k total, 3272060k used, 784164k free, 3516k buffers
Swap: 3903784k total, 438648k used, 3465136k free, 179084k cached

Attualmente ci sono 5 siti ma solo 1 è quello più visitato...è un e-commerce con circa 2000 visite al giorno e circa 10000 visualizzazioni di pagina.

Il Db è 1.4 Gb....
Spero ci siano un po' piu informazioni...ma dimmi se ci sono dati critici da conoscere....
ah dimenticavo è in housing con banda bidirezionale garantita a 10Mbs

Ciao e grazie!

10 Febbraio, 2011 11:24 #4
g2d
Moderatore

g2d
Registrato: Jul, 2008
Posts: 957
Offline
Segui g2d su Twitter!

dammi l'output di vmstat -5 magari una 20ina di righe

e l'output di iostat

I log?

Di sistema di MySQL e di apache cosa dicono ?


Un tempo ero algweb ora sono g2d

10 Febbraio, 2011 11:43 #5
paolocerruti
Utente

paolocerruti
Registrato: Feb, 2011
Posts: 15
Offline

VMSTAT:

4056224 K total memory
3981936 K used memory
2852604 K active memory
1028860 K inactive memory
74288 K free memory
8192 K buffer memory
226900 K swap cache
3903784 K total swap
667908 K used swap
3235876 K free swap
4213661 non-nice user cpu ticks
165 nice user cpu ticks
1022076 system cpu ticks
21499078 idle cpu ticks
2392851 IO-wait cpu ticks
2283 IRQ cpu ticks
33593 softirq cpu ticks
0 stolen cpu ticks
63191690 pages paged in
86880390 pages paged out
10205912 pages swapped in
15353789 pages swapped out
21653026 interrupts
653283299 CPU context switches
1297265483 boot time
235773 forks

IOSTAT:

Linux 2.6.24-27-server (sampei) 10/02/2011

avg-cpu: %user %nice %system %iowait %steal %idle
14,44 0,00 3,63 8,24 0,00 73,69

Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn
cciss/c0d0 98,00 1747,50 2418,29 126854621 175549277

i log quali dovrei leggere e come filtrarli...scusami ma non sono esperto di amministrazioni di sistema, purtrppo il sysadmin non lavora piu con noi e io dovrei imparare "un lavoro così specilistico secondo il mio capo...." filtro qualcosa con grep ...ma cosa? quando mi accade il rallentamento il sistema scrive qualcosa sui log?
Grazie ancora...

10 Febbraio, 2011 11:46 #6
g2d
Moderatore

g2d
Registrato: Jul, 2008
Posts: 957
Offline
Segui g2d su Twitter!

per vmstat prendi l'output e usa il TAG CODE dell'editor .... (terz'ultimo tasto editor del forum) altrimenti è illegibile

Per i log spulciati almeno i log di mysql e quelli di sistema per ora dimentichiamoci di apache.

Di solito non sono eccessivamente lunghi quindi puoi leggerli per intero .... saranno di qualche centinaio di righe

eventualemte posta pure le parti sospette.... però usa il tag CODE


Un tempo ero algweb ora sono g2d

10 Febbraio, 2011 13:12 #7
paolocerruti
Utente

paolocerruti
Registrato: Feb, 2011
Posts: 15
Offline

Eccomi, scusami Algweb...hai ragione dovevo mettere tutti in CODE, ma è la prima volta che scrivo e mi è sfuggito...

allora questo è vmstat 1 20

 1procs -----------memory---------- ---swap-- -----io---- -system-- ----cpu----
 2 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa
 3 0  1 996172  37716  10940 130852  143  220   220   304   75   37 14  4 74  8
 4 0  7 996172  34876  10972 130744    8    0    32    92  298 11339 12  3 63 22
 5 1  0 996172  36544  11128 130756   60    0   328   100  304 11085  8  5 28 59
 6 0  1 996172  36692  11128 130908  764    0   764     0  230  840  2  1 86 12
 7 0  2 996172  32944  11128 130844 4828    0  4888     0  317 11960 11  2 60 28
 8 0  1 996172  26764  11140 130708 6128    0  6180     0  435 11807  7  1 63 28
 9 2  1 999588  27392  11228 131152 9028 3620  9212  3804  884 12279 18 11 41 31
10 1  1 1006700  32660  11308 131120 2360 7836  2500  7880  571 11731 17  9 39 35
11 0  2 1006700  29020  11320 131492 4132    0  4500    76  385  839 12  3 52 34
12 1  2 1016532  28344  11320 131660 9284 11648  9492 11648  789 8537 11  4 55 30
13 0  1 1016660  24968  11320 131484 3944    0  3952     0  494 11411  3  0 77 19
14 0  1 1026652  25392  11312 131648 3668 10528  3676 10696  655  568  4  5 76 15
15 0  1 1037524  27044  11320 131212 7420 10880  7420 10944  559  805  2  2 77 19
16 0  1 1040524  24708  11344 131920 6440 3000  6776  3052  479 12077  8  3 62 27
17 0  0 1040524  23804  11356 132820  220    0  1064    28  269 7885  3  2 89  7
18 0  0 1047432  96936  11356 132688    0 7092     0  7092  257  275  0  2 98  0
19 0  0 1047308 175712  11356 132628  172    0   172     0  132  252  0  0 99  1
20 0  0 1047308 169900  11356 132680   72    0    76     0  221 11429  8  3 88  1
21 0  0 1047308 257492  11364 132688    0    0     0   180   80  243  0  1 99  0
22 0  0 1047308 237912  11376 132692    0    0     4    64   56 7955 22  2 76  0

Invece per il log ho trovato qualcosa di strano su quello di mysqld.err:
ma penso che sia vecchio....se il primo dato nella riga è la data...

1Version: '4.1.22-log'  socket: '/var/run/mysqld/mysqld.sock'  port: 3306  Source distribution
2100305  9:38:39 [ERROR] /opt/mysql4/libexec/mysqld: Disk is full writing './hwt/products_description.MYD' (Errcode: 28). Waiting for someone to free space... Retry in 60 secs
3100305  9:39:24 [ERROR] /opt/mysql4/libexec/mysqld: Disk is full writing './diary.000001' (Errcode: 28). Waiting for someone to free space... Retry in 60 secs
4100305  9:56:36 [Note] /opt/mysql4/libexec/mysqld: Normal shutdown
5
6100305  9:56:39 [Note] /opt/mysql4/libexec/mysqld: Shutdown complete
7
8100305 09:56:39  mysqld ended

gli altri log di mysql sono vuoti....
quelli di sysadmin non c'è molto...

10 Febbraio, 2011 14:28 #8
g2d
Moderatore

g2d
Registrato: Jul, 2008
Posts: 957
Offline
Segui g2d su Twitter!

Ecco è tutto chiarissimo ...

il disco è pieno...

fai pulizia nei dati e nei log .... .... è solo questo il tuo problema... la macchina è scarica

guarda bene il log di mysql

1[ERROR] /opt/mysql4/libexec/mysqld: Disk is full writing './hwt/products_description.MYD' (Errcode: 28). Waiting for someone to free space... Retry in 60 secs
23 100305  9:39:24 [ERROR] /opt/mysql4/libexec/mysqld: Disk is full writing './diary.000001' (Errcode: 28). Waiting for someone to free space... Retry in 60 secs
34 100305  9:56:36 [Note] /opt/mysql4/libexec/mysqld: Normal shutdown

algweb


Un tempo ero algweb ora sono g2d

10 Febbraio, 2011 14:52 #9
paolocerruti
Utente

paolocerruti
Registrato: Feb, 2011
Posts: 15
Offline

Algweb, speriamo che hai ragione, ma mi spiego cosa mi è successo qualche giorno fa ed esattamente il 4 febbraio....
mi accorgo che il sistema è in pappa, non scriveva file su disco etc...
effettuo un controllo delle partizioni e vedo che /var/www è al 100% di spazio occupato, avevo una cartella di un sito con immagini che mi aveva occupato un sacco di gb...prendo il tutto faccio un mv e un collegamento simbolico e tutto si risolve...ora lo spazio sembrerebbe esserci,... l'errore nel log è stato fatto alle 9.39.24 ma di che giorno? di oggi? come posso analizzare lo spazio per capire se mysql è alle strette?
Scusa ancora per la pazienza
Paolo

10 Febbraio, 2011 15:03 #10
g2d
Moderatore

g2d
Registrato: Jul, 2008
Posts: 957
Offline
Segui g2d su Twitter!

lancia sulla shell

1df -h

e incollami l'output


Un tempo ero algweb ora sono g2d

Condividi su:

Loggati o Registrati per replicare