GFS分布式文件系统集群(实例!!!)

GlusterFS概述

 开源的分布式文件系统
 由存储服务器、客户端以及NFS/Samba存储网关组成
 无元数据服务器(数据传输组件RDMA)

在这里插入图片描述

GlusterFS特点

 扩展性、高性能、高可用性
 全局统一命名空间
 弹性卷管理---->云的特性:水平(实例数)、垂直(硬件性能)
ECS(虚拟)、OSS和RDS(裸金属)
 基于标准协议

GlusterFS术语

 Brick(节点)
 Volume(卷)
 FUSE(用户端交互模块)
 VFS(虚拟化文件系统)
 Glusterd(服务)

模块化堆栈式架构

 模块化、堆栈式的架构
 通过对模块的组合,实现复杂的功能

在这里插入图片描述

GlusterFS工作原理

GlusterFS工作流程

在这里插入图片描述

弹性HASH算法

 通过HASH算法得到一个32位的整数
 划分为N个连续的子空间,每个空间对应一个Brick
 弹性HASH算法的优点:
保证数据平均分布在每一个Brick中
解决了对元数据服务器的依赖,进而解决了单点故障以及访问瓶颈

GlusterFS的卷类型

1.分布式卷(fastdfs和gfs搭建)

没有对文件进行分块处理
通过扩展文件属性保存HASH值
支持的底层文件系统有ext3、ext4、 ZFS、 XFS等

在这里插入图片描述
分布式卷的特点

●文件分布在不同的服务器,不具备冗余性
●更容易和廉价地扩展卷的大小
●单点故障会造成数据丢失
●依赖底层的数据保护

2.条带卷

●根据偏移量将文件分成N块(N个条带节点),轮询的存储在每个BrickServer节点
●存储大文件时,性能尤为突出
●不具备冗余性,类似Raid0

条带卷的特点

●数据被分割成更小块分布到块服务器群中的不同条带区
●分布减少了负载且更小的文件加速了存取的速度
●没有数据冗余

在这里插入图片描述

3. 复制卷

●同一文件保存一份或多分副本
●复制模式因为要保存副本,所以磁盘利用率较低
●多个节点上的存储空间不一致, 那么将按照木桶效应取最低节点的容量
●作为该卷的总容量

复制卷的特点

●卷中所有的服务器均保存一个完整的副本
●卷的副本数量可由客户创建的时候决定
●至少由两个块服务器或更多服务器
●具备冗余性

在这里插入图片描述

4.分布式条带卷

●兼顾分布式卷和条带卷的功能
●主要用于大文件访问处理
●至少最少需要4台服务器

5.分布式复制卷

●兼顾分布式卷和复制卷的功能
●用于需要冗余的情况下

在这里插入图片描述

群集环境

在这里插入图片描述

卷类型

卷名称 卷类型 空间大小 Brick
dis-volume 分布式卷 40G node1(/b1)、node2(/b1)
stripe-volume 条带卷 40G node1(/c1)、node2(/c1)
rep-volume 复制卷 20G node3(/b1)、node4(/b1)
dis-stripe 分布式条带卷 40G node1(/d1)、node2(/d1)、node3(/d1)、node4(/d1)
dis-rep 分布式复制卷 20G node1(/e1)、node2(/e1)、node3(/e1)、node4(/e1)

实验准备

1、为四台服务器服务器每台添加4个磁盘

在这里插入图片描述

2、修改服务器的名称

分别修改为node1、node2、node3、node4

[root@localhost ~]#hostnamectl set-hostname node1
[root@localhost ~]# su
3、将四台服务器上的磁盘格式化,并挂载

在这里我们使用脚本执行挂载

#进入opt目录
[root@node1 ~]# cd /opt
#磁盘格式化、挂载脚本
[root@node1 opt]# vim a.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
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值