日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

一文看懂GFS如何搭建

發布時間:2023/12/20 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 一文看懂GFS如何搭建 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文章目錄

  • 一、服務端配置
    • 1.環境
    • 2.修改主機名
    • 3.使用腳本對硬盤進行分區掛載
    • 4.添加四個節點域名解析
    • 5.安裝本地源GFS
    • 6.創建卷
      • 1.創建分布式卷
      • 2.創建條帶卷
      • 3.創建復制卷
      • 4.創建分布式條帶卷
      • 5.創建分布式復制卷
  • 二、客戶端配置
    • 1.安裝客戶端
    • 2.驗證gluster文件系統
    • 3.冗余(破壞)測試
  • 三、Gluster的其他的維護命令


一、服務端配置

1.環境

  • 每臺虛擬機需要添加4塊5G磁盤
Node1節點:node1/192.168.3.11 磁盤:/dev/sdb1 掛載點:/data/sdb1 5GX4/dev/sdc1 /data/sdc1/dev/sdd1 /data/sdd1/dev/sde1 /data/sde1Node2節點:node2/192.168.3.12 磁盤:/dev/sdb1 掛載點:/data/sdb1 5GX4/dev/sdc1 /data/sdc1/dev/sdd1 /data/sdd1/dev/sde1 /data/sde1Node3節點:node3/192.168.3.13 磁盤:/dev/sdb1 掛載點:/data/sdb1 5GX4/dev/sdc1 /data/sdc1/dev/sdd1 /data/sdd1/dev/sde1 /data/sde1Node4節點:node4/192.168.3.14 磁盤:/dev/sdb1 掛載點:/data/sdb1 5GX4/dev/sdc1 /data/sdc1/dev/sdd1 /data/sdd1/dev/sde1 /data/sde1Client節點:192.168.3.15

2.修改主機名

hostnamectl set-hostname node1 suhostnamectl set-hostname node2 suhostnamectl set-hostname node3 suhostnamectl set-hostname node4 suhostnamectl set-hostname client su

3.使用腳本對硬盤進行分區掛載

vim /opt/fdisk.sh#!/bin/bash #刷新磁盤 echo "- - -" >/sys/class/scsi_host/host0/scan echo "- - -" >/sys/class/scsi_host/host1/scan echo "- - -" >/sys/class/scsi_host/host2/scan ##grep出系統所帶磁盤 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 docase $VAR insda)##本地磁盤就退出case語句fdisk -l /dev/sdabreak ;;sd[b-z])#create partitionsecho "n ##創建磁盤pw" | fdisk /dev/$VAR#make filesystem ##格式化mkfs.xfs -i size=512 /dev/${VAR}"1" &> /dev/null#mount the systemmkdir -p /data/${VAR}"1" &> /dev/null ###永久掛載echo -e "/dev/${VAR}"1" /data/${VAR}"1" xfs defaults 0 0\n" >> /etc/fstab ###使得掛載生效mount -a &> /dev/nullbreak ;;quit)break;;*)echo "wrong disk,please check again";;esac done>>>>>>wq
  • 交互時 依次輸入1、2、3、4

4.添加四個節點域名解析

vim /etc/hosts 192.168.3.11 node1 192.168.3.12 node2 192.168.3.13 node3 192.168.3.14 node4

5.安裝本地源GFS

  • 四個節點相同操作
cd /opt wget http://112.124.46.81/gfsrepo.zip unzip gfsrepo.zip ##解壓 cd /etc/yum.repos.d/ mkdir bak ##將原來的源移動到新建的目錄中 mv Cent* bak/vim local.repo //配置本地源[glfs] name=glfs baseurl=file:///opt/gfsrepo gpgcheck=0 enabled=1>>>>>>>wq#安裝GFS軟件包,四臺節點都做 yum clean all && yum makecacheyum -y install glusterfs glusterfs-server glusterfs-fuse glusterfs-rdma ###安裝 #glusterfs-server服務端軟件、glusterfs-fuse使用gfs文件系統軟件systemctl start glusterd.service ###啟動 systemctl enable glusterd.service ###開機自啟 systemctl status glusterd.service ###查看狀態

  • 添加節點到存儲信任池中(在node1節點上操作)
gluster peer probe node1 gluster peer probe node2 gluster peer probe node3 gluster peer probe node4gluster peer status ##在每個節點上查看群集狀態

6.創建卷

  • 根據規劃創建如下卷
卷名稱卷類型Brick
dis-volume分布式卷node1(/data/sdb1)、node2(/data/sdb1)
stripe-volume條帶卷node1(/data/sdc1)、node2(/data/sdc1)
rep-volume復制卷node3(/data/sdb1)、node4(/data/sdb1)
dis-stripe分布式條帶卷node1(/data/sdd1)、node2(/data/sdd1)、node3(/data/sdd1)、node4(/data/sdd1)
dis-rep分布式復制卷node1(/data/sde1)、node2(/data/sde1)、node3(/data/sde1)、node4(/data/sde1)

1.創建分布式卷

#創建分布式卷,沒有指定類型,默認創建的是分布式卷 gluster volume create dis-volume node1:/data/sdb1 node2:/data/sdb1 force #查看卷列表 gluster volume list #啟動新建分布式卷 gluster volume start dis-volume #查看創建分布式卷信息 gluster volume info dis-volume

2.創建條帶卷

#指定類型為 stripe,數值為 2,且后面跟了 2 個 Brick Server,所以創建的是條帶卷 gluster volume create stripe-volume stripe 2 node1:/data/sdc1 node2:/data/sdc1 force#啟動新建條帶卷 gluster volume start stripe-volume #查看創建條帶卷信息 gluster volume info stripe-volume

3.創建復制卷

#指定類型為 replica,數值為 2,且后面跟了 2 個 Brick Server,所以創建的是復制卷 gluster volume create rep-volume replica 2 node3:/data/sdb1 node4:/data/sdb1 force#啟動新建復制卷 gluster volume start rep-volume #查看創建復制卷信息 gluster volume info rep-volume

4.創建分布式條帶卷

#指定類型為 stripe,數值為 2,而且后面跟了 4 個 Brick Server,是 2 的兩倍,所以創建的是分布式條帶卷 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.創建分布式復制卷

#指定類型為 replica,數值為 2,而且后面跟了 4 個 Brick Server,是 2 的兩倍,所以創建的是分布式復制卷 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

  • 此時再去查看卷列表,應有五個卷
gluster volume list ##查看卷列表

二、客戶端配置

  • 客戶端的操作:在node1上創建五個卷后,在客戶端上把卷掛載在指定的五個目錄內,在目錄內寫入了五個文件,五個文件分別保存在五個目錄里面

1.安裝客戶端

cd /opt wget http://112.124.46.81/gfsrepo.zip //下載安裝包 unzip gfsrepo.zip //解壓cd /etc/yum.repos.d/ mkdir repo.bak //創建備份目錄 mv local.repo repos.bak/ //備份vim glfs.repo[glfs] name=glfs baseurl=file:///opt/gfsrepo gpgcheck=0 enabled=1>>>>>>>wqyum clean all && yum makecache yum install -y glusterfs glusterfs-fuse#創建掛載目錄 mkdir -p /test/{dis,stripe,rep,dis_stripe,dis_rep} ls /test#配置域名解析 echo "192.168.3.11 node1" >> /etc/hosts echo "192.168.3.12 node2" >> /etc/hosts echo "192.168.3.13 node3" >> /etc/hosts echo "192.168.3.14 node4" >> /etc/hosts#掛載 Gluster 文件系統 mount.glusterfs node1:dis-volume /test/dis mount.glusterfs node1:stripe-volume /test/stripe mount.glusterfs node1:rep-volume /test/rep mount.glusterfs node1:dis-stripe /test/dis_stripe mount.glusterfs node1:dis-rep /test/dis_rep
  • df -Th查看掛載

  • 卷中寫入文件,客戶端操作

cd /opt#生成一個特定大小的文件給與/opt/demo*.log下,大小為1M,共處理40次 dd if=/dev/zero of=/opt/demo1.log bs=1M count=40 dd if=/dev/zero of=/opt/demo2.log bs=1M count=40 dd if=/dev/zero of=/opt/demo3.log bs=1M count=40 dd if=/dev/zero of=/opt/demo4.log bs=1M count=40 dd if=/dev/zero of=/opt/demo5.log bs=1M count=40ls -lh /opt


cp demo* /test/dis cp demo* /test/stripe/ cp demo* /test/rep/ cp demo* /test/dis_stripe/ cp demo* /test/dis_rep/ls /test/ #查看/test/的文件夾/文件的目錄樹

2.驗證gluster文件系統

  • gluster服務器上查看文件分布
  • 查看分布式文件分布
  • ls -lh /data/sdb1 ##沒有被分片,文件分開節點存放


  • 查看條帶卷文件分布
  • ls -lh /data/sdc1 ##查詢數據被分片50% 沒副本 沒冗余


  • 查看復制卷分布
  • 復制卷放在了node3、node4 ll -h /data/sdb1 ##沒有被分片,有副本,有冗余


  • 查看分布式條帶卷分布
  • ll -h /data/sdd1 ##文件被分片50%,沒副本,沒冗余

  • 查看分布式復制卷分布
  • ll -h /data/sde1 ##數據沒有被分片 有副本 有冗余

    3.冗余(破壞)測試

    1.在客戶端查看文件 [root@client test]# cd /test/ [root@client test]# ll -h dis 總用量 200M -rw-r--r-- 1 root root 40M 11月 17 14:20 demo1.log -rw-r--r-- 1 root root 40M 11月 17 14:20 demo2.log -rw-r--r-- 1 root root 40M 11月 17 14:20 demo3.log -rw-r--r-- 1 root root 40M 11月 17 14:20 demo4.log -rw-r--r-- 1 root root 40M 11月 17 14:20 demo5.log2.把node2節點關閉(模擬宕機),再回到客戶端檢查,可以看到demo5沒了,所以可以得出分布式卷(node1/2)不具備冗余的特性 [root@node2 ~]# init 0[root@client opt]# cd /test [root@client test]# ll -h dis 總用量 160M -rw-r--r-- 1 root root 40M 11月 17 14:20 demo1.log -rw-r--r-- 1 root root 40M 11月 17 14:20 demo2.log -rw-r--r-- 1 root root 40M 11月 17 14:20 demo3.log -rw-r--r-- 1 root root 40M 11月 17 14:20 demo4.log3.且發現條帶卷(node1/2)數據為0,不具備冗余 [root@client test]# ll -h stripe/ 總用量 04.關閉node3,測試復制卷(node3/node4)的冗余性 [root@node3 ~]# init 0[root@client test]# ll -h rep/ 總用量 200M -rw-r--r-- 1 root root 40M 11月 17 14:20 demo1.log -rw-r--r-- 1 root root 40M 11月 17 14:20 demo2.log -rw-r--r-- 1 root root 40M 11月 17 14:20 demo3.log -rw-r--r-- 1 root root 40M 11月 17 14:20 demo4.log -rw-r--r-- 1 root root 40M 11月 17 14:20 demo5.log #可以看到數據仍然存在,不受影響5.查看分布式條帶卷(node1/2/3/4) [root@client test]# ll -h dis_stripe/ 總用量 0 #也并不具備冗余性6.查看分布式復制卷(node1/2/3/4) [root@client test]# ll -h dis_rep/ 總用量 200M -rw-r--r-- 1 root root 40M 11月 17 14:20 demo1.log -rw-r--r-- 1 root root 40M 11月 17 14:20 demo2.log -rw-r--r-- 1 root root 40M 11月 17 14:20 demo3.log -rw-r--r-- 1 root root 40M 11月 17 14:20 demo4.log -rw-r--r-- 1 root root 40M 11月 17 14:20 demo5.log

    結果證明:只要帶復制數據的相比而言,數據比較安全

    三、Gluster的其他的維護命令

    1.查看GlusterFS卷 gluster volume list2.查看所有卷的信息 gluster volume info3.查看所有卷的狀態 gluster volume status4.停止一個卷 gluster volume stop dis-stripe5.刪除一個卷 gluster volume delete dis-stripe #注意:刪除卷時,需要先停止卷,且信任池中不能有主機處于宕機狀態,否則不能成功刪除6.設置卷的訪問控制 gluster volume set dis-rep auth.allow 192.168.3.100 #僅拒絕,設置為IP地址為192.168.3.100的主機禁止訪問dis-rep(分布式復制卷)gluster volume set dis-rep auth.allow 192.168.3.* #僅允許,設置為192.168.3.0網段的所有IP地址都能訪問dis-rep(分布式復制卷)

    總結

    以上是生活随笔為你收集整理的一文看懂GFS如何搭建的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。