Installation de DRBD > 8.3.2 pour Debian GNU/Linux Lenny

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