Red Hat Training
A Red Hat training course is available for Red Hat Enterprise Linux
5.5. Création d'un volume logique LVM miroir dans un cluster
La création d'un volume logique LVM miroir dans un cluster requiert les mêmes commandes et procédures que la création d'un volume logique LVM miroir sur un noeud unique. Cependant, afin de créer un volume LVM miroir dans un cluster, le cluster et l'infrastructure miroir du cluster doivent être en cours d'exécution, le cluster doit comporter le quorum et le type de verrouillage dans le fichier
lvm.conf
doit être correctement configuré pour permettre le verrouillage du cluster soit directement, soit par le biais de la commande lvmconf
comme décrit dans la Section 3.1, « Création de volumes LVM dans un cluster ».
La procédure suivante crée un volume LVM miroir dans un cluster. D'abord, la procédure vérifie si les services du cluster sont bien installés et en cours d'exécution, puis elle crée le volume miroir.
- Pour créer un volume logique miroir partagé par tous les noeuds d'un cluster, le type de verrouillage doit être correctement défini dans le fichier
lvm.conf
dans chaque noeud du cluster. Par défaut, le type de verrouillage est défini sur « local ». Pour modifier ceci, exécutez la commande suivante dans chaque noeud du cluster afin de permettre le verrouillage clusterisé.#
/sbin/lvmconf --enable-cluster
- Pour créer un volume logique clusterisé, l'infrastructure du cluster doit être en cours d'exécution sur chaque noeud du cluster. L'exemple suivant vérifie que le démon
clvmd
est en cours d'exécution sur le noeud d'où il provient :[root@doc-07 ~]#
ps auxw | grep clvmd
root 17642 0.0 0.1 32164 1072 ? Ssl Apr06 0:00 clvmd -T20 -t 90La commande suivante affiche une vue locale du statut du cluster :[root@example-01 ~]#
cman_tool services
fence domain member count 3 victim count 0 victim now 0 master nodeid 2 wait state none members 1 2 3 dlm lockspaces name clvmd id 0x4104eefa flags 0x00000000 change member 3 joined 1 remove 0 failed 0 seq 1,1 members 1 2 3 - Assurez-vous que le paquetage
cmirror
est bien installé. - Lancez le service
cmirrord
.[root@hexample-01 ~]#
service cmirrord start
Starting cmirrord: [ OK ] - Créez le miroir. La première étape est la création des volumes physiques. Les commandes suivantes créent trois volumes physiques. Deux des volumes physiques seront utilisés comme branches du miroir (de l'anglais, « mirror legs »), et le troisième volume physique contiendra le journal miroir.
[root@doc-07 ~]#
pvcreate /dev/xvdb1
Physical volume "/dev/xvdb1" successfully created [root@doc-07 ~]#pvcreate /dev/xvdb2
Physical volume "/dev/xvdb2" successfully created [root@doc-07 ~]#pvcreate /dev/xvdc1
Physical volume "/dev/xvdc1" successfully created - Créez le groupe de volumes. Cet exemple crée le groupe de volumes
vg001
, qui est composé des trois volumes physiques créés dans l'étape précédente.[root@doc-07 ~]#
vgcreate vg001 /dev/xvdb1 /dev/xvdb2 /dev/xvdc1
Clustered volume group "vg001" successfully createdRemarquez que la sortie de la commandevgcreate
indique que le groupe de volumes est clusterisé. Vous pouvez vérifier si un groupe de volumes est clusterisé avec la commandevgs
, qui affiche les attributs d'un groupe de volumes. Si un groupe de volumes est clusterisé, l'attribut « c » sera affiché.[root@doc-07 ~]#
vgs vg001
VG #PV #LV #SN Attr VSize VFree vg001 3 0 0 wz--nc 68.97G 68.97G - Créez le volume logique miroir. Cet exemple crée le volume logique
mirrorlv
à partir du groupe de volumesvg001
. Ce volume possède une seule branche de miroir (de l'anglais, « mirror leg »). L'exemple spécifie les extensions du volume physique qui seront utilisées pour le volume logique.[root@doc-07 ~]#
lvcreate -l 1000 -m1 vg001 -n mirrorlv /dev/xvdb1:1-1000 /dev/xvdb2:1-1000 /dev/xvdc1:0
Logical volume "mirrorlv" createdVous pouvez utiliser la commandelvs
pour afficher le progrès de la création du miroir. L'exemple suivant affiche que le miroir est synchronisé à 47%, puis synchronisé à 91%, le miroir est créé lorsque la synchronisation est à 100%.[root@doc-07 log]#
lvs vg001/mirrorlv
LV VG Attr LSize Origin Snap% Move Log Copy% Convert mirrorlv vg001 mwi-a- 3.91G vg001_mlog 47.00 [root@doc-07 log]#lvs vg001/mirrorlv
LV VG Attr LSize Origin Snap% Move Log Copy% Convert mirrorlv vg001 mwi-a- 3.91G vg001_mlog 91.00 [root@doc-07 ~]#lvs vg001/mirrorlv
LV VG Attr LSize Origin Snap% Move Log Copy% Convert mirrorlv vg001 mwi-a- 3.91G vg001_mlog 100.00La création du miroir est notée dans le journal système :May 10 14:52:52 doc-07 [19402]: Monitoring mirror device vg001-mirrorlv for events May 10 14:55:00 doc-07 lvm[19402]: vg001-mirrorlv is now in-sync
- Vous pouvez utiliser la commande
lvs
avec les options-o +devices
pour afficher la configuration du miroir, y compris pour afficher quels périphériques remplissent le rôle de branches du miroir (de l'anglais, « mirror legs »). On peut observer dans cet exemple que le volume logique est composé de deux images linéaires et d'un journal.[root@doc-07 ~]#
lvs -a -o +devices
LV VG Attr LSize Origin Snap% Move Log Copy% Convert Devices mirrorlv vg001 mwi-a- 3.91G mirrorlv_mlog 100.00 mirrorlv_mimage_0(0),mirrorlv_mimage_1(0) [mirrorlv_mimage_0] vg001 iwi-ao 3.91G /dev/xvdb1(1) [mirrorlv_mimage_1] vg001 iwi-ao 3.91G /dev/xvdb2(1) [mirrorlv_mlog] vg001 lwi-ao 4.00M /dev/xvdc1(0)Vous pouvez utiliser l'optionseg_pe_ranges
de la commandelvs
pour afficher la structure des données. Cette option peut être utilisée pour vérifier que votre structure est correctement redondante. La sortie de cette commande afficher les échelles PE sous le même format que les saisies des commandelvcreate
etlvresize
.[root@doc-07 ~]#
lvs -a -o +seg_pe_ranges --segments
PE Ranges mirrorlv_mimage_0:0-999 mirrorlv_mimage_1:0-999 /dev/xvdb1:1-1000 /dev/xvdb2:1-1000 /dev/xvdc1:0-0
Note
Pour plus d'informations sur la restauration d'échec d'une des branches d'un volume miroir LVM, voir Section 6.3, « Récupération suite à un échec miroir LVM ».