單獨(dú)的使用Samba掛載gluster volume并不能實(shí)現(xiàn)High Availability,有了CTDB就可以解決這個(gè)問題了.
成都創(chuàng)新互聯(lián)基于成都重慶香港及美國(guó)等地區(qū)分布式IDC機(jī)房數(shù)據(jù)中心構(gòu)建的電信大帶寬,聯(lián)通大帶寬,移動(dòng)大帶寬,多線BGP大帶寬租用,是為眾多客戶提供專業(yè)電信內(nèi)江機(jī)房報(bào)價(jià),主機(jī)托管價(jià)格性價(jià)比高,為金融證券行業(yè)服務(wù)器托管,ai人工智能服務(wù)器托管提供bgp線路100M獨(dú)享,G口帶寬及機(jī)柜租用的專業(yè)成都idc公司。1 準(zhǔn)備環(huán)境
我已經(jīng)提前準(zhǔn)備好了一個(gè)gluster環(huán)境,創(chuàng)建好了一個(gè)volume repvol,并且此volume已經(jīng)配置為可使用samba client掛載,有關(guān)詳細(xì)配置請(qǐng)參考我前面的博文。
[root@node02 /]# gluster pool list UUID Hostname State e967c77f-ff39-4927-9645-606294d42751 node01.lab.example.com Connected 98ef6fd9-9fa1-4005-b8ec-5480d6c04f46 localhost Connected
[root@node02 /]# gluster volume list repvol
[root@node02 ~]# smbclient -L node01.lab.example.com -U%
Domain=[SAMBA] OS=[Windows 6.1] Server=[Samba 4.4.4]
Sharename Type Comment
--------- ---- -------
print$ Disk Printer Drivers
gluster-repvol Disk For samba share of volume repvol
IPC$ IPC IPC Service (Samba 4.4.4)
Domain=[SAMBA] OS=[Windows 6.1] Server=[Samba 4.4.4]
Server Comment
--------- -------
Workgroup Master
--------- -------
[root@node02 mnt]# mount -t cifs -o username=smbuser,password=redhat //node01.lab.example.com/gluster-repvol /mnt/samba-test/
[root@node02 /]# df -h | grep samba //node01.lab.example.com/gluster-repvol 2.0G 33M 2.0G 2% /mnt/samba-test
從上面可以看到,我這里有兩個(gè)gluster server,依次為
192.168.133.144 node01.lab.example.com
192.168.133.149 node02.lab.example.com
而掛載的時(shí)候,我使用的是//node01.lab.example.com/gluster-repvol,這樣有一個(gè)問題,雖然我這里的gluster volume repvol是一個(gè)2副本的復(fù)制卷,但一旦node01.lab.example.com出現(xiàn)故障,雖然node02.lab.example.com上還保留一份數(shù)據(jù)在,但是卻不能直接被client使用,不能夠?qū)崿F(xiàn)自動(dòng)切換。
2 在兩臺(tái)gluster server上安裝配置ctdb
2.1使用yum安裝ctdb
[root@node01 ~]# yum install -y ctdb
為ctdb放開防火墻限制
[root@node01 ~]# firewall-cmd --add-port=4379/tcp
2.2更新volume設(shè)置
[root@node01 ~]# gluster volume stop repvol [root@node01 post]# cd /var/lib/glusterd/hooks/1/start/post [root@node01 post]# vi S29CTDBsetup.sh
META="all" 修改前
META="ctdbmeta" 修改后
2.3更新Samba配置
編輯/etc/samba/smb.conf文件,并在[global]選項(xiàng)下添加 clustering=yes
[root@node01 post]# cat /etc/samba/smb.conf ... [global] clustering = yes ....
2.4start volume,此時(shí)會(huì)發(fā)現(xiàn)volume 會(huì)自動(dòng)掛載到server的/gluster/lock 下
[root@node01 post]# gluster volume start repvol volume start: repvol: success
[root@node01 post]# df -h | grep repvol node01.lab.example.com:/repvol.tcp 2.0G 33M 2.0G 2% /gluster/lock
2.5添加/etc/ctdb/nodes 和 /etc/ctdb/public_address文件
[root@node01 post]# vi /etc/ctdb/nodes 192.168.133.144 192.168.133.149
###這里的ip為gluster server節(jié)點(diǎn)的ip
[root@node01 post]# vi /etc/ctdb/public_addresses 192.168.133.100/24 ens33
###這里的ip是浮動(dòng)ip, ens33為interface name
2.6啟動(dòng)并驗(yàn)證ctdb service
[root@node01 post]# systemctl start ctdb
[root@node01 post]# ctdb pnn PNN:0
[root@node01 post]# ctdb ping -n all response from 0 time=0.000049 sec (2 clients) response from 1 time=0.008014 sec (1 clients)
[root@node01 post]# ctdb status Number of nodes:2 pnn:0 192.168.133.144 OK (THIS NODE) pnn:1 192.168.133.149 OK Generation:2009096591 Size:2 hash:0 lmaster:0 hash:1 lmaster:1 Recovery mode:RECOVERY (1) Recovery master:1 [root@node01 post]# ctdb ip Public IPs on node 0 192.168.133.100 0
[root@node01 post]# ctdb ip info 192.168.133.100 Public IPs on node 0 192.168.133.100 0
2.7使用浮動(dòng)ip掛載gluster volume
[root@node02 post]# mount -t cifs -o username=smbuser,password=redhat //192.168.133.100/gluster-repvol /mnt/samba-test/
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)建站www.cdcxhl.com,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。