tjm 搞定glusterfs,去申請歐洲與馬來西亞的分站
gluster 的 server 的管理方式
使用gluster這種分散式系統,為的就是希望有個「穩定安全」的環境,所以通常會使用replication的機制 。
gluster的replication 有兩種,一種就是LAN裡面用的「同步 replication」,另一種就是散佈內容出去的「非同步Georeplication」,前者就是用多個brick(儲存單元)來同步備援。這種機制應該是整個儲存系統的核心。通常一開始建立之後,就會自動運作,直到有kernel更新或者其他硬體錯誤導致的某個brick離線。
離線後,系統會自動修復(3.3版以後就會自動修復),不過修復中的brick資料是錯的,且跟RAID一樣,同時一定還要有正確的brick提供修復。也就是如果是兩台雙備援,就不能兩台同時處於修復狀態。必須等修復的那台修復完成了,另一台才能離線。因此,了解目前修復的狀況怎樣,是非常重要的管理機制。要了解系統修復狀況,只要下:
gluster volume heal Volume_name info
就可以知道,一定要裡面都沒有entries了才算修復完成。當然,短期內因為系統使用中也會有幾個檔案出問題等待修復,但等一下應該就會消失。
如果要分散資料到slave 主機去,就要用 非同步Georeplication 。這種功能也很容易設定:
Slave端要先把
http://download.gluster.org/pub/gluster/glusterfs/3.4/3.4.0/EPEL.repo/glusterfs-epel.repo
放到 /etc/yum.repos.d
裝
yum install glusterfs-cli glusterfs-fuse glusterfs-server glusterfs-geo-replication glusterfs-libs
啟動 glusterd 與 glusterfsd
然後參考一下:
http://www.gluster.org/community/documentation/index.php/HowTo:geo-replication
即可。
ssh 免密碼搞定以後,
gluster volume geo-replication Volume_SYNC slave_server:/home start
即可啟動
gluster volume geo-replication Volume_SYNC slave_server:/home status
即可了解系統狀態
喔!對了,如果有兩台以上互相備援的master機器,應該會希望每一台master都可以replication 給slave吧?
這時請把 /var/lib/glusterd/geo-replication/*.pem 複製到其他台master機器去,這樣就可以同步執行 georeplication 了
gluster 的 server 端的處理方法
其實網路上已經很多說明,似乎也不用紀錄太多,只要把網路上沒說的記一下即可:
參考一下底下:
http://www.gluster.org/community/documentation/index.php/Getting_started_overview
輕鬆就搞定。
這個一定要聽一下,因為 xfs 比較適合gluster ,block size要512就能避免遭遇麻煩的問題:
mkfs.xfs -i size=512 /dev/sdb1
防火牆我是這樣設定:
-A INPUT -m state --state NEW -m tcp -p tcp --dport 2049 -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 54539 -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 38003 -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 616 -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 24007:24047 -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 49152:49162 -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 24009:24019 -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 111 -j ACCEPT -A INPUT -m state --state NEW -m udp -p udp --dport 111 -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 38465:38470 -j ACCEPT
事實上我根本就是把一整個網路卡給gluster用
-A INPUT -i eth3 -j ACCEPT
這樣就可以開始用了。
真正的問題是遭遇當機時的處理方法,這個另一篇討論
gluster 的 client 端處理方法
yum install glusterfs glusterfs-fuse
mount -t glusterfs host:/XXX_SYNC /DIST
20140119技術組會議記錄
ksf 安裝新主機
tjm安裝新主機
20140112技術組會議記錄
tjm kernel 更新
20140105技術組會紀錄
tjm 找歐洲分站
20131229技術組會議
tjy 新增一個備份硬碟、bible的full backup 很大
tjm 討論手機網站問題
20131222技術組會議
tjm 處理聖經公會的系統
20131215技術組技術會議記錄
tjm 更新kernel
tjy 處理機房天花板
joshua 瞭解OpenStack OpenNebula Eucalyptus Nimbus