GFS分布式文件系统

目录

前言

一、GlusterFS概述

1、简介

2、特点

3、常用术语

4、模块化堆栈式架构

5、组件

二、工作原理

1、流程

2、弹性HASH算法

三、GlusterFS卷类型

1、分类

2、类型介绍

2.1  分布式卷

2.2  条带卷

2.3  复制卷

2.4  分布式条带卷

2.5   分布式复制卷

3、汇总

四、GlusterFS部署

1、环境

2、开局配置

2.1  所有的节点node都操作下面这些步骤,这里以node1:20.0.0.21为列

2.2  创建自动格式化,自动永久挂载脚本

2.3  搭建线网yum仓库

3、配置节点信息 任意一台

4、创建分布式卷

5、创建条带卷

6、创建复制卷

7、创建分布式条带

8、创建分布式复制卷

9、在客户机上安装gluster,创建挂载点后挂载

五、测试 

1、卷中写入文件,客户端操作

2、查看文件分布

3.、破坏性测试

总结


前言

  • GFS是一个可扩展的分布式文件系统,用于大型的、分布式的、对大量数据进行访问的应用。它运行于廉价的普通硬件上,并提供容错功能。它可以给大量的用户提供总体性能较高的服务。
  • GFS 也就是 google File System,Google公司为了存储海量搜索数据而设计的专用文件系统

 

一、GlusterFS概述

1、简介

开源的分布式文件系统
由存储服务器、可u段以及NFS/Samba存储网关组成
无元数据服务器

2、特点

扩展性和高性能
高可用性
全局统一命名空间
弹性卷管理
基于标准协议

3、常用术语

Brick(存储块)(砖):
指可信主机池中由主机提供的用于物理存储的专用分区(磁盘分区),是GlusterFS中的基本存储单元,同时也是可信存储池中服务器上对外提供的存储目录。

Volum(逻辑卷):
一个逻辑卷是一组Brick的集合。卷是数据存储的逻辑设备,类似于LVM中的逻辑卷。大部分Gluster管理操作是在卷上进行的

FUSE(filesystem inuserspace):
是一个内核模块,允许用户创建自己的文件系统,无需修改内核代码

VFS:
内核空间对用户空间提供的访问磁盘的接口。(客户机访问服务器的入口接口)

Gluster(后台管理进程):
在存储集群中每个节点上都要运行。

4、模块化堆栈式架构

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

5、组件

存储服务器、客户端、NFS/Samba存储网关组成

二、工作原理

1、流程

客户端或应用程序通过GlusterFS的挂载点访问数据
linux系统内核通过VFS API收到请求并处理
VFS将数据递交给FUSE内核文件系统,fuse文件系统则是将数据通过/dev/fuse设备文件递交给了GlusterFS client端
GlusterFS client收到数据后,client根据配置文件的配置对数据进行处理
通过网络将数据传递至远端的GlusterFS Server,并且将数据写入到服务器存储设备上

2、弹性HASH算法

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

三、GlusterFS卷类型

1、分类

分布式卷
条带卷
复制卷
分布式条带卷
分布式复制卷
条带复制卷
分布式条带复制卷

2、类型介绍

2.1  分布式卷

没有对文件进行分块处理
通过扩展文件属性保存hash值
支持底层的文件系统有EXT2、EXT4、ZFS、XFS等
没有分块处理,文件只能存在于以个server中,效率不提升

分布式卷的特点:

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

创建分布式卷命令:

gluster volum create fb-volum server1:/dir1 server2:/dir2 server3:/dir3 force 
#创建一个名为fb-volum的分布式卷,存储的文件将根据hash算法分布在server1、2、3:/dir1、2、3上。server1:/dir1是主机名:/挂载点

2.2  条带卷

根据偏移量将文件分成N块(N个条带点),轮询的存储在每个brick server节点
存储大文件时,性能尤为突出
不具备冗余性,类似于raid0
从多个server中同时读取文件,效率提升

条带卷的特点:

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

创建条带卷命令:

gluster volum create td-volum stricpe 2 transport tcp server1:/dir1 server2:/dir2 force
#创建一个名为td-volume的条带卷,文件将被分块轮询存储在server1:/dir1 server2:/dir2 两个brick中

2.3  复制卷

同一文件保存一份或多份副本(类似raid1)
因为要保存副本,所以磁盘利用率较低
若多个节点上的存储空间不一致,将按照最低容量节点的容量作为该卷的总容量 

复制卷的特点:

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

创建复制卷命令:

gluster volum create fz-volum replica 2 transport tcp server1:/dir1 server2:/dir2  
#创建名为fz-volum的复制卷,文件将同时存储两个副本,分别在server1:/dir1 server2:/dir2 两个brick中

2.4  分布式条带卷

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

创建分布式条带卷的命令: 


gluster volum create ft-volum stripe 2 transport tcp server1:/dir1 server2:/dir2 server3:/dir3 server4:/dir4 
#创建名为ft-volum的分布式条带卷,配置分布式条带卷时,卷重brick所包含的存储服务器数量必须是条代卷数的倍数(两倍以上)

2.5   分布式复制卷

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

创建分布式复制卷:


gluster volume create ff-volum replica 2 transport tcp server1:/dir1 server2:/dir2 server3:/dir3 server4:/dir4 
#创建名为ff-volum的分布式条带卷,配置分布式复制卷时,卷重brick所包含的存储服务器数量必须是条带卷数的倍数(两倍以上)

3、汇总

分布式:存储brick不在一个区域范围,某一个区域内brick坏了,不影响另一个区域的brick。
条带式:多个brick形成一个整体,这个整体内的任意一块brick坏了,整个条带卷不可用。
复制卷:多个brick形成一个整体,这个整体内的每块brick都有完整的副本,由此,复制卷内任意一块brick坏了,不影响复制卷使用。

四、GlusterFS部署

1、环境

准备5台主机,分别位4台服务器和一台客户端

IP地址为:20.0.0.21,主机名为:node1,添加4块磁盘,均为20G大小

IP地址为:20.0.0.22,主机名为:node2,添加4块磁盘,均为20G大小

IP地址为:20.0.0.23,主机名为:node3,添加4块磁盘,均为20G大小

IP地址为:20.0.0.24,主机名为:node4,添加4块磁盘,均为20G大小

IP地址为:20.0.0.25,主机名为:client,当做测试机使用

关闭防火墙
systemctl stop firewalld
systemctl disable firewalld
setenforce 0

2、开局配置

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值