56 votes

Comment interrompre la resynchronisation logicielle du raid ?

Je souhaite interrompre une opération de resynchronisation en cours sur un raid logiciel debian squeeze. (Il s'agit de la resynchronisation régulière de la comparaison. La matrice raid est toujours propre dans ce cas. Ne pas confondre avec une reconstruction après qu'un disque soit tombé en panne et ait été remplacé).

Comment arrêter cette opération de resynchronisation programmée pendant qu'elle est en cours ? Une autre matrice raid est "en attente de resynchronisation", parce qu'elles sont toutes vérifiées le même jour (dimanche soir) l'une après l'autre. Je veux arrêter complètement cette resynchronisation du dimanche soir.

[Edit : sudo kill -9 1010 ne l'arrête pas, 1010 est le PID du processus md2_resync].

J'aimerais également savoir comment je peux contrôler les intervalles entre les resynchronisations et le temps restant jusqu'à la prochaine resynchronisation.

[Edit2 : Ce que j'ai fait maintenant, c'est que la resynchronisation se fait très lentement, de sorte qu'elle ne dérange plus :

sudo sysctl -w dev.raid.speed_limit_max=1000

extrait de http://www.cyberciti.biz/tips/linux-raid-increase-resync-rebuild-speed.html

Au cours de la nuit, je le ramènerai à une valeur élevée, afin que la resynchronisation puisse se terminer.

Cette solution de contournement convient à la plupart des situations, mais il serait intéressant de savoir si ce que j'ai demandé est possible. Par exemple, il ne semble pas possible d'agrandir un tableau pendant qu'il se resynchronise ou qu'il se resynchronise "en attente"].

3voto

jammus Points 1796

Je ne suis pas sûr de savoir comment annuler une resynchronisation, mais le calendrier est contrôlé par /etc/cron.d/mdadm sur les systèmes Debian/Ubuntu.

Le script /usr/share/mdadm/checkarray peut vous éclairer sur l'autre partie de votre question, puisque c'est ce qui est appelé par cron.

3voto

sishamani Points 1

Si votre périphérique md est md0 et que vous voulez arrêter la resynchronisation de l'écriture :

echo "idle" > /sys/block/md0/md/sync_action

3voto

brian Points 31
echo "idle" > /sys/block/md0/md/sync_action

Ne fonctionne pas lorsque /sys/block/md*/md/sync_action est "resync" (contrairement à son état qui est "check" ou "repair"). Vous pouvez ajouter "idle" dans le fichier sync_action, mais cela n'a pas d'effet sur la progression. Ce fichier de documentation du noyau aquí Il est incorrect de dire que cela fonctionnera, mais cela n'a jamais fonctionné pour moi :

L'option "idle" interrompt une resynchronisation/récupération active, etc. Il n'y a aucune garantie qu'une autre resynchronisation/récupération ne soit pas automatiquement relancée, bien qu'un événement soit nécessaire pour déclencher cela.

0voto

eth Points 25

Je sais que cet article date d'il y a 4 ans, mais vous pouvez aussi faire cela (en supposant que md0 est la matrice et sdb4 le "disque" de resynchronisation) :

    mdadm /dev/md0 --fail /dev/sdb4 && mdadm /dev/md0 --remove /dev/sdb4

Cette commande prétend que sdb4 est un disque défaillant et l'exclut donc de la matrice, ce qui arrête la resynchronisation. S'il n'y a pas eu d'erreur pendant l'action d'arrêt de la resynchronisation, cette commande supprimera également sdb4 de la matrice md0. S'il y a eu une erreur, le disque reste en état d'échec mais reste dans le tableau.

Si un disque tombe en panne à n'importe quel endroit du mdadm vous le réglez logiquement a échoué. Si le tableau était propre (non dégradé), le disque reste cohérent et peut être réajouté par l'option --add << disk >> --assume-clean sans crainte. S'il y a eu tous action après qu'il a été détaché (par exemple, resynchronisation, reconstruction ou même écriture), --assume-clean échouera probablement et lancera immédiatement une action de resynchronisation.

Changer raid.speed_limit_min y raid.speed_limit_max est en quelque sorte une mauvaise idée car elle affecte non seulement les vitesses de resynchronisation/reconstruction mais aussi les vitesses de fonctionnement normales, et vous perdrez probablement une grande partie des performances obtenues grâce à l'utilisation de matrices RAID.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X