在Gluster上使用CTDB和Samba

  


,,,,,,,单独的使用Samba挂载gluster体积并不能实现高可用性,有了CTDB就可以解决这个问题了。


1准备环境

我已经提前准备好了一个gluster环境,创建好了一个体积repvol,并且此卷已经配置为可使用samba端挂载,有关详细配置请参考我前面的博文。

[root@node02 /] #, gluster  pool 列表   UUID ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, Hostname ,,,,,,,,,,,,,,,的状态   e967c77f - ff39 - 4927 - 9645 - 606294 - d42751 ,,, node01.lab.example.com , Connected    98 ef6fd9 - 9 - fa1 - 4005 b8ec - 5480 d6c04f46 ,,, localhost ,,,,,,,,,,,,,,连接 [root@node02 /] #, gluster  volume 列表   repvol
 [root@node02  mnt] #, mount  -t  cifs  -o 用户名=smbuser密码=redhat //node01.lab.example.com/gluster-repvol /mnt/samba-test/
[root@node02 /] #, df  -h  | grep  samba//node01.lab.example.com/gluster-repvol , 2.0 g ,, 33 m , 2.0 g ,,, 2%/mnt/samba-test

从上面可以看的到,我这里有两个gluster服务器,依次为

192.168.133.144 node01.lab.example.com
192.168.133.149 node02.lab.example.com

而挂载的时候,我使用的是//node01.lab.example.com/gluster-repvol,这样有一个问题,虽然我这里的gluster repvol体积是一个2副本的复制卷,但一旦node01.lab.example.com出现故障,虽然node02.lab.example.com上还保留一份数据在,但是却不能直接被客户端使用,不能够实现自动切换。


2在两台gluster服务器上安装配置ctdb

2.1使用yum安装ctdb

[root@node01  ~] #, yum  install  -y  ctdb

为ctdb放开防火墙限制

[root@node01  ~] #, firewall-cmd ——添加一个端口=4379/tcp

2.2更新卷设置

[root@node01  ~] #, gluster  volume  stop  repvol   (root@node01  post) #, cd /var/lib/glusterd/钩/1//后开始   (root@node01  post) #, vi  S29CTDBsetup.sh

元=八小?,修改前
元=癱tdbmeta”,修改后

2.3更新Samba配置

编辑/etc/Samba/smb。参看文件,并在全球选项下添加集群=yes

[root@node01  post] #, cat /etc/samba/conf中的   …   (全球),,,,,,,,clustering =,是的   …


2.4开始卷,此时会发现体积会自动挂载到服务器的/gluster/锁下

[root@node01  post] #, gluster  volume  start  repvol   volume 开始:,repvol:成功 [root@node01  post] #, df  -h  | grep  repvol   node01.lab.example.com/repvol.tcp , 2.0 g ,, 33 m , 2.0 g ,,, 2%/gluster/锁


2.5添加/etc/ctdb/节点和/etc/ctdb/public_address文件

[root@node01  post] #, vi /etc/ctdb/nodes    192.168.133.144   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null

在Gluster上使用CTDB和Samba