Aller à : navigation, rechercher

Xenserver - Mise en place de la réplication drbd entre 2 Xenserver

Configuration LVM

Pour notre démo, le volume raid est /dev/sdb, 4000GB. A adapter à votre cas

  • Commande à lancer sur les 2 Xenserver
ssh root@"ip xenservers"

modifier les filtres LVM

vi /etc/lvm/lvm.conf

commenter la ligne

#filter = [ "r|/dev/xvd.|", "r|/dev/VG_Xen.*/*|"]

remplacer par

filter = ["a|/dev/drbd*|","a|sda.*|","r|.*|"]

Redémarrer le serveur

pvcreate /dev/sdb
vgcreate xenserver /dev/sdb

Avant de créer les LVM, il faut prendre en compte que le volume groupe ne fait pas 4 To:

La commande

vgs

affiche

  xenserver                                         1   0   0 wz--n- 3,64T 3,64T

créer les volumes LVM en conséquence

lvcreate -n  drbd1 -L 1,81T xenserver
lvcreate -n  drbd2 -L 1,81T xenserver

Configuration du DRBD

Configurer le gestionnaire de paquets yum

vi /etc/yum.repos.d/CentOS-Base.repo

dans la section [base] changer enabled=0

enabled=1
vi /etc/yum.repos.d/Citrix.repo

changer enabled=1

 enabled=0
cd /etc/pki/rpm-gpg/
wget --no-check-certificate https://fedoraproject.org/static/217521F6.txt
mv 217521F6.txt RPM-GPG-KEY-EPEL
cd /root
wget "http://download.fedoraproject.org/pub/epel/5/i386/epel-release-5-4.noarch.rpm"
rpm -i epel-release-5-4.noarch.rpm

Installer le DRBD

cd /root
wget http://srvinstallation.tranquil.it/logiciels/drbd/drbd-utils-8.4.3-2.x86_64.rpm
rpm -i drbd-utils-8.4.3-2.x86_64.rpm
modprobe drbd

Configuration interfaces réseau drbd

Nous utiliserons eth1 sur chaque Xen pour la réplication DRBD.

Ces interfaces devront être seulement utilisées pour le trafic DRBD.

sur l'un des Xenserver

xe pif-list device=eth1

Un uuid est retourné pour chaque eth1 des 2 Xenservers

uuid ( RO)                  : 082915b1-af96-74cd-f955-2517d3f794b9
                device ( RO): eth1
    currently-attached ( RO): true
                  VLAN ( RO): -1
          network-uuid ( RO): c3c23dfe-1a7a-d121-adc0-ca4046917607


uuid ( RO)                  : 67077c00-1a56-799d-13d3-a067a6fb3cdb
                device ( RO): eth1
    currently-attached ( RO): true
                  VLAN ( RO): -1
          network-uuid ( RO): c3c23dfe-1a7a-d121-adc0-ca4046917607

Il faut supprimer les définitions de ces PIF et le NETWORK

xe pif-unplug uuid=082915b1-af96-74cd-f955-2517d3f794b9
xe pif-unplug uuid=67077c00-1a56-799d-13d3-a067a6fb3cdb
xe pif-forget  uuid=082915b1-af96-74cd-f955-2517d3f794b9
xe pif-forget  uuid=67077c00-1a56-799d-13d3-a067a6fb3cdb
xe network-destroy uuid=c3c23dfe-1a7a-d121-adc0-ca4046917607
  • A faire sur srvxen1
vi /etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE=eth1
XENMANAGED=no
ONBOOT=yes
BOOTPROTO=static
IPADDR=10.0.0.1
NETMASK=255.255.255.0
MTU=9000

Activer l'interface réseau

ifup eth1

Relancer xapi pour vérifier le tout

/etc/init.d/xapi restart


  • A faire sur srvxen2
vi /etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE=eth1
XENMANAGED=no
ONBOOT=yes
BOOTPROTO=static
IPADDR=10.0.0.2
NETMASK=255.255.255.0
MTU=9000

Activer l'interface réseau

ifup eth1

Relancer xapi pour vérifier le tout

/etc/init.d/xapi restart

Configuration le DRBD

  • A faire sur les 2 Xenserver
vi /etc/drbd.d/drbd1.res
resource drbd1 {
    protocol B;

    on srvxen1.test.lan {
         device /dev/drbd1;
         disk /dev/xenserver/drbd1;
         address 10.0.0.1:7090;
         meta-disk internal;
    }
    on srvxen2.test.lan {
         device /dev/drbd1;
         disk /dev/xenserver/drbd1;
         address 10.0.0.2:7090;
         meta-disk internal;
    }
}
vi /etc/drbd.d/drbd2.res
resource drbd2 {
    protocol B;

    on srvxen1.test.lan {
         device /dev/drbd2;
         disk /dev/xenserver/drbd2;
         address 10.0.0.1:7091;
         meta-disk internal;
    }
    on srvxen2.test.lan {
         device /dev/drbd2;
         disk /dev/xenserver/drbd2;
         address 10.0.0.2:7091;
         meta-disk internal;
    }
}
vi global_common.conf
global {
        usage-count no;
}

common {
	disk{
		no-disk-barrier; 
		no-disk-flushes;
	}

   syncer {
         rate 800M;
	al-extents 3833;
    }
    startup {
         degr-wfc-timeout 15;
    }
    net {
    }

}

Configurer IPTABLES

  • A faire sur les 2 xenserver
vi /etc/sysconfig/iptables

Ajouter

#drbd
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 7090 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 7091 -j ACCEPT
/etc/init.d/iptables restart

Monter le DRBD et lancer les synchros

!!! Attention, à ne faire qu'au premier lancement des DRBD !!!

sur srvxen1

drbdadm create-md drbd1
drbdadm up drbd1

!!! Attention, ne lancer la commande ci-dessous que sur srvxen1!!!

drbdadm -- --overwrite-data-of-peer primary drbd1
drbdadm create-md drbd2
drbdadm up drbd2

sur srvxen2

drbdadm create-md drbd2
drbdadm up drbd2

!!! Attention, ne lancer la commande ci-dessous que sur srvxen2!!!

drbdadm -- --overwrite-data-of-peer primary drbd2
drbdadm create-md drbd1
drbdadm up drbd1

La commande

drbd-overview 

montre la synchro en cours