# [Administration] Dégradation des performances (résolu)

## Bio

Bonjour à tous.

Depuis quelques mois je constate la dégradation lente et inexorable des performances de mon home server Gentoo et j'en suis arrivé à un point qui n'est plus acceptable. Il faut que je redresse la barre, hors autant je me considére + ou - dégrossi en utilisation Linux autant je ne sais pas trop par quel bout chercher pour trouver et solutionner la cause de cette dégradation des perfomances. C'est pourquoi je solicite votre aide.

Je vous explique rapidement le contexte.

Gentoo installée il y 4 ou 5 ans sur un Core2.

Ce PC est utilisé comme home server, c'est à dire qu'il me sert de file server, j'y stocke ma musique, mes documents etc. Il expose tout ça via NFS et Samba

4 disques 1TO configurés en Raid 5 matériel sur une carte 3Ware

Je fais tourner 2 tomcats qui accueillent notamment un alfresco et quelques appli Java pour mon boulot

Un Apache pour exposer ma "Gallery" d'images

Et bien sûr une instance de PostgreSql

Bref ce PC est allumé H24 depuis son installation avec quelques redémarrages ici ou la. Bien que ce serveur fasse tourner pas mal de services je suis quasiment le seul utilisateur, il n'est donc pas surchargé.

La gestion de mes partitions est organisée par LVM sur du Raid 5. J'ai environ une 10aine de partitions, la plupart en ext3. La partie où sont stockées les données du file server est en XFS. 

Le résultat d'un free -m

```
free -m

             total       used       free     shared    buffers     cached

Mem:          4043       3735        307          0        378       2329

-/+ buffers/cache:       1027       3015

Swap:         1913          6       1907
```

d'un top

```
top - 12:22:31 up 6 days, 22:29,  1 user,  load average: 3.00, 2.93, 2.97

Tasks: 166 total,   1 running, 165 sleeping,   0 stopped,   0 zombie

Cpu(s):  0.3%us,  0.0%sy,  0.1%ni, 82.6%id, 17.0%wa,  0.0%hi,  0.0%si,  0.0%st

Mem:   4140492k total,  3825360k used,   315132k free,   387808k buffers

Swap:  1959924k total,     6520k used,  1953404k free,  2385212k cached
```

Je suis assez surpris par le load average alors que le serveur ne fait rien au moment où j'ai exécuté top

Symptômes 

Il me faut un temps fou pour me connecter en SSH, cela prend environ 10 secondes pour valider mon password

Le moindre LS prend également un temps fou : 2 ou 3 secondes dans un répertoire contenant une 20aine de fichiers

Via Samba l'exploration du réseau depuis un poste Windows prend également des plombes à chaque parcours de l'arborescence

Mon Alfresco est d'une lenteur calamiteuse sur le traitement (pas l'envoi) des pages

La moindre décompression d'un fichier prend également un temps inhabituellement long

Je ne peux que constater toutes ces lenteurs mais je ne sais pas trop où chercher pour identifier la cause. Auriez vous quelques pistes à me donner?

----------

## scherz0

Les 4 disques fonctionnent-ils correctement ?

Un RAID5 dégradé peut être très lent en lecture, à cause de la nécessité de recalculer une partie des données.

----------

## Bio

Bien vu. C'était pourtant tout bête

```
Drive Information (Controller ID 0) 

Port Model Capacity Serial # Firmware Unit Status Identify 

0 WDC WD1000FYPS-01ZKB0 931.51 GB WD-WCASJ1612964 02.01B01 0 OK  

1 WDC WD1000FYPS-01ZKB0 931.51 GB WD-WCASJ1201873 02.01B01 0 OK  

2 Hitachi HDS721010KLA330 931.51 GB GTH000PAH0P90H GKAOA70M 0 OK  

3 SAMSUNG HD103UJ 931.51 GB S13PJ1CQ502449 1AA01112 0 DEVICE ERROR  

```

Et d'après le log

```
Feb 17, 2012 12:00.43AM (0x04:0x000B): Rebuild started: unit=0 

Feb 16, 2012 04:08.58PM (0x04:0x0009): Drive timeout detected: port=3 

Feb 16, 2012 05:01.11AM (0x04:0x0009): Drive timeout detected: port=3 

Feb 16, 2012 12:00.40AM (0x04:0x000B): Rebuild started: unit=0 

Feb 15, 2012 01:15.15AM (0x04:0x0009): Drive timeout detected: port=3 

Feb 15, 2012 12:01.36AM (0x04:0x000B): Rebuild started: unit=0 

Feb 14, 2012 12:01.31AM (0x04:0x000B): Rebuild started: unit=0 

Feb 13, 2012 12:01.28AM (0x04:0x000B): Rebuild started: unit=0 

Feb 12, 2012 12:01.23AM (0x04:0x000B): Rebuild started: unit=0 

Feb 11, 2012 06:12.39AM (0x04:0x0009): Drive timeout detected: port=3 
```

Bon bin il ne me reste plus qu'à racheter un disque et à croiser les doigts pour que je ne perde aucune donnée.

Merci !

----------

## Bio

Plus généralement quels conseils pouvez vous me donner pour maintenir une bonne performance R/W sur mes disques tout au long de la vie de mon système.

----------

## El_Goretto

 *Bio wrote:*   

> Plus généralement quels conseils pouvez vous me donner pour maintenir une bonne performance R/W sur mes disques tout au long de la vie de mon système.

 

Un petit coup de poudre verte tous les 10.000 km  :Smile: 

Plus sérieusement, à part quelques rares systèmes de fichiers qui ont un utilitaire de défragmentation, je ne vois pas du tout...

Jamais rien fait de particuliers en ce sens.

----------

## Bio

Bon je suis en dégradé depuis 1 semaine mais ce qui est sûr c'est qu'hormis ce problème sur mon array raid 5 mes disques sont quand même beaucoup moins rapides aujourd'hui, soit 4/5 ans après l'install de mon système, qu'au premier jour.

J'aurais bien proposé un defrag ... mais non   :Wink: 

----------

## El_Goretto

Un RAID en mode dégradé, c'est des perfs qui s'écroulent, déjà. Que ton array RAID soit en mode dégradé depuis des mois, c'est pas improbable, hein.

Vraiment, ça me semblerait étrange, cette dégradation des perfs avec le temps. Si quelqu'un a déjà rencontré çà...

----------

## truc

Ahaha, la poudre verte...

Bon, en parcourant ce site j'suis arrivé sur celui de l'IPoT (IP over Time) et si vous regardez bien, sur le screenshort, à l'époque de noyau 3.2.XX on devrait déjà utiliser bzip3 (par encore disponible à l'époque). Certains ont plus d'info sur ce projet fort sympathique?   :Razz: 

----------

## Bio

Ca y est j'ai reçu mon disque de remplacement mais avant de le changer j'avoue que je suis un peu perplexe d'après les logs renvoyés par ma carte 3ware et je voudrais être sûr de ne pas foutre en l'air mon array RAID 5.

```
tw_cli info c0

Unit  UnitType  Status         %RCmpl  %V/I/M  Stripe  Size(GB)  Cache  AVrfy

------------------------------------------------------------------------------

u0    RAID-5    REBUILDING     53      -       64K     2793.94   OFF    OFF

Port   Status           Unit   Size        Blocks        Serial

---------------------------------------------------------------

p0     OK               u0     931.51 GB   1953525168    WD-WCASJ1612964

p1     DEGRADED         u0     931.51 GB   1953525168    WD-WCASJ1201873

p2     OK               u0     931.51 GB   1953525168    GTH000PAH0P90H

p3     DEVICE-ERROR     u0     931.51 GB   1953525168    S13PJ1CQ502449
```

D'après le log au dessus mon RAID 5 est en train de se rebuilder MAIS j'ai bien 2 disques en erreur.... Dans ce cas comment est ce qu'il s'en sort pour reconstruire  :Wink: 

Bon en regardant les logs de plus près voila ce que je trouve

```
Feb 23, 2012 12:01.34AM (0x04:0x000B): Rebuild started: unit=0 

Feb 22, 2012 09:48.07PM (0x04:0x0009): Drive timeout detected: port=3 

Feb 22, 2012 04:06.59PM (0x04:0x0009): Drive timeout detected: port=3 

Feb 22, 2012 12:08.53PM (0x04:0x000B): Rebuild started: unit=0 

Feb 22, 2012 10:32.32AM (0x04:0x000B): Rebuild started: unit=0 

Feb 17, 2012 12:00.43AM (0x04:0x000B): Rebuild started: unit=0 

Feb 16, 2012 04:08.58PM (0x04:0x0009): Drive timeout detected: port=3 

Feb 16, 2012 05:01.11AM (0x04:0x0009): Drive timeout detected: port=3 

Feb 16, 2012 12:00.40AM (0x04:0x000B): Rebuild started: unit=0 

Feb 15, 2012 01:15.15AM (0x04:0x0009): Drive timeout detected: port=3 

Feb 15, 2012 12:01.36AM (0x04:0x000B): Rebuild started: unit=0 

Feb 14, 2012 12:01.31AM (0x04:0x000B): Rebuild started: unit=0 

Feb 13, 2012 12:01.28AM (0x04:0x000B): Rebuild started: unit=0 

Feb 12, 2012 12:01.23AM (0x04:0x000B): Rebuild started: unit=0 

Feb 11, 2012 06:12.39AM (0x04:0x0009): Drive timeout detected: port=3 

Feb 11, 2012 12:01.21AM (0x04:0x000B): Rebuild started: unit=0 

Feb 10, 2012 01:55.19PM (0x04:0x000B): Rebuild started: unit=0 

Feb 10, 2012 01:53.40PM (0x04:0x000B): Rebuild started: unit=0 

Feb 10, 2012 11:42.35AM (0x04:0x000B): Rebuild started: unit=0 

Feb 10, 2012 11:40.43AM (0x04:0x0002): Degraded unit: unit=0, port=1 

Feb 10, 2012 11:40.43AM (0x04:0x0009): Drive timeout detected: port=1
```

On voit que le 10 février le disque P1 fait un timeout, le controleur décide dans la foulée de reconstruire l'array et, depuis, j'ai régulièrement des timeouts sur le disque P3. Avant le rebuild, les logs ne remontent aucune erreur sur P1 et P3.

Mon hypothèse est que le disque P1 à laché et que pendant que ça rebuild le disque P3 montre quelques signes de défaillance. Je pense donc remplacer P1 par un nouveau disque, reconstruire l'array et, dans un 2ème temps, remplacer P3. Qu'en pensez vous?

Enfin ça fait depuis le 10 février que ça rebuild c'est un peu long quand même...

----------

