Ubuntu GlusterFS 分布式文件系統(tǒng)安裝與配置

一 搭建 GlusterFS 集群

(1). 格式化磁盤

fdisk /dev/sdb
命令行提示下輸入【m】
輸入命令【n】添加新分區(qū)
輸入命令【p】創(chuàng)建主分區(qū)
輸入【回車】,選擇默認大小,這樣不浪費空間
輸入【回車】,選擇默認的start cylinder
輸入【w】,保持修改

(2). 添加gluster源

cat >>/etc/apt/sources.list <<EOF
deb http://ppa.launchpad.net/gluster/glusterfs-3.7/ubuntu trusty main
deb-src http://ppa.launchpad.net/gluster/glusterfs-3.7/ubuntu trusty main
EOF

(3). 安裝glusterfs

apt-get install xfsprogs glusterfs-server -y
mkfs.xfs -i size=512 /dev/sdb1
mkdir -p /glusterfs/brick  #掛載點
echo '/dev/sdb1 /glusterfs/brick xfs defaults 1 2' >> /etc/fstab #設置自動掛載
mount -a && mount
#gluster volume set all cluster.op-version 30710

(4). 配置peer(加入集群節(jié)點到主機)

gluster peer probe 172.18.17.168
gluster peer status

(5). 在節(jié)點表示集群搭建成功(不管主節(jié)點還是從節(jié)點)

gluster peer status

Number of Peers: 1

Hostname: 172.18.17.168
Uuid: 39c8cda9-2275-4896-9bf1-106dc7e88304
State: Peer in Cluster (Connected)

(6). 創(chuàng)建Volume(rimag_data)

gluster volume create rimag_data replica 2 transport tcp \
172.18.16.80:/glusterfs/brick/rimag_data \
172.18.17.168:/glusterfs/brick/rimag_data 

volume create: rimag_data: success: please start the volume to access data


gluster volume info

Volume Name: rimag_data
Type: Replicate
Volume ID: cc211989-9da7-4481-8a15-092712445ec9
Status: Started
Number of Bricks: 1 x 2 = 2
Transport-type: tcp
Bricks:
Brick1: 172.18.16.80:/glusterfs/brick/rimag_data
Brick2: 172.18.17.168:/glusterfs/brick/rimag_data
Options Reconfigured:
performance.readdir-ahead: on

(7). 啟動Volume(rimag_data)

gluster volume start rimag_data

volume start: rimag_data: success

二 GlusterFS 客戶端配置

(1). 添加gluster源

cat >>/etc/apt/sources.list <<EOF
deb http://ppa.launchpad.net/gluster/glusterfs-3.7/ubuntu trusty main
deb-src http://ppa.launchpad.net/gluster/glusterfs-3.7/ubuntu trusty main
EOF

(2). 安裝glusterfs client

apt-get install glusterfs-client -y

(3).建立掛載目錄:(/mnt/rimag_data)

mkdir /mnt/rimag_data

(4). 掛載gluster卷

mount.glusterfs 172.18.16.80:/rimag_data /mnt/rimag_data

三 docker 使用 GlusterFS Volume

接下來,我們再來看GlusterFS如何作為Docker的存儲。Docker Volume是一種可以將容器以及容器生產(chǎn)的數(shù)據(jù)分享開來的數(shù)據(jù)格式,我們可以使用宿主機的本地存儲作為Volume的提供方,也可以使用Volume Plugin接入許多第三方的存儲。 GitHub就有一個 Docker GlusterFS Volume Plugin ,方便我們將GlusterFS掛載到容器中。具體步驟如下:

(1). 獲取docker-volume-glusterfs

go get github.com/calavera/docker-volume-glusterfs

考慮到搭建golang環(huán)境有一定的復雜性,我們也可以采用golang容器來獲取該應用

(2). 拷貝docker-volume-glusterfs至/usr/bin

cp ./docker-volume-glusterfs /usr/bin
chmod 777 /usr/bin/docker-volume-glusterfs

(3). 聲明gluster服務集群

docker-volume-glusterfs -servers node1:node2

(4). 指定volume

docker run --volume-driver glusterfs --volume rimag_data:/data alpine touch /data/hello

這里的rimag_data即我們在glusterfs集群中創(chuàng)建的volume,但需要事先手動創(chuàng)建

[參考文檔](https://developer.ibm.com/zh/articles/os-cn-glusterfs-docker-volume/)
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

友情鏈接更多精彩內(nèi)容