V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
zhoudaiyu
V2EX  ›  Kubernetes

请教大家关于 K8S 使用 GlusterFS+Heketi 为后端存储方案的问题

  •  1
     
  •   zhoudaiyu · 2022-03-23 16:47:40 +08:00 · 2044 次点击
    这是一个创建于 967 天前的主题,其中的信息可能已经有所发展或是发生改变。

      初步想打算采用的架构如下:Pod 通过挂载的 PVC 访问 StorageClass 中存储的集群的 VIP 或者域名(通过 Service+Endpoint 实现)的 Heketi (集群外),Heketi 再去访问 GlusterFS 服务集群上的数据。

    整体架构

      这样存储相关的服务都外置于 K8S 集群了。但是这样有个高可用的问题,这样部署的 Heketi 只能是个单点的应用,因为每个 Heketi 实例本身也有一个 DB 文件( boltdb )存储集群元数据。因此这个文件也要想办法共享出来让多个机器上的 Heketi 访问。我目前想到的方法就是每台机器再挂一块盘用来存这个 db 文件,这几块盘是被 Glusterfs 直接初始化组成的一个集群,而不是通过 Heketi 初始化。相当于图中的 db-vol-{1,2,3}存储 Heketi 的 db 文件,data-vol-{1,2,3}存储 PVC 的数据。

      现在的问题是:1 、这个架构本身是否合理; 2 、boltdb 是否支持多个 Heketi 实例并发修改数据,是不是要实现一个类似于单例模式的架构,同一时刻只有一个 Heketi 实例提供服务; 3 、如果需要单例模式,如何实现?是通过探活加上修改 Endpoint 保证只有一个 Heketi 提供服务,还是有别的方法呢?

      小弟第一次接触分布式存储,很多地方理解不到位,如果方案中有一些不合理的地方请各位大佬多提提意见,Thanks!

    12 条回复    2022-03-24 15:28:29 +08:00
    liuhan907
        1
    liuhan907  
       2022-03-23 18:11:39 +08:00
    Heketi 都快不维护了你选啥不好选这个。。。
    zhoudaiyu
        2
    zhoudaiyu  
    OP
       2022-03-23 18:42:55 +08:00 via iPhone
    @liuhan907 还有一个就是 Kadalu 吧,那个还没细看,那个是要部署在 K8s 里面的,估计我们 K8s 版本太老,可能兼容会有问题
    zhoudaiyu
        3
    zhoudaiyu  
    OP
       2022-03-23 19:21:30 +08:00
    @liuhan907 #1 刚试了一下,果然版本太低了,不支持( 1.13 )。
    liuhan907
        4
    liuhan907  
       2022-03-23 22:52:25 +08:00
    你这版本也太老了!
    zhoudaiyu
        5
    zhoudaiyu  
    OP
       2022-03-23 22:56:18 +08:00 via iPhone
    @liuhan907 公司的,莫得办法💁🏻‍♀️
    liuhan907
        6
    liuhan907  
       2022-03-24 00:20:28 +08:00
    另外为什么不用更简单的比方说 longhorn ,为了存储和 k8s 分离?
    zhoudaiyu
        7
    zhoudaiyu  
    OP
       2022-03-24 07:44:29 +08:00 via iPhone
    @liuhan907 还有就是我们 K8s 版本太低,好多这种新玩意搞不了
    liuhan907
        8
    liuhan907  
       2022-03-24 10:14:02 +08:00 via Android
    那为啥不用 ceph 呢,直接 rbd 不是更简单呐
    zhoudaiyu
        9
    zhoudaiyu  
    OP
       2022-03-24 10:27:37 +08:00
    @liuhan907 #8 ceph 的 osi 插件接入 k8s 要求 k8s 版本最低 1.14 。。。
    zhoudaiyu
        10
    zhoudaiyu  
    OP
       2022-03-24 10:28:06 +08:00
    @zhoudaiyu #9 cri
    liuhan907
        11
    liuhan907  
       2022-03-24 12:00:24 +08:00
    所以你们还是老老实实考虑升级吧,现在几乎没有 1.12 这么低版本的东西了。。。
    rainfd
        12
    rainfd  
       2022-03-24 15:28:29 +08:00
    我也觉得有空研究这个还不如把精力放到怎么升级 k8s 集群上
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2036 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 16:16 · PVG 00:16 · LAX 08:16 · JFK 11:16
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.