GFS是一個(gè)可擴(kuò)展的分布式文件系統(tǒng),用于大型的、分布式的、對(duì)大量數(shù)據(jù)進(jìn)行訪問(wèn)的應(yīng)用。它運(yùn)行于廉價(jià)的普通硬件上,并提供容錯(cuò)功能。它可以給大量的用戶提供總體性能較高的服務(wù)。
開源的分布式文件系統(tǒng);
由存儲(chǔ)服務(wù)器、客戶端以及 NFS/Samba 存儲(chǔ)網(wǎng)關(guān)組成;站在用戶的角度思考問(wèn)題,與客戶深入溝通,找到扶綏網(wǎng)站設(shè)計(jì)與扶綏網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗(yàn),讓設(shè)計(jì)與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個(gè)性化、用戶體驗(yàn)好的作品,建站類型包括:網(wǎng)站建設(shè)、成都網(wǎng)站制作、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、空間域名、網(wǎng)絡(luò)空間、企業(yè)郵箱。業(yè)務(wù)覆蓋扶綏地區(qū)。
擴(kuò)展性和高性能;
高可用性;
全局統(tǒng)一命名空間;
彈性卷管理;
基于標(biāo)準(zhǔn)協(xié)議
模塊化,堆棧式的結(jié)構(gòu)
通過(guò)對(duì)模塊的組合,實(shí)現(xiàn)復(fù)雜的功能
通過(guò) HASH 算法得到一個(gè)32位的整數(shù);
劃分為 N 個(gè)連接的子空間,每個(gè)空間對(duì)應(yīng)一個(gè) Brick;
保證數(shù)據(jù)平均分布在每一個(gè) Brick 中;
解決了對(duì)元數(shù)據(jù)服務(wù)器的依賴,進(jìn)而解決了單點(diǎn)故障以及訪問(wèn)瓶頸。
沒(méi)有對(duì)文件進(jìn)行分塊處理;
通過(guò)擴(kuò)展文件屬性保存 HASH值;
支持的底層文件系統(tǒng)有 ext3 、ext4 、ZFS 、XFS等
文件分布在不同的服務(wù)器,不具備冗余性;
更容易和廉價(jià)地?cái)U(kuò)展卷的大小;
單點(diǎn)故障會(huì)造成數(shù)據(jù)丟失;
依賴底層的數(shù)據(jù)保護(hù)。
根據(jù)偏移量將文件分為 N 塊(N個(gè)條帶節(jié)點(diǎn)),輪詢的存儲(chǔ)在每個(gè) Brick Server 節(jié)點(diǎn);
存儲(chǔ)大文件時(shí),性能尤為突出;
不具備冗余性,類似 raid0
數(shù)據(jù)被分割成更小塊分布到塊服務(wù)器群中的不同條帶區(qū);
分布減少了負(fù)載且更小的文件加速了存取的速度;
沒(méi)有數(shù)據(jù)冗余
同一個(gè)文件保存一份或多分副本;
復(fù)制模式因?yàn)橐4娓北?,所以磁盤利用率較低;
多個(gè)節(jié)點(diǎn)上的存儲(chǔ)空間不一致,那么將安裝木桶效應(yīng)取最低節(jié)點(diǎn)的容量作為該卷的總?cè)萘?/code>
卷中所有的服務(wù)器均保存一個(gè)完整的副本;
卷的副本數(shù)量可由客戶創(chuàng)建的時(shí)候決定;
至少由兩個(gè)塊服務(wù)器或更多服務(wù)器;
具備容災(zāi)性。
兼顧分布式和條帶卷的功能;
主要用于大文件訪問(wèn)處理;
至少最少需要 4 臺(tái)服務(wù)器。
兼顧分布式卷和復(fù)制卷的功能;
用于需要冗余的情況下
node1 192.168.13.128
node2 192.168.13.129
node3 192.168.13.130
node4 192.168.13.131
kvm 192.168.13.133
[root@localhost ~]# hostnamectl set-hostname node1
[root@localhost ~]# su
[root@localhost ~]# hostnamectl set-hostname kvm
[root@node1 ~]# vim /etc/hosts ##修改本地解析文件
192.168.13.128 node1
192.168.13.129 node2
192.168.13.130 node3
192.168.13.131 node4
192.168.13.133 kvm
##所有服務(wù)器上關(guān)閉防火墻
[root@node1 ~]# systemctl stop firewalld.service ##關(guān)閉防火墻
[root@node1 ~]# setenforce 0
##分別復(fù)制配置文件到所有服務(wù)器上
[root@node1 ~]# scp /etc/hosts root@192.168.13.129:/etc/hosts
[root@node1 ~]# scp /etc/hosts root@192.168.13.130:/etc/hosts
[root@node1 ~]# scp /etc/hosts root@192.168.13.131:/etc/hosts
[root@node1 ~]# scp /etc/hosts root@192.168.13.133:/etc/hosts
##在所有node節(jié)點(diǎn)服務(wù)器上掛載,修改yum配置文件
[root@node1 ~]# mkdir /gfs
[root@node1 ~]# mount.cifs //192.168.100.3/LNMP-C7 /gfs/ ##掛載
[root@node1 ~]# cd /etc/yum.repo.d/
[root@node1 yum.repos.d]# mkdir bak ##創(chuàng)建備份目錄
[root@node1 yum.repos.d]# mv CentOS-* bak/
[root@node1 yum.repos.d]# vim abc.repo ##所有node節(jié)點(diǎn)都需要配置yum源
[abc]
name=abc
baseurl=file:///gfs/gfsrepo ##掛載目錄下的gfsrepo路徑
gpgcheck=0
enabled=1
[root@node1 yum.repos.d]# yum clean all && yum makecache ##建立元數(shù)據(jù)緩存
[root@node1 yum.repos.d]# yum install -y glusterfs glusterfs-server gluster-fuse glusterfs-rdma
##安裝必要的軟件
[root@node1 yum.repos.d]# systemctl start glusterd ##開啟gluster服務(wù)
[root@node1 yum.repos.d]# systemctl enable glusterd ##開機(jī)自啟動(dòng)
[root@node1 yum.repos.d]# ntpdate ntp1.aliyun.com ##同步時(shí)間
[root@node1 yum.repos.d]# cd /opt/
[root@node1 opt]# 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
[root@node1 opt]# chmod +x fdisk.sh ##添加執(zhí)行權(quán)限
[root@node1 opt]# ./fdisk.sh ##執(zhí)行腳本
[root@node1 opt]# df -hT ##查看掛載信息
##添加存儲(chǔ)信任池,只要在一臺(tái)主機(jī)上添加其他三臺(tái)節(jié)點(diǎn)即可
[root@node1 opt]# gluster peer probe node2
[root@node1 opt]# gluster peer probe node3
[root@node1 opt]# gluster peer probe node4
[root@node1 opt]# gluster volume create models replica 2 node1:/data/sdb1 node2:/data/sdb1 node3:/data/sdb1 node4:/data/sdb1 force
##創(chuàng)建分布式復(fù)制卷
gluster volume create dis-vol node1:/data/sdb1 node2:/data/sdb1 force
//創(chuàng)建分布式卷
gluster volume create stripe-vol stripe 2 node1:/data/sdc1 node2:/data/sdc1 force
//創(chuàng)建條帶卷
gluster volume create rep-vol replica 2 node3:/data/sdb1 node4:/data/sdb1 force
//創(chuàng)建復(fù)制卷
gluster volume create dis-stripe stripe 2 node1:/data/sdd1 node2:/data/sdd1 node3:/data/sdd1 node4:/data/sdd1 force
//創(chuàng)建分布式條帶卷
[root@node1 opt]# gluster volume start models ##啟動(dòng)分布式復(fù)制卷
[root@kvm ~]# mkdir /abc
[root@kvm ~]# mount.cifs //192.168.100.3/iOS /abc/
[root@kvm ~]# cp /abc/CentOS-7-x86_64-DVD-1708.iso /opt/ &
##將centos7鏡像復(fù)制到/opt/進(jìn)行后臺(tái)運(yùn)行
[root@kvm ~]# cd /etc/yum.repo.d/
[root@kvm yum.repos.d]# mkdir bak ##創(chuàng)建備份目錄
[root@kvm yum.repos.d]# mv CentOS-* bak/
[root@kvm yum.repos.d]# scp -r root@192.168.13.128:/gfs/gfsrepo /
##復(fù)制gfs源到根目錄下
[root@kvm yum.repos.d]# vim abc.repo ##所有node節(jié)點(diǎn)都需要配置yum源
[abc]
name=abc
baseurl=file:///gfsrepo ##源文件的路徑
gpgcheck=0
enabled=1
[root@kvm yum.repos.d]# umount /abc/ ##centos鏡像復(fù)制完成后解掛載
[root@kvm yum.repos.d]# yum install -y glusterfs glusterfs-fuse ##安裝必要的軟件
[root@kvm yum.repos.d]# mv bak/* ./ ##釋放原有的yum源
[root@kvm yum.repos.d]# rm -rf bak/
[root@kvm yum.repos.d]# yum list ##yum列表更新
[root@kvm yum.repos.d]# mkdir /kvmdata ##創(chuàng)建掛載點(diǎn)
[root@kvm yum.repos.d]# mount.glusterfs node1:models /kvmdata
##將分布式復(fù)制卷掛載到掛載點(diǎn)中
[root@kvm yum.repos.d]# df -hT ##可以看出原來(lái)一共是160G現(xiàn)在是80G
[root@kvm ~]# yum groupinstall "GNOME Desktop" -y ##桌面環(huán)境
yum install qemu-kvm -y ##kvm內(nèi)核
yum install qemu-kvm-tools -y ##調(diào)試工具
yum install virt-install -y ##命令行工具
yum install qemu-img -y ##組件,創(chuàng)建磁盤,啟動(dòng)虛擬機(jī)
yum install bridge-utils -y ##網(wǎng)絡(luò)支持工具
yum install libvirt -y ##虛擬機(jī)管理工具
yum install virt-manager -y ##圖形化管理虛擬機(jī)
[root@kvm ~]# egrep '(vmx|svm)' /proc/cpuinfo ##看cpu是否支持
[root@kvm ~]# lsmod | grep kvm ##檢查kvm是否安裝
[root@kvm ~]# systemctl start libvirtd ##開啟服務(wù)
[root@kvm ~]# systemctl status libvirtd
[root@kvm ~]# systemctl enable libvirtd ##開啟自啟
[root@kvm ~]# cd /etc/sysconfig/network-scripts/
[root@kvm network-scripts]# vim ifcfg-ens33
##末行添加
BRIDGE=br0
[root@kvm network-scripts]# cp -p ifcfg-ens33 ifcfg-br0 ##復(fù)制配置文件為橋接
[root@kvm network-scripts]# vim ifcfg-br0
TYPE=Bridge ##橋接模式
BOOTPROTO=static ##靜態(tài)
NAME=br0 ##名字為br0
DEVICE=br0
IPADDR=192.168.13.133 ##ip地址
NETMASKE=255.255.255.0 ##子網(wǎng)掩碼
GATEWAY=192.168.13.1 ##網(wǎng)關(guān)
[root@kvm network-scripts]# service network restart ##重啟網(wǎng)卡
[root@kvm network-scripts]# cd /kvmdata/ ##切換到GFS掛載點(diǎn)
[root@kvm kvmdata]# mkdir kgc_disk kgc_iso ##創(chuàng)建文件系統(tǒng)目錄及鏡像目錄
[root@kvm kvmdata]# cp /opt/CentOS-7-x86_64-DVD-1708.iso kgc_iso/ &
##將鏡像文件復(fù)制到鏡像目錄中
[root@kvm ~]# virt-manager
[root@node1 ~]# cd /data/sdb1/ ##分布在各個(gè)node節(jié)點(diǎn)服務(wù)器上
[root@node1 sdb1]# ls
kgc_disk kgc_iso
網(wǎng)站名稱:KVM+GFS分布式文件系統(tǒng)高可用群集
標(biāo)題網(wǎng)址:http://muchs.cn/article16/iejcgg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設(shè)計(jì)、外貿(mào)建站、營(yíng)銷型網(wǎng)站建設(shè)、云服務(wù)器、Google、外貿(mào)網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)