Drbd+heartbeat

Grosse blague…donc j’ai repris tout depuis le début (je ne voulais pas backper mes vm’s du taff).
Je passe donc sur un noyau plus récent. 1 er blague, ma carte ne chope plus aucune address (je suis en dhcp), il y a du broadcast oui mais pas de récupération d’ip. 2emme blague, je me dit ben tant pis je met tout ça à la mano.Un pauvre ping google.fr me retourne un bon p’tit message en me disant host inconnu.(mon resolv.conf est correct -> dns free)
J’ai exactement la même config, juste peut-être au niveau de la couche 2 un os “plus ancien”. C’est à dire que la je boss sur un XP et au taff j’ai un client 7.

(Virtualisation avec Workstation.)

Ça avaaaaannnnce… (Modifications tcp/ip de ma Vmnet.)

Bizarre cette perte de réseau au changement de noyau.
C’est quoi comme matériel qui est émulé ? (lspci)

Uhmm je vais avoir la possibilité de répondre à ta question “ce soir”. Je suis sur mon lieu de travail, donc materiel different.
Perso je trouverai ça pas déconnant que ce soit ma carte qui merdouille. Au travail c’est nickel.
Le fait de changer allow-hotplug eth0 par auto eth0 il y a t’il un rapport?(je ne pense pas mais on ne sait jamais) :016

Le auto et le allow-hotplug sont deux choses différentes (et tu devrais probablement avoir les deux lignes).

auto eth0 => le kernel fait un ifup automatiquement au démarrage
allow-hotplug eth0 => autoriser le branchement / débranchement du câble “à chaud” (pendant que le PC est allumé ; pour un serveur ça devrait pas être utile mais ça mange pas de pain de le mettre)

Mais c’est quoi çaaaaa… Je peux même plus faire un ping de google…mon interface et mes dns sont good!!!

“Up”!

Bon je dois créer une partition data pour l’utilisation de drbd. Sauf que je me sais pas si je peux en créer vu “la tête” de ma table :
Device Boot Start End Blocks Id System
/dev/sda1 1 122 975872 82 Linux swap / Solaris
Partition 1 does not end on cylinder boundary.
/dev/sda2 122 608 3906560 83 Linux
Partition 2 does not end on cylinder boundary.
/dev/sda3 * 608 1306 5601280 83 Linux

Dois-je tout péter et refaire un quelque chose de “propre”?

Suite à MP, je réponds ici à la fois pour me faire corriger si je dis des conneries, et on sait jamais ça pourrait en aider d’autres.

[quote=“Tux”]Donc, je en train de suivre un autre tuto (plus récent :038 )et hors mis le fait qu’on soit différent au niveau de la taille globale de son disque, j’ai l’impression que lors de l’instal, il a alloué une partoch “vide” dans le but de l’utiliser.Sauf que moi…^^
Résultat de mount

root@cluster1:~# mount
/dev/sda3 on / type ext3 (rw,errors=remount-ro)
tmpfs on /lib/init/rw type tmpfs (rw,nosuid,mode=0755)
proc on /proc type proc (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
udev on /dev type tmpfs (rw,mode=0755)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=620)
/dev/sda5 on /usr type ext3 (rw)

résultat de df-h
root@cluster1:~# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda3 6.2G 522M 5.4G 9% /
tmpfs 506M 0 506M 0% /lib/init/rw
udev 501M 132K 501M 1% /dev
tmpfs 506M 0 506M 0% /dev/shm
/dev/sda5 1.9G 251M 1.5G 15% /usr[/quote]
Vu que drbd est justement conçu pour faire un miroir réseau d’une partition, ça me paraît logique de lui dédier une partition non ? La vraie question c’est de savoir quel(s) service(s) tu veux mettre en cluster HA, où est-ce que ce service met ses fichiers (probablement quelque part dans /var) et monter ta partition en fonction.
Concernant le partitionnement en lui-même c’est pas trop mon point fort, j’ai tendance à tout coller sur du LVM et voir au fur et à mesure. Par contre j’ai jamais compris l’utilité de faire un /usr séparé.

Yép, on peux dire que drbd est une sorte de raid1 sur IP. Pour le moment je ne me suis pas encore documenté dessus (HA), le but du jeu pour le moment est de pouvoir répliquer les datas en temps réel sans se préoccuper de la haute dispo (ne criez paaas) il sera mis en place après ( :038 ).
Perso j’utiliserai bien : /dev/sda3, il n’est pas trop “occupé”. sauf que, sauf que…je peux pas “découper” un partie de cette partoch (la faire en primaire ou étendue), a chaque fois que j’essaie de la “découper”, j’ai : Partition 1 is already defined. Delete it before re-adding it. Logique, mais je ne sais pas trop comment faire. Je viens de me renseigner sur LVM, c’est un principe qui m’a l’air d’être relativement souple, je vais approfondir. :dance:
Le /usr permet simplement d’avoir une partoch distinct afin d’y mettre tous les packages que tu installeras.(Pas la peine de mettre une taille de partition trop importante, en règle générale, sa taille n’évolue presque pas).

Il faut distinguer le filesystem (ext* ou autres) de la partition elle-même :

  • fsck pour être certain que tout va bien
  • réduire le filesystem (resize2fs pour de l’ext, en désactivant le journal avant si ext3/ext4) un peu plus petit que la partition que tu envisages
  • supprimer la partition (ça ne supprimera pas tes données) puis la recréer exactement au même bloc de début, mais taille différente
  • refaire un resize2fs pour que le filesystem utilise toute la place disponible
  • réactiver la journalisation du filesystem

La manip avec LVM est sensiblement identique (toujours les resize2fs obligatoires) à une exception près (celle qui fait toujours le plus peur :mrgreen:) : le changement de la taille de la “partition” (volume logique) se fait directement à l’aide des outils LVM. Et l’espace libre que tu rajoutes à tes partitions n’a pas besoin d’être contigu.
Vu que t’es en VM, je suppose que tu utilises un disque virtuel (fichier sur l’hôte) plutôt qu’un disque physique. Auquel cas LVM a encore un avantage supplémentaire : quand tu manques de place il suffit que tu rajoutes un disque virtuel à ta VM, tu le mets dans le volume group LVM et tu peux étendre n’importe quelle partition avec ce nouvel espace libre. :wink:
Sachant que du LVM “de base” (sans dmcrypt ni snapshots ni autres fonctions avancées) ne consomme quasiment rien en ressources, pas de raison de se priver. Bon ok, là faut réinstaller mais on n’a rien sans rien.
Avec du RAID sur ton hôte pour pallier aux pannes disques et drbd sur un LAN dédié ça devrait commencer à tenir la route, après faut attaquer le multi-sites. :mrgreen:

La taille de / dans son ensemble n’est pas censée varier beaucoup, mis à part /home /tmp et /var, donc c’est plutôt eux les points de montage candidats (voire /var/log séparé pour éviter les DoS liés aux logs). T’façons avec LVM la taille des partitions n’a plus beaucoup d’importance (surtout en virtualisé) et cerise sur le gâteau apparemment on peut agrandir (pas diminuer) de l’ext3/4 à chaud (ce qui me fait me demander si la désactivation du journal est bien toujours nécessaire) :

Je dois maintenant mettre à jour les outils de drbd, sauf que quand je claque un “make menuconfig” il me dit : No rule to make target `/usr/src/linux-headers-2.6.32-5-common/scripts/basic/Makefile’. D’accord, sauf que le resultat de umane -a : Linux cluster1 2.6.38-bpo.2-686. C’est quoi la blague? J’ai bien booté sur le nouveau noyau.Qu’est ce que j’ai loupé?

Tu as bien installé les headers correspondant à ta version du noyau ? linux-headers-$(uname -r)

Cela dit, tu es obligé de compiler ? Le module est dans ton kernel 2.6.38 et les outils sont dispos dans Squeeze, testing et unstable : packages.debian.org/search?suite … words=drbd donc tu peux choisir facilement quelle version te convient le mieux.

Dans ce cas, pourquoi est ce que j’ai ce ****** de message : DRBD module version: 8.3.9 userland version: 8.3.7 you should upgrade your drbd tools! ?
J’ai ce resultat quand je fais un make menuconfig

Comme je te disais, ces outils sont dispos à la fois dans stable / testing et unstable donc tu peux choisir la version qui va bien :

$ apt-cache policy drbd8-utils drbd8-utils: Installé : (aucun) Candidat : 2:8.3.9-1 Table de version : 2:8.3.9-1 0 992 http://ftp.debian.org/debian/ testing/main amd64 Packages 502 http://ftp.debian.org/debian/ unstable/main amd64 Packages 2:8.3.7-2.1 0 102 http://ftp.debian.org/debian/ stable/main amd64 Packages
Avec ton kernel 2.6.38 le message est clair : le module drbd est en version 8.3.9 donc il te faut la même version des outils (qui se trouve être en testing en ce moment). Pas besoin de compiler quoi que ce soit. :wink:
Attention toutefois avant de commencer à jouer avec ton sources.list, si tu inclus testing ou unstable il va te falloir un fichier preferences (cf. section Trucs & Astuces le sujet sur le sources.list) pour éviter d’upgrader toute ta machine.

Ça veux donc dire que j’ai passé une bonne partie de la journée à me prendre la tête pour rien… :doh:
Donc si je comprend bien, le résultat de apt-cache policy drbd8-utils ne permettra de "mettre à jour mon sources.list?

drbd8-utils:
Installed: 2:8.3.7-2.1
Candidate: 2:8.3.7-2.1
Version table:
*** 2:8.3.7-2.1 0
500 ftp://debian.advalem.net/debian/ squeeze/main i386 Packages
100 /var/lib/dpkg/status

Oui oui le message est plus que clair mais je me voyait pas comment le mettre a jour…
Pourrais-tu en dire un peux plus sur la petite subtilité que tu as énoncé quand tu as parlé de sources.list, “testing ou unstable il va te falloir un fichier preferences”(ne pas privilégier un sources.list plus qu’un autre? Dans ce cas, il est possible de lui dire, tient c’est dans lui que je tape pour update, et celui-ci pour quelque chose d’autre…)

Le résultat de cette commande te permet de voir les versions disponibles pour ce paquet. Si la version dont tu as besoin n’est pas dedans, effectivement soit tu compiles (toujours assez galère) soit tu prends ce qu’il te faut dans un autre dépôt.

Le fichier /etc/apt/sources.list c’est là où tu indiques tous les dépôts que tu veux utiliser.
Pour le moment tu n’as que Squeeze et les backports donc tu n’as pas encore accès aux autres versions de drbd8-utils. Pour cela il te faut rajouter au moins testing.
Mais si tu rajoutes testing sans prendre de précautions, au prochain apt-get update / apt-get upgrade il va vouloir te passer tous tes paquets en testing. Pour éviter cela il te faut un fichier /etc/apt/preferences qui rabaisse la priorité de testing.
Pour plus de détails : sources-list-au-carre-ou-minimaliste-t5659.html
Pour encore plus de détails :

Une fois que tu auras lu et compris tout ça, il te faut :

  • un sources.list contenant squeeze (+ security et updates), backports et testing
  • un preferences qui met par exemple squeeze à 990 et testing à 500 pour rester globalement en squeeze
  • apt-get update
  • apt-get -t testing install drbd8-utils

Bonne lecture. :wink:

ubunteros.tuxfamily.org/spip.php?article177

C’est dinguuuue je ne pensais pas que c’était “gollé” comme ça. haaaa je kiiiif, allé j’y r’tourne!! :119

Une question ,une questiiioon… :dance:
Je n’est pas trop compris l’histoire des dépendances. Le fait de faire attention aux dépendances, signifie qu’il faut faire gaff aux priorités que tu as soigneusement mis dans ton fichier de conf? Pour ne pas faire une mise à niveau de tous les paquets, ex: Testing à Sid?

Les dépendances ça se passe entre paquets : un paquet peut rarement fonctionner tout seul, il a besoin de fonctionnalités fournies par d’autres paquets.

Exemple qui te concerne :

$ apt-cache show drbd8-utils Package: drbd8-utils Source: drbd8 Version: 2:8.3.9-1 Installed-Size: 640 Maintainer: Debian DRBD Maintainers <debian-ha-maintainers@lists.alioth.debian.org> Architecture: amd64 Replaces: drbd, drbd-utils Provides: drbd-utils Depends: debconf | debconf-2.0, libc6 (>= 2.7) Suggests: heartbeat [...]
Tu noteras la ligne Depends: qui indique que ce paquet a besoin des paquets suivants :

  • soit debconf soit debconf-2.0 sans spécifier de version particulière (le -2.0 ici n’est pas à proprement parler la version du paquet, ça fait partie de son nom)
  • libc6 version >= 2.7

Pour debconf on n’a pas à s’en faire (aucune version spécifique n’est nécessaire), mais par contre on va vérifier libc6 :

$ apt-cache policy libc6 libc6: Installé : 2.13-21 Candidat : 2.13-21 Table de version : 2.13-23 0 502 http://ftp.debian.org/debian/ unstable/main amd64 Packages *** 2.13-21 0 992 http://ftp.debian.org/debian/ testing/main amd64 Packages 100 /var/lib/dpkg/status 2.11.2-10 0 102 http://ftp.debian.org/debian/ stable/main amd64 Packages
La version stable est la 2.11 et des brouettes, c’est bien >= 2.7 donc le paquet drbd8-utils 8.3.9 provenant de testing s’installera sans souci même sur une stable.

Ça c’est pour ce qui se passe “en coulisses”.
En pratique tu vas plutôt faire une simulation (option -s de apt-get) et voir les paquets qu’il veut t’installer ou te mettre à jour :

# apt-get -s -t testing install drbd8-utils Lecture des listes de paquets... Fait Construction de l'arbre des dépendances Lecture des informations d'état... Fait Paquets suggérés : heartbeat Les NOUVEAUX paquets suivants seront installés : drbd8-utils 0 mis à jour, 1 nouvellement installés, 0 à enlever et 22 non mis à jour. Inst drbd8-utils (2:8.3.9-1 Debian:testing [amd64]) Conf drbd8-utils (2:8.3.9-1 Debian:testing [amd64])
Si ça posait un problème il te préviendrait à ce stade. Il faut également faire attention aux paquets qu’il voudrait te mettre à jour car à cause de l’option -t testing ils proviendraient de… testing, (ce que tu ne veux probablement pas).
Si tout va bien, tu rappelles ta commande en enlevant l’option de simulation -s (et si ça allait pas faudrait trouver une autre solution :033).