5. Redimensionnement des régions MD

Les régions RAID peuvent être redimensionnées dans le but d'étendre ou de réduire l'espace de données disponible dans la région. Chaque niveau RAID a des caractéristiques différentes et le moment où on peut les étendre ou les réduire, ainsi que la méthode, dépendent donc de conditions et exigences différentes.

Voir le chapitre 16 pour des informations plus générales concernant le redimensionnement des volumes et objets EVMS.

Une région RAID linéaire [Linear-RAID] peut être étendue de deux façons. Premièrement, si le dernier objet fils dans la région Linear-RAID est extensible, cet objet peut être étendu, et la région RAID peut s'étendre dans ce nouvel espace. Deuxièmement, un ou plusieurs nouveaux objets peuvent êtres ajoutés à la fin de la région.

De même, on peut réduire une région Linear-RAID de deux façons. Si, à condition qu'il soit possible de le faire, on réduit le dernier objet fils de la région, la région RAID sera réduite dans la même proportion. En outre, un ou plusieurs objets peuvent être retirés de la fin de la région RAID (mais le premier objet de la région ne peut pas être retiré).

Les régions Linear-RAID peuvent être redimensionnées lorsqu'elles sont actives et en cours d'utilisation.

Vous pouvez étendre une région RAID-0 en ajoutant un nouvel objet à cette région. Vous pouvez également réduire une région RAID-0 en supprimant jusqu'à N-1 objets fils d'une région qui contient N objets .

Du fait que pour les régions RAID-0, la segmentation par entrelacement se fait sur l'ensemble des objets fils, lorsqu'une région RAID-0 est redimensionnée, cette segmentation des données doit obligatoirement être refaite pour prendre en compte le changement du nombre d'objets. Cela signifie que le plug-in du MD enlèvera chaque bloc de données de son emplacement dans la région actuelle pour le placer au bon endroit dans la région étendue. On vous prévient : ce processus peut prendre un certain temps. Pour l'instant, il n'existe pas de mécanisme permettant de l'accélérer ou de le ralentir. L'interface utilisateur de EVMS et le mode texte en indiqueront la progression. Ne tentez pas d'interrompre ce processus avant qu'il ne soit terminé car cela risque d'entraîner la corruption des données dans la région RAID-0.

Les régions RAID-0 doivent absolument être désactivées avant qu'elles ne soient redimensionnées afin d'éviter la corruption des données pendant leur re-segmentation.

IMPORTANT: Il vous faudra préparer une sauvegarde avant d'essayer de redimensionner un RAID-0. Si le processus de re-segmentation est interrompu avant d'arriver à son terme (par exemple le processus EVMS meurt, la machine plante, ou bien un objet fils de la région RAID commence à renvoyer des erreurs d'E/S), l'état de cette région ne peut pas être garanti en toutes circonstances.

EVMS essayera de faire une restauration suite à un problème durant un redimensionnement RAID-0. Le plug-in MD gardera la trace de l'avancement du redimensionnement dans les metadonnées du MD. A chaque fois qu'un bloc de données est déplacé, les métadonnées du MD sont réactualisées afin de montrer quelles sont les données qui sont en train d'être traitées. Si EVMS ou la machine plante durant le redimensionnement, la prochaine fois que vous démarrerez EVMS le plug-in du MD essayera de restaurer l'état de cette région en se basant sur les dernières informations des métadonnées. Si une extension est en cours, la région sera ramenée à son état d'avant le redimensionnement. Si une réduction est en cours, celle-ci continuera à partir du point où elle s'est arrêtée. Toutefois cette récupération n'est pas toujours suffisante pour garantir que la pile entière du volume est dans un état correct. Si la région RAID-0 est transformée directement en un volume, elle retrouvera probablement son état correct. D'un autre côté, si la région RAID est un objet consommé dans un un conteneur LVM, ou un objet fils d'une autre région RAID, alors les méta-données pour ces plug-ins ne seront peut-être pas toujours dans un état correct et seront peut-être au mauvais endroit dans la région RAID. Ainsi, les conteneurs, objets et volumes construits par-dessus la région RAID-0 ne refléteront peut-être pas la bonne taille, il se peut même qu'ils ne soient pas retrouvés.

Une région RAID-1 peut être redimensionnée si tous les objets fils peuvent être simultanément redimensionnés dans les mêmes proportions.

Les régions RAID-1 ne peuvent pas être redimensionnées en ajoutant des objets. Il s'agit, pour ce genre d'opération, de ce qu'on appelle «l'ajout d'objets actifs» et nous en avons déjà parlé dans la section B.3.3.

Avant d'être redimensionnées, les régions RAID-1 doivent être désactivées.

Le redimensionnement d'une région RAID-4/5 suit les mêmes règles et restrictions que pour le redimensionnement d'une région RAID-0. Étendre une région RAID-4/5 en ajoutant un nouvel objet à la région. Réduire une région RAID-4/5 en supprimant jusqu'à N-1 objets fils d'une région qui contient N objets .

On trouvera des informations sur l'exécution de cette fonction dans la Section B.5.2.

Comme RAID-0, les régions RAID-4/5 doivent êtres désactivées avant d'être redimensionnées