Lvmraid

De SME Server Wiki

grace a lvm et raid1 par defaut sur sme vous pouvez gerer facilement les disques, voir meme changer un disque ou deux et retoucher la taille des partitions.

voir http://forums.ixus.fr/viewtopic.php?t=38235&start=15 http://wiki.contribs.org/Raid#Upgrading_the_Hard_Drive_Size


Attention cette manipulation est réservée à des administrateur qui sont à l'aise avec Linux. Vous devez être certain de ce que vous faites. En effet il est facile, si l'on est pas à l'aise de formater le lecteur contenant les données au lieu de votre nouveau disque.

Sur un serveur Physique

Installer le premier nouveau disque

Éteindre le serveur et installer un des nouveaux disques en débranchant un des anciens. Faites attention de débrancher tout disque USB qui servent à autre chose (comme pour faire une sauvegarde).

Relancez votre serveur.

Ajout du nouveau disque dans l'array raid

Une fois redémarré vous pouvez constater que le raid focntionne en degradé :

cat /proc/mdstat

partitionner le disque

D'abord vérifier la taille de la partition boot

df /boot

devrait retourner :

Sys. de fich.        1K-blocs       Occupé Disponible Capacité Monté sur
/dev/md1                101018     20802     75000  22% /boot

Vous devez d'abord créer les partitions raid

/!\ Attention sdb n'est peut être pas le nom de votre disque ajouté /!\

fdisk /dev/sdb

taper n p 1 puis 1 et +101018K pour la taille de la partition boot, a changer suivant votre cas)


ensuite deuxième partition: n p 2 puis compléter le disque avec la deuxième partition (taper sur entrer pour utiliser tout)


choisissez de mettre un système raid linux sur chacune des partitions: tapez t puis 1 puis fd choisissez de mettre un système raid linux sur chacune des partitions: tapez t puis 2 puis fd


terminez en quittant fdisk en écrivant la table de partition: tapez w

ajouter les disques dans les array raid

En observant le raid avec cat /proc/mdstat vous pouvez constater qu'il y'a deux array (un pour le boot et un pour le systeme) il faut donc ajouter les partitions créées a ces deux array : (en admetant que md0 est le array boot et md1 est l'array système ce qui est à vérifier avec mdstat)

mdadm /dev/md0 --add /dev/sdb1
mdadm /dev/md1 --add /dev/sdb2

maintenant vos disques sont ajoutés et (a condition que les partitions soient au moins aussi grosses que les anciennes) les array vont synchroniser les données:

vérifiez l'avancée avec:

watch -n 3 cat /proc/mdstat

attendez que tout soit synchronisé

ajouter le deuxième disque

éteindre le serveur retirer le deuxième ancien disque, ajouter le nouveau tout rebrancher et redémarrer.

partitioner le disque

D'abord verifier la taille de la partition boot

df /boot

devrait retourner :

Sys. de fich.        1K-blocs       Occupé Disponible Capacité Monté sur
/dev/md1                101018     20802     75000  22% /boot

Vous devez d'abord créer les partitions raid (attention sdb n'est pas forcement le nom de votre disque ajouté)

fdisk /dev/sdb

taper n p 1 puis 1 et 101018K pour la taille de la partition boot, a changer suivant votre cas)


ensuite deuxième partition: n p 2 puis compléter le disque avec la deuxième partition (taper sur entrer pour utiliser tout)


choisissez de mettre un système raid linux sur chacune des partitions: tapez t puis 1 puis fd choisissez de mettre un système raid linux sur chacune des partitions: tapez t puis 2 puis fd


terminez en quittant fdisk en écrivant la table de partition: tapez w

ajouter les disques dans les array raid

En observant le raid avec cat /proc/mdstats vous pouvez constater qu'il y'a deux array (un pour le boot et un pour le systeme) il faut donc ajouter les partitions créées a ces deux array : (en admetant que md1 est le array boot et md2 est l'array système ce qui est à vérifier avec mdstats)

mdadm /dev/md1 --add /dev/sdb1
mdadm /dev/md2 --add /dev/sdb2

maintenant vos disques sont ajoutés et (a condition que les partitions soient au moins aussi grosses que les anciennes) les array vont synchroniser les données:

vérifiez l'avancée avec:

watch -n 3 cat /proc/mdstat

attendez que tout soit synchronisé


agrandir l'espace

mdadm --grow /dev/md1 --size=max
mdadm --grow /dev/md2 --size=max
pvresize /dev/md1
pvresize /dev/md2
lvresize -l +$(vgdisplay -c main | cut -d: -f16) main/root

ou si vous avez installé votre sme en 7 RC

lvresize -l +$(vgdisplay -c vg_primary | cut -d: -f16) vg_primary/lv_root

vous pouvez vérifier cela en tapant "df -h" si vous pouvez lire "/dev/mapper/vg_primary-lv_root" c'est la deuxième ligne que vous devez utiliser, sinon "/dev/mapper/main-root" c'est la première qui vous est utile. Attention  : [-l (L minuscule)]


ext2online -C0 /dev/main/root 
             ou 
ext2online -C0 /dev/mapper/vg_primary-lv_root

attention  : [-C0 pour tiret C zero]

   * These instructions should work for any raid level you have as long as you have >= 2 drives
   * If you have disabled lvm 
  1. you don't need the pvresize or lvresize command
  2. the final line becomes ext2online -C0 /dev/md2 (or whatever / is mounted to) 


resize machine vmware

d'abord:

C:\Program Files\VMware\VMware Server>vmware-vdiskmanager -x 8GB "F:\Documents\My Virtual Machines\VMWP-SME7\sme7pre1.vmdk"
C:\Program Files\VMware\VMware Server>vmware-vdiskmanager -c -s 8GB -a ide -t 1
"F:\Documents\My Virtual Machines\VMWP-SME7\sme7pre2.vmdk"

puis modifier le fichier de la machine pour ajouter le disque

ensuite meme chose que ajout de disque


  1. Freeing /dev/sda:
  2. First, removing all RAID1 partitions on /dev/sda:
mdadm /dev/md1 --fail /dev/sda3 --remove /dev/sda3
mdadm /dev/md0 --fail /dev/sda1 --remove /dev/sda1
  1. Then, stopping the swapspace on /dev/sda:

swapoff /dev/sda2

  1. Then, altering the partition tables:
fdisk /dev/sda
 #entering 'w' at the end to write. This should go OK now.
  1. Start using the partitions again:
swapon /dev/sda2
mdadm /dev/md0 --add /dev/sda1
mdadm /dev/md1 --add /dev/sda3
  1. wait for both md devices to be fully synced
  2. (check /proc/mdstat)
  1. same with /dev/sdb
mdadm /dev/md1 --fail /dev/sdb3 --remove /dev/sdb3
mdadm /dev/md0 --fail /dev/sdb1 --remove /dev/sdb1
fdisk /dev/sdb
mdadm /dev/md0 --add /dev/sdb1
  1. don't add /dev/sdb3 yet, to have a spare copy while resize2fs-ing
mdadm --grow /dev/md1 --size=max
resize2fs /dev/md1
  1. If the resize2fs-ing went OK, we can now add /dev/sdb3:
mdadm /dev/md1 --add /dev/sdb3


http://www.debian-administration.org/articles/424