Cluster Samba · 1 min read · Jan 29, 2026

Configurando Um Cluster Active/Active Samba CTDB Usando GFS & DRBD (CentOS 5.5) - Página 3

Este artigo explica como configurar um Cluster Active/Active Samba CTDB, usando GFS e DRBD. Preparado por Rafael Marangoni, da equipe Servidor Linux da BRLink.

6. Configurando Samba

A configuração do samba é muito comum. Neste artigo, não cobrimos como configurar o samba. Apenas explicamos uma configuração muito simples.
Faça isso em ambos os nós:

Primeiro, precisamos configurar /etc/samba/smb.conf em ambos os nós:

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 = compartilhamento público
path = /clusterdata/public
public = yes
writeable = yes
only guest = yes 

Devemos criar os diretórios usados pelo samba (apenas em um nó):

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

Adicionando root no samba, apenas em um nó:

smbpasswd -a root

7. Configurando CTDB

O processo para instalar o ctdb é muito simples. Faça isso em ambos os nós:

Primeiro, precisamos baixá-lo:

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

Então podemos compilá-lo:

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

Criando os scripts de inicialização e links de configuração para /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

Em seguida, precisamos configurar /etc/sysconfig/ctdb em ambos os nós:

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" 

Agora, configure /etc/ctdb/public_addresses em ambos os nós:

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

Então, configure /etc/ctdb/nodes em ambos os nós:

vi /etc/ctdb/nodes 
10.0.0.181
10.0.0.182

Então, configure /etc/ctdb/events.d/11.route em ambos os nós:

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

. /etc/ctdb/functions
loadconfig ctdb

cmd="$1"
shift

case $cmd in
    takeip)
         # ignoramos erros disso, pois a rota pode já estar ativa quando estamos pegando
         # um 2º IP nesta interface
         /sbin/ip route add $CTDB_PUBLIC_NETWORK via $CTDB_PUBLIC_GATEWAY dev $1 2> /dev/null
         ;;
esac

exit 0

Defina a permissão +x no script:

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

Finalmente, precisamos iniciar os serviços:

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

Referências

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

Receba novas postagens na sua caixa de entrada

Sem spam. Cancele a assinatura a qualquer momento.