将其他volumeClaimTemplate添加到statefulSet

时间:2018-09-25 15:43:29

标签: kubernetes statefulset kubernetes-statefulset

我们正在使用Kubernetes 1.10.1

我有一个状态集,其中附加了一个volumeClaim。

我想添加一个额外的volumeClaim,因为调整现有PV的大小仍处于beta中,并且在Kubernetes 1.10中也不可用。

我的更改基本上只会添加一个额外的PVC(当然也要安装它,这里没有提到):

*** 1,10 ****
--- 1,19 ----
    volumeClaimTemplates:
    - metadata:
        name: data
      spec:
        accessModes:
        - ReadWriteOnce
        resources:
          requests:
            storage: 100Gi
 +   - metadata:
 +       name: data2
 +     spec:
 +       accessModes:
 +       - ReadWriteOnce
 +       resources:
 +         requests:
 +           storage: 100Gi

结果我得到一个错误:

Error: UPGRADE FAILED: StatefulSet.apps "my-app" is invalid: spec: Forbidden: updates to statefulset spec for fields other than 'replicas', 'template', and 'updateStrategy' are forbidden.

只要不影响现有的PVC,是否至少应支持添加其他PVC?我在这里想念什么吗?我没有在文档中找到与此相关的任何内容。

1 个答案:

答案 0 :(得分:2)

我不知道设计上是否有任何理由,但是您不希望在StatefulSet上更新存储模板的唯一原因是应用程序的整体稳定性。

无论如何,由于您要添加额外的存储,我同意应该允许这样做,我认为在可用时也应该调整卷的大小。已打开this功能请求。