Cluster Samba · 2 min read · Jan 29, 2026

Configuration d'un cluster Samba CTDB Active/Active utilisant GFS & DRBD (CentOS 5.5) - Page 3

Cet article explique comment configurer un cluster Samba CTDB Active/Active, en utilisant GFS et DRBD. Préparé par Rafael Marangoni, de l’équipe Linux de BRLink.

6. Configuration de Samba

La configuration de samba est très courante. Dans cet article, nous ne couvrons pas comment configurer samba. Nous expliquons seulement une configuration très simple.
Faites-le sur les deux nœuds :

Tout d’abord, nous devons configurer /etc/samba/smb.conf sur les deux nœuds :

vi /etc/samba/smb.conf 
[global]

clustering = yes
idmap backend = tdb2
private dir=/clusterdata/ctdb
fileid:mapping = fsname
use mmap = no
nt acl support = yes
ea support = yes

[public]
comment = partage public
path = /clusterdata/public
public = yes
writeable = yes
only guest = yes 

Nous devons créer les répertoires utilisés par samba (uniquement sur un nœud) :

mkdir /clusterdata/ctdb
mkdir /clusterdata/public
chmod 777 /clusterdata/public

Ajout de root sur samba, uniquement sur un nœud :

smbpasswd -a root

7. Configuration de CTDB

Le processus d’installation de ctdb est très simple. Faites-le sur les deux nœuds :

Tout d’abord, nous devons le télécharger :

cd /usr/src
rsync -avz samba.org::ftp/unpacked/ctdb .
cd ctdb/

Ensuite, nous pouvons le compiler :

cd /usr/src/ctdb/
./autogen.sh
./configure
make
make install

Création des scripts d’initialisation et des liens de configuration vers /etc :

cp config/ctdb.sysconfig /etc/sysconfig/ctdb
cp config/ctdb.init /etc/rc.d/init.d/ctdb
chmod +x /etc/init.d/ctdb

ln -s /usr/local/etc/ctdb/ /etc/ctdb
ln -s /usr/local/bin/ctdb /usr/bin/ctdb
ln -s /usr/local/sbin/ctdbd /usr/sbin/ctdbd

Ensuite, nous devons configurer /etc/sysconfig/ctdb sur les deux nœuds :

vi /etc/sysconfig/ctdb 
CTDB_RECOVERY_LOCK="/dadoscluster/ctdb/storage"
CTDB_PUBLIC_INTERFACE=eth0
CTDB_PUBLIC_ADDRESSES=/etc/ctdb/public_addresses
CTDB_MANAGES_SAMBA=yes
ulimit -n 10000
CTDB_NODES=/etc/ctdb/nodes
CTDB_LOGFILE=/var/log/log.ctdb
CTDB_DEBUGLEVEL=2
CTDB_PUBLIC_NETWORK="10.0.0.0/24"
CTDB_PUBLIC_GATEWAY="10.0.0.9" 

Maintenant, configurez /etc/ctdb/public_addresses sur les deux nœuds :

vi /etc/ctdb/public_addresses 
10.0.0.183/24
10.0.0.184/24

Ensuite, configurez /etc/ctdb/nodes sur les deux nœuds :

vi /etc/ctdb/nodes 
10.0.0.181
10.0.0.182

Ensuite, configurez /etc/ctdb/events.d/11.route sur les deux nœuds :

vi /etc/ctdb/events.d/11.route 
#!/bin/sh

. /etc/ctdb/functions
loadconfig ctdb

cmd="$1"
shift

case $cmd in
    takeip)
         # nous ignorons les erreurs de cela, car la route pourrait déjà être active lorsque nous prenons
         # un 2ème IP sur cette interface
         /sbin/ip route add $CTDB_PUBLIC_NETWORK via $CTDB_PUBLIC_GATEWAY dev $1 2> /dev/null
         ;;
esac

exit 0

Définir les permissions +x sur le script :

 chmod +x /etc/ctdb/events.d/11.route 

Enfin, nous devons activer les services :

/etc/init.d/ctdb start
/etc/init.d/smb start
chkconfig –level 35 ctdb on
chkconfig –level 35 smb on

Références

CTDB: http://ctdb.samba.org/
CTDB: http://wiki.samba.org/index.php/CTDB_Setup#RedHat_GFS_filesystem
Howto: http://jun.homeunix.com/skills/server/GFS.DRBD8.CTDB.SAMBA.CentOS.txt

Share: X/Twitter LinkedIn

Recevez de nouveaux articles dans votre boîte de réception.

Aucun spam. Désabonnez-vous à tout moment.