中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

搭建 GFS 分布式文件系統-----實操

發布時間:2020-06-27 20:47:22 來源:網絡 閱讀:1631 作者:wx5d3faba330584 欄目:云計算

一、GlusterFS 簡介:

GFS是一個可擴展的分布式文件系統,用于大型的、分布式的、對大量數據進行訪問的應用。它運行于廉價的普通硬件上,并提供容錯功能。它可以給大量的用戶提供總體性能較高的服務。

開源的分布式文件系統;
由存儲服務器、客戶端以及 NFS/Samba 存儲網關組成;
(1)GlusterFS 特點:

擴展性和高性能;
高可用性;
全局統一命名空間;
彈性卷管理;
基于標準協議
(2)模塊化堆棧架構:

1、模塊化,堆棧式結構;
2、通過對模塊的組合,實現復雜的功能;
搭建 GFS 分布式文件系統-----實操
3、GlusterFS 工作流程:
搭建 GFS 分布式文件系統-----實操
4、彈性 HASH 算法:

(1)通過 HASH 算法得到一個32位的整數;
(2)劃分為 N 個連接的子空間,每個空間對應一個 Brick;
(3)彈性 HASH 算法的優點:
(4)保證數據平均分布在每一個 Brick 中;
(5)解決了對元數據服務器的依賴,進而解決了單點故障以及服訪問瓶頸。

二、GlusterFS 的卷類型:

(1)分布式卷:

(1)沒有對文件進行分塊處理;
(2)通過擴展文件屬性保存 HASH值;
(3)支持的底層文件系統有 ext3 、ext4 、ZFS 、XFS等
特點:

(1)文件分布在不同的服務器,不具備冗余性;
(2)更容易和廉價地擴展卷的大小;
(3)單點故障會造成數據丟失;
(4)依賴底層的數據保護。
(2)條帶卷:

(1)根據偏移量將文件分為 N 塊(N個條帶節點),輪詢的存儲在每個 Brick (2)Server 節點;
(3)存儲大文件時,性能尤為突出;
(4)不具備冗余性,類似 raid0
特點:

(1)數據被分割成更小塊分布到塊服務器群中的不同條帶區;
(2)分布減少了負載且更小的文件加速了存取的速度;
(3)沒有數據冗余
(3)復制卷:

(1)同一個文件保存一份或多分副本;
(2)復制模式因為要保存副本,所以磁盤利用率較低;
(3)多個節點上的存儲空間不一致,那么將安裝木桶效應取最低節點的容量(4)作為該卷的總容量
特點:

(1)卷中所有的服務器均保存一個完整的副本;
(2)卷的副本數量可由客戶創建的時候決定;
(3)至少由兩個塊服務器或更多服務器;
(4)具備容災性。
(4)分布式條帶卷:

(1)兼顧分布式和條帶卷的功能;
(2)主要用于大文件訪問處理;
(3)至少最少需要 4 臺服務器。
(5)分布式復制卷:

(1)兼顧分布式卷和復制卷的功能;
(2)用于需要冗余的情況下

三、GlusterFS 實操走起:

五臺虛擬機:一臺作為客戶端,另外四臺作為節點,每個虛擬機新增4塊磁盤(每個磁盤20G)
搭建 GFS 分布式文件系統-----實操
1、先將各個磁盤分區、格式化、掛載好,可以使用以下腳本

vim disk.sh //掛載磁盤腳本,一鍵操作

#! /bin/bash
echo "the disks exist list:"
fdisk -l |grep '磁盤 /dev/sd[a-z]'
echo "=================================================="
PS3="chose which disk you want to create:"
select VAR in `ls /dev/sd*|grep -o 'sd[b-z]'|uniq` quit
do
    case $VAR in
    sda)
        fdisk -l /dev/sda
        break ;;
    sd[b-z])
        #create partitions
        echo "n
                p

                w"  | fdisk /dev/$VAR

        #make filesystem
        mkfs.xfs -i size=512 /dev/${VAR}"1" &> /dev/null
    #mount the system
        mkdir -p /data/${VAR}"1" &> /dev/null
        echo -e "/dev/${VAR}"1" /data/${VAR}"1" xfs defaults 0 0\n" >> /etc/fstab
        mount -a &> /dev/null
        break ;;
    quit)
        break;;
    *)
        echo "wrong disk,please check again";;
    esac
done

2、在四臺 node 節點上的操作
(1)修改主機名(node1、node2、node3、node4),并關閉防火墻等。

(2)編輯 hosts 文件(當用戶在瀏覽器中輸入一個需要登錄的網址時,系統會首先自動從Hosts文件中尋找對應的IP地址,一旦找到,系統會立即打開對應網頁,如果沒有找到,則系統會再將網址提交DNS域名解析服務器進行IP地址的解析。),添加主機名和 IP地址

vim   /etc/hosts

192.168.220.172 node1
192.168.220.131 node2
192.168.220.140 node3
192.168.220.136 node4

(3)編寫 yum 源的庫,安裝 GlusterFS :

cd /opt/
mkdir /abc
mount.cifs //192.168.10.157/MHA /abc   //遠程掛載到本地
cd /etc/yum.repos.d/
mkdir bak  
mv Cent* bak/   //將原來的源都移到新建的文件夾中

vim GLFS.repo   //新建一個源
[GLFS]
name=glfs
baseurl=file:///abc/gfsrepo
gpgcheck=0
enabled=1

(4)安裝軟件包

yum -y install glusterfs glusterfs-server glusterfs-fuse glusterfs-rdma

(5)開啟服務

systemctl start glusterd
systemctl status glusterd

(6)查看狀態
搭建 GFS 分布式文件系統-----實操
3、時間同步,每臺節點都需要操作

ntpdate ntp1.aliyun.com   //時間同步

添加存儲信任池,只要在一臺主機上添加其他三臺節點即可:
這是在 node1 節點上的操作:

gluster peer probe node2
gluster peer probe node3
gluster peer probe node4

gluster peer status //查看所有節點狀態

搭建 GFS 分布式文件系統-----實操

四、創建各種卷

1、建分布式卷

gluster volume create dis-vol node1:/data/sdb1 node2:/data/sdb1 force
  //利用node1和node2上的兩塊磁盤創建;dis-vol為磁盤名;force表示強制

gluster volume start dis-vol    //啟動
gluster volume info dis-vol     //查看狀態

2、建條帶卷

gluster volume create stripe-vol stripe 2 node1:/data/sdc1 node2:/data/sdc1 force

gluster volume start stripe-vol
gluster volume info stripe-vol

3、建復制卷

gluster volume create rep-vol replica 2 node3:/data/sdb1 node4:/data/sdb1 force

gluster volume start rep-vol
gluster volume info rep-vol

4、分布式條帶卷

gluster volume create dis-stripe stripe 2 node1:/data/sdd1 node2:/data/sdd1 node3:/data/sdd1 node4:/data/sdd1 force

gluster volume start dis-stripe
gluster volume info dis-stripe

5、分布式復制卷

gluster volume create dis-rep replica 2 node1:/data/sde1 node2:/data/sde1 node3:/data/sde1 node4:/data/sde1 force

gluster volume start dis-rep
gluster volume info dis-rep

6、客戶端配置
(1)關閉防火墻

(2)配置安裝 GFS 源:

cd /opt/
mkdir /abc
mount.cifs //192.168.10.157/MHA /abc   //遠程掛載到本地
cd /etc/yum.repos.d/

vim GLFS.repo   //新建一個源
[GLFS]
name=glfs
baseurl=file:///abc/gfsrepo
gpgcheck=0
enabled=1

(3)安裝軟件包

yum -y install glusterfs glusterfs-fuse  

(4)修改 hosts文件:

vim /etc/hosts

192.168.220.172 node1
192.168.220.131 node2
192.168.220.140 node3
192.168.220.136 node4

(5)創建臨時掛載點:

mkdir -p /text/dis   //遞歸創建一個掛載點
mount.glusterfs node1:dis-vol /text/dis/         //掛載分布式卷

mkdir /text/strip
mount.glusterfs node1:stripe-vol /text/strip/     //掛載條帶卷

mkdir /text/rep
mount.glusterfs node3:rep-vol /text/rep/          //掛載復制卷

mkdir /text/dis-str
mount.glusterfs node2:dis-stripe /text/dis-str/    //掛載分布式條帶卷

mkdir /text/dis-rep
mount.glusterfs node4:dis-rep /text/dis-rep/        //掛載分布式復制卷

(6)df-hT:查看掛載信息:
搭建 GFS 分布式文件系統-----實操

五、測試各個卷

(1)創建 5 個40M 的文件:

dd if=/dev/zero of=/demo1.log bs=1M count=40
dd if=/dev/zero of=/demo2.log bs=1M count=40
dd if=/dev/zero of=/demo3.log bs=1M count=40
dd if=/dev/zero of=/demo4.log bs=1M count=40
dd if=/dev/zero of=/demo5.log bs=1M count=40

(2)創建的 5 個文件分別復制到不同的卷上:

cp /demo* /text/dis
cp /demo* /text/strip
cp /demo* /text/rep/
cp /demo* /text/dis-str
cp /demo* /text/dis-rep

(3)查看各個卷是如何分布的:ll -h /data/sdb1
1、分布式卷:
可以看出都是每個文件都是完整的。
搭建 GFS 分布式文件系統-----實操
搭建 GFS 分布式文件系統-----實操
2、條帶卷:
所有文件都被分成各一半進行分布存儲。
搭建 GFS 分布式文件系統-----實操
搭建 GFS 分布式文件系統-----實操
3、復制卷:
所有文件都被完整復制一遍,進行存儲。
搭建 GFS 分布式文件系統-----實操
搭建 GFS 分布式文件系統-----實操
4、分布式條帶卷:
搭建 GFS 分布式文件系統-----實操
搭建 GFS 分布式文件系統-----實操
搭建 GFS 分布式文件系統-----實操
搭建 GFS 分布式文件系統-----實操
5、分布式復制卷:搭建 GFS 分布式文件系統-----實操
搭建 GFS 分布式文件系統-----實操
搭建 GFS 分布式文件系統-----實操
搭建 GFS 分布式文件系統-----實操

(4)故障破壞測試:
現在關閉第二臺節點服務器,模擬宕機;再在客戶機上查看各個卷的情況:
搭建 GFS 分布式文件系統-----實操
總結:

1、分布式卷所有文件都在;
2、復制卷所有文件都在;
3、掛載分布式條帶卷只有 demo5.log 一個文件了,丟失了4個;
4、掛載分布式復制卷所有文件都在;
5、條帶卷所有文件都丟失了。
(5)其他操作:

1、刪除卷(先停止,再刪除):

gluster volume stop 卷名
gluster volume delete 卷名

2、黑白名單設置:

gluster volume set 卷名 auth.reject 192.168.220.100     //拒絕某臺主機掛載

gluster volume set 卷名 auth.allow 192.168.220.100      //允許某臺主機掛載
向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

读书| 元江| 包头市| 德格县| 邛崃市| 青冈县| 新郑市| 河南省| 沭阳县| 饶阳县| 中西区| 西林县| 余江县| 谢通门县| 亳州市| 习水县| 崇文区| 吉水县| 灵武市| 乐安县| 新丰县| 祁连县| 泊头市| 鹿邑县| 新沂市| 阳春市| 清涧县| 黔东| 乌海市| 临西县| 宁化县| 柏乡县| 公主岭市| 新余市| 哈尔滨市| 乐清市| 七台河市| 健康| 墨竹工卡县| 台安县| 桃源县|