MySQL - Gros problème de performance

kortex
2015-03-26T21:27:53+01:00
général.général, performance, mysql

Bonsoir,

Je vous sollicite ce soir pour un gros soucis de performance avec MySQL suite au remplacement du serveur physique l'hébergeant.

Contexte :

machine physique dédiée à MySQL

bases de données de tests uniquement

processeur : Intel(R) Xeon(R) CPU E5-2650 v2 @ 2.60GHz

128 Go de RAM

RAID 1 Logiciel avec mdadm (3.3.1-r2) ; 2 disques

système d'exploitation : Gentoo

Le problème :

avant la migration, la restauration d'une sauvegarde de production prenait 8H

après la migration, la même restauration prends 14H

La nouvelle machine est plus rapide au niveau processeur, RAM et disques durs. La seule différence avec l'ancienne se situe au niveau du RAID : l'ancienne avait un RAID matériel (MegaRAID SAS 2108) ; la nouvelle est en raid logiciel avec mdadm.

Ce qui a été fait / vérifié :

l'installation : elle est clean puisque d'autres machines fonctionnement parfaitement et elles sont toutes installées de la même manière

les partitions sont alignées (vérifié avec 'parted')

c'est une Gentoo donc les paquets sont à jour

kernel récent : 3.17.7-r1 hardened de Gentoo

configuration kernel : la même que l'ancienne machine car nous harmonisons nos configurations au maximum

hdparm -tT /dev/sd[a-b] donne des bons résultats (160 Mo/s pour chacun des disques)

hdparm -tT /dev/md4 (partition contenant le "/" donc système + MySQL) donne des bons résultats (160 Mo/s aussi)

un transfert brut d'un fichier de 10 Go du disque vers la RAM est plus rapide que sur l'ancienne machine

un transfert brut d'un fichier de 10 Go de la ram vers le disque est plus rapide que sur l'ancienne machine

un transfert réseau entre la machine qui pousse le dump et cette machine est plus rapide qu'entre la machine qui pousse le dump et l'ancienne machine

j'ai essayé de modifier /proc/sys/dev/raid/speed_limit_min et /proc/sys/dev/raid/speed_limit_max (même si normalement ça influence que la synchronisation du raid)

J'ai essayé de modifier des paramètres de la configuration MySQL :

avec la même configuration que l'ancienne machine : c'est lent

en modifiant des paramètres de MySQL : le résultat reste le même

Niveau montage c'est du basique :
/dev/md4 on / type ext4 (rw,noatime,data=ordered)

Les disques sont ok :
md4 : active raid1 sda4[0] sdb4[1]
2921742272 blocks [2/2] [UU]
bitmap: 0/22 pages [0KB], 65536KB chunk

Pendant la restauration de la sauvegarde, iotop me donne quelques indications :

l'écriture ne dépasse pas les 30 Mo/s sur les deux machines

sur la nouvelle machine (celle qui est lente), le premier consommateur des disques est 'jbd2[…]' puis vient MySQL alors que sur l'ancienne machine c'est l'inverse (d'abord MySQL puis 'jdb2[…]')

sur les deux machines, un top me dit que je ne dépasse pas les 3 I/O Wait (WA)

Je pense avoir fait le tour de toutes les choses testées et j'ai toujours des soucis.

Est-ce que quelqu'un aurait une idée d'où vienne ces lenteurs ? Une idée de réglage(s) à effectuer ?
Je vous remercie d'avance.