Outils pour utilisateurs

Outils du site


cluster:samba

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
cluster:samba [2020/01/05 18:40]
etienne
cluster:samba [2020/01/05 20:18] (Version actuelle)
etienne
Ligne 166: Ligne 166:
 # systemctl restart ocfs2 # systemctl restart ocfs2
 </code> </code>
 +
 +À ce stade vous pouvez vérifier le fonctionnement avec ''o2cluster -r'' sur chaque serveur. Cette commande indique le système de cluster en fonction sur votre serveur et vous devriez avoir quelque chose comme ''o2cb,scluster,local''.
  
 Et création du système de fichier (sur un serveur) : Et création du système de fichier (sur un serveur) :
Ligne 171: Ligne 173:
 <code bash> <code bash>
 # mkfs.ocfs2 --cluster-stack=o2cb --fs-feature-level=max-features  -L sdata --cluster-name=scluster /dev/drbd0  # mkfs.ocfs2 --cluster-stack=o2cb --fs-feature-level=max-features  -L sdata --cluster-name=scluster /dev/drbd0 
 +</code>
 +
 +Finalement, si tout ce passe bien, vous pouvez monter votre système de fichier sur chaque serveur :
 +
 +<code bash>
 +# mount -t ocfs2 /dev/drbd0 /srv/scluster
 +</code>
 +
 +Dès lors vous pouvez vous amuser à créer un fichier sur un serveur et le supprimer sur l'autre.
 +
 +L'inscription dans le fichier ''/etc/fstab'' peut être faite, en indiquant bien à ''systemd'' que ''ocfs2'' doit fonctionner pour le montage :
 +
 +<code bash>
 +/dev/drbd0 /srv/scluster ocfs2 defaults,_netdev,x-systemd.requires=ocfs2.service 0 0
 +</code>
 +
 +Dès lors, si vous redémarrez le système, il reviendra avec votre système de fichier ''ocfs2'' monté et fonctionnel.
 +
 +===== CTDB =====
 +
 +Après l'installation de CTDB (via le système de paquet de votre distribution), nous pouvons le configurer pour gérer nos adresses. Nous avions décidé 172.20.1.[20|21]/16 comme adresses de services. La première chose à faire est donc l'inscrire dans le fichier ''/etc/ctdb/public_addresses'' en indiquant sur quelle carte réseau les mettre sur les deux serveurs :
 +
 +<code bash>
 +172.20.1.20/16 eth1
 +172.20.1.21/16 eth1
 +<code> 
 +
 +Ensuite il faut indiquer tous les nœuds de notre cluster dans le fichier ''/etc/ctdb/nodes'' :
 +<code bash>
 +10.0.0.10
 +10.0.0.11
 +</code>
 +
 +Il est nécessaire de créer quelques répertoires aussi (du moins sur Debian) : 
 +<code bash>
 +# mkdir -p /var/lib/ctdb/volatile
 +# mkdir -p /var/lib/ctdb/persistent
 +# mkdir -p /var/lib/ctdb/state
 +# mkdir /var/run/ctdb
 +</code>
 +
 +Le problème de ''ctdb'' est son usage des verrous "bsd" via ''fcntl'' alors que le pile ocfs2/o2cb ne  supporte que les verroux posix ''flock''. Se faisant nous ne pouvons pas utiliser le système de détection d'erreurs de ctdb ... cette partie est donc laissée à futures investigations. Actuellement nous ajoutons juste l'addresse de chaque serveur dans le fichier de ''/etc/ctdb/ctdb.conf''
 +
 +Sur S0 :
 +<code bash>
 +node address = 10.0.0.10
 +</code>
 +
 +Sur S1: 
 +<code bash>
 +node address = 10.0.0.11
 +</code>
 +
 +Il est aussi nécessaire, sur chaque serveur, de modifier le fichier de démarrage systemd. En effet, le chemin du fichier contenant le ''PID'' est erroné. Pour ce faire, assurez-vous que le fichier ''/lib/systemd/system/ctdb.service'' contienne :
 +
 +<code bash>
 +ExecStartPre=-/bin/mkdir /var/run/ctdb
 +PIDFile=/var/run/ctdb/ctdbd.pid
 +</code>
 +
 +Il faut indiquer, aussi, de démarrer ctdb après ocfs2. Dans le même fichier :
 +<code bash>
 +After=network-online.target time-sync.target ocfs2.service
 +</code>
 +
 +Et recharger systemd avec ''systemctl daemon-reload''
 +
 +Dès lors, lorsqu'on redémarre le système, ctdb va s'occuper de répartir nos adresses sur nos serveurs. On peut vérifier le bon fonctionnement avec la command adéquate :
 +
 +<code bash>
 +# ctdb status
 +Number of nodes:2
 +pnn:0 10.0.0.10        OK
 +pnn:1 10.0.0.11        OK (THIS NODE)
 +Generation:252638876
 +Size:2
 +hash:0 lmaster:0
 +hash:1 lmaster:1
 +Recovery mode:NORMAL (0)
 +Recovery master:1
 </code> </code>
cluster/samba.1578246032.txt.gz · Dernière modification: 2020/01/05 18:40 de etienne