Introduction

Pour la mise en place de DRBD avec le support de pacemaker (support cluster), vous avez besoin de la version 8.3.2 minimum de DRBD. Lors de mes tests il y a quelques mois, c’est cette version qui était disponible dans le dépôt backport.

Depuis, elle a évolué vers la version 8.3.7. Problème, la compilation du module pour le noyau Xen échoue.

Installation « à la debian »

Donc, en théorie, la méthode module-assistant est censée marcher:

Procédure d’installation de drbd8 avec module-assistant
echo "deb //www.backports.org/debian lenny-backports main" >> /etc/apt/sources.list aptitude update aptitude install drbd8-source aptitude install module-assistant m-a prepare m-a update m-a a-i drbd8-source

Ça, c’est la théorie « à la Debian ». Si ça ne marche pas, la seule solution c’est… manuel (en fait, pas tout à fait, disons qu’on va construire nous-même les paquets Debian) !

Installation « manuelle »

C’est parti:

Procédure d’installation de drbd8 depuis les sources

aptitude install git-core mkdir ~/drbd cd ~/drbd git clone git://git.drbd.org/drbd-8.3.git cd drbd-8.3/ git checkout drbd-8.3.7

aptitude install autoconf automake1.9 build-essential fakeroot flex xsltproc debhelper debconf-utils sp docbook-utils docbook dpatch dpkg-buildpackage -rfakeroot -b -uc

Ceci va préparer 2 paquets Debian:

Paquets source + utilitaire DRBD8
ls -l ~/drbd
total 552
drwxr-xr-x 9 root root   4096 Feb 17 20:34 drbd-8.3
-rw-r--r-- 1 root root 218766 Feb 17 20:34 drbd8-module-source_8.3.7-0_all.deb
-rw-r--r-- 1 root root 195792 Feb 17 20:34 drbd8-utils_8.3.7-0_amd64.deb
-rw-r--r-- 1 root root   1085 Feb 17 20:34 drbd8_8.3.7-0_amd64.changes

Maintenant, on va pouvoir compiler le module.

dpkg -i drbd8-module-source_8.3.7-0_all.deb aptitude install module-assistant m-a a-i drbd8-module cp /usr/src/drbd8-module-2.6.26-2-xen-amd64_8.3.7-0+2.6.26-21lenny3_amd64.deb .

dpkg -i drbd8-module-source_8.3.7-0_all.deb aptitude install module-assistant ls -l /usr/src/
total 148
-rw-r--r--  1 root src  121424 Apr 24 15:43 drbd8-module-2.6.32-bpo.4-xen-amd64_8.3.7-0+2.6.32-11~bpo50+1_amd64.deb
lrwxrwxrwx  1 root src      45 Apr 24 15:30 linux -> /usr/src/linux-headers-2.6.32-bpo.4-xen-amd64
drwxr-xr-x  4 root root   4096 Apr 24 15:30 linux-headers-2.6.26-2-amd64
drwxr-xr-x 18 root root   4096 Apr 24 15:30 linux-headers-2.6.26-2-common
drwxr-xr-x  4 root root   4096 Apr 21 17:38 linux-headers-2.6.32-bpo.4-common-xen
drwxr-xr-x  4 root root   4096 Apr 24 15:46 linux-headers-2.6.32-bpo.4-xen-amd64
drwxr-xr-x  3 root root   4096 Apr 24 15:30 linux-kbuild-2.6.26
lrwxrwxrwx  1 root root     26 Apr 21 17:37 linux-kbuild-2.6.32 -> ../lib/linux-kbuild-2.6.32
drwxr-xr-x  3 root root   4096 Apr 20 22:38 modules m-a build -l 2.6.32-bpo.4-xen-amd64 drbd8-module cp /usr/src/drbd8-module-2.6.26-2-xen-amd64_8.3.7-0+2.6.26-21lenny3_amd64.deb .

Ceci va créer le paquet Debian du module compilé adapté au noyau. Copiez les paquets sur les machines concernées et installez-les.

Enjoy ! Bien entendu, vous faites le ménage après sur la machine ayant servi à la compilation, sauf si elle est dédiée à ce genre de choses.

Pour aller plus loin

Pour aller plus loin, vous pouvez consulter:

Sources

  • //www.drbd.org/users-guide/s-build-deb.html
  • //www.drbd.org/users-guide/s-build-from-source.html#s-build-prereq
  • //www.drbd.org/users-guide/s-checking-out-git.html