eyeix

关于 Bitnami 的 Helm Chart 持久化配置的几个疑惑

  •  
  •   eyeix · Apr 9, 2021 · 2175 views
    This topic created in 1860 days ago, the information mentioned may be changed or developed.

    在 Bitnami 的 Values.yaml 里面,持久化的配置一般是下面几项:

    persistence:
      enabled: true
      existingClaim:
      storageClass: "-"
      accessModes:
        - ReadWriteOnce
      size: 8Gi
      annotations: {}
      mountPath: /bitnami/mongodb
      subPath: ""
    
    • 那么对于多副本且需要使用同一个 PVC 的持久化部署,如何做到数据目录不同以隔离?这里提供的mountPath应该也是对所有副本都作用的。我的意思是想知道如何让不同的副本挂载在不同的子目录下

    • 这里的existingClaim只能填一个 PVC 的名称,那么就只能所有副本都绑定一个已存在的 PVC ?

    • 部署的 statefulset 在未指定已存在的 PVC 的情况下,是不是在自动匹配已经存在的 PVC 时,会根据 pvc 的名称与 statefulset 的名称根据某种规则进行匹配?

    4 replies    2021-04-09 21:17:52 +08:00
    monsterxx03
        1
    monsterxx03  
       Apr 9, 2021
    如果你说的是 bitnami 的 mongodb chart 的话, 理解有点问题.

    mountPath 都是每个容器单独的, 每个副本用自己的 mountPath, 为啥要挂载在不同子目录?

    这个 chart 有 standalone 和 replicaset 两种部署模式, existingClaim 只在 standalone 模式下有效, 此时只有一个 mongo 实例.

    replicaset 模式下,多个 statefulset 的实例是用 volumeClaimTemplate 动态 provision pv 的.
    eyeix
        2
    eyeix  
    OP
       Apr 9, 2021
    @monsterxx03 比如我部署一个 pgsql 的 chart,3 个副本的集群,我想把他们都挂在同一个 PV 下面,那么他们岂不是数据卷会重叠?想知道这是怎么解决的

    主要是看到其它 bitnami 的 chart 也有类似的持久化配置结构,是不是也是这样的?
    liuhan907
        3
    liuhan907  
       Apr 9, 2021 via Android
    @lrvinye
    很简单,你不能这样做。
    monsterxx03
        4
    monsterxx03  
       Apr 9, 2021 via Android
    @lrvinye 为什么要挂在同一个 pv 下?即使不考虑 k8s,在裸机上部署,三个副本跑在三个机器上肯定也是三块硬盘啊,所以你需要三个 pv,statefulset 就是用 volumeClaimTemplate 动态生成对应的 pv
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3300 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 37ms · UTC 11:38 · PVG 19:38 · LAX 04:38 · JFK 07:38
    ♥ Do have faith in what you're doing.