k8s 中使用 glusterfs 做存储

k8s 中使用 glusterfs 做存储,第1张

前面我们用了 nfs 做 pv,可以通过 kubectl explain pv.spec 查看支持的字段,其中包含 nfs、glusterfs,通过 kubectl explain pv.spec.glusterfs 查看 glusterfs 支持的选漏扰敏项

kubectl create -f k8s/gfs/gfs-pv-pvc.yml 创建之后:

更改上次使用的 pv和pvc存储 - 创建 pv 部分的 deployment 资源配置文件

更改成功后,可通过浏览器界面查看目录,通过 postman 上传文件。

在当前 1.5.2 版本,可以使用 kubectl -s <ip:port>get nodes 进行访问

当前版本李伏下 kubectl set 后面支持两种资源, image 或 resources (镜像或资源申返枝请/限制)

NFS 共享存储很简单,但后期扩容和管理方面很不方便,所以这里引入 glusterfs。

glusterfs 是一个开源分布式文件系统,具有强大的横向扩展能力,可支持数 PB 级存储容量和数千客户端,通过网络互联构成一个并行的网络文件系缺山郑统。具有高可用性、高性能、高可用的特点。(任何一个结点挂掉不影响使用)

glusterfs 支持七种模式的卷,这里使用“分布式复制卷”,最稳定的就是这个卷。分布式复唯源制卷要求至少需要四个存储单元。

一个目录需要挂载一块空的硬盘( /dev/ 下的文件),一个硬盘就是一个存储单元。

首先要在所有结点上创建目录 mkdir -p /gfs/test1 /gfs/test2 ,用于挂载 gfs 的硬盘

原理:在写文件时,由于 replica=2,文件系统会根据哈希算法写两份到整个系统的四个存储单元(brick)中。

当卷的空间不够用时,可以先加 node,然后将 node 加入到 资源池中(已经将 node2 加入到资源池了),在 node 上格式化硬盘,并加入到卷中。如果是复制卷,那么每次应该至少加入两个 brick。

解压之后产生一堆的文件,理论上应该分布在六伏颂个 brick 中,实际仍然是 node2 上没有文件,可能是偶然。

1、无元数据设计

GlusterFS设计没有集中或分布式元数据,取而代之的是d性哈希算法。集群中的任何服务器、客亏碧户端都可利用哈希算法、路径及文件名进行计算,就可以对数据进行定位,并执行读写访问 *** 作。

结论:

2、服务器间的部署

GlusterFS集群服务器之间是对等的,每个节点服务器都掌握了集群的配置信息。

所有信息都可以在本地查询。每个节点的信息更新都会向其他节点通告,保证节点信息的销棚举一致性。

但是集群规模较大后,信息同步效率会下降,非一致性概率会提高。

3、客户端访问

首先程序通过访问挂载点的形式读写数据,对于用户和程序而言,集群文件系统是透明的,用户和程序根本感觉不到文件系统是本地还是远端服务器上。

读写 *** 作会被交给VFS(Virtual File System,虚拟文件系统) 来处理,VFS会将请求交给FUSE内核模块,而FUSE又会通过设备/dev/fuse将数据交给GlusterFS Client。最后经过GlusterFS Client计算,并最终通过网络将请求或数据发送到GlusterFS Servers上。

存储类型介绍详见: Setting Up Volumes - Gluster Docs

在老版本中,共有7种卷类型

在新版本中,共有5种卷类型

共有的卷类型是:

不同的卷类型是:

不过我们不用考虑那么多,因为常规都用 分布式复制卷 ,优点如下

当然Dispersed(纠错卷 类似于RAID5)从3.6开始一直更新到7.x版本,花费了gluster吞对大量心血,想了解的可以看这篇文章

参考 官方:快速部署指南

4台服务器都做以下相同 *** 作

总共创建3个目录,brick1用来挂载sdb,另外两个目录作为本地文件夹

格式化磁盘

挂载磁盘

在任意一台主机上,执行以下命令都可以建立信任池,建立并不需要账号密码,因为默认是将部署环境考虑为安全的可信环境

注意: 一旦信任池建立后,只有在信任池中的节点才和丛能添加新服务器信任池中

只实验GlusterFs的分布式复制卷,其他卷类型有需要的话参考百度自行测试

结论: 可以看出前三个为一个复制集,后三个为一个复制集,所以创建卷的时候,卷的顺序很关键


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/12325948.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-24
下一篇 2023-05-24

发表评论

登录后才能评论

评论列表(0条)

保存