【问题标题】:Kubernetes (GKE) persistent volume resizing not working.Kubernetes (GKE) 持久卷大小调整不起作用。
【发布时间】:2019-03-25 05:20:55
【问题描述】:

我正在尝试调整 Google Kubernetes Engine 中的持久卷的大小。但我最终遇到了一个错误

PersistentVolumeClaim "pvc1" 无效:spec: Forbidden: field is immutable after creation

我一直在关注https://kubernetes.io/blog/2018/07/12/resizing-persistent-volumes-using-kubernetes/ 指南。

步骤 1. 创建一个standard.yaml文件,内容如下

apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  name: standard
parameters:
  type: pd-standard
provisioner: kubernetes.io/gce-pd
allowVolumeExpansion: true
reclaimPolicy: Delete

2。使用以下内容创建了 gke-pvc.yml

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: pvc1
spec:
  accessModes:
  - ReadWriteOnce
  storageClassName: standard
  resources:
    requests:
      storage: 20Gi

3。跑 kubectl apply -f standard.yaml

  1. 运行 kubectl apply -f gke-pvc.yml

  2. 现在运行 kubectl edit pvc pvc1 并将存储空间从 20Gi 更改为 30 Gi 并保存文件,但出现错误

错误:persistentvolumeclaims "pvc1" 无效 错误:persistentvolumeclaims “pvc1” 无效 您的更改副本已存储到“/tmp/kubectl-edit-0hztl.yaml”

请帮我解决这个问题。

【问题讨论】:

    标签: docker kubernetes google-cloud-platform google-kubernetes-engine


    【解决方案1】:

    这是 GKE 上的预期行为。我相信Kubernetes 1.11 上提供了该功能,但GKE 上尚未发布。如果您想尽早使用功能,可以注册here

    【讨论】:

      【解决方案2】:

      目前正在运行,编辑 pvc 后,您会收到以下消息:

      conditions:
        - lastProbeTime: null
          lastTransitionTime: "2019-02-17T23:31:42Z"
          status: "True"
          type: Resizing
      

      不久之后,这个:

          message: Waiting for user to (re-)start a pod to finish file system resize of
            volume on node.
          status: "True"
          type: FileSystemResizePending
      

      然后只需删除 pod,您的卷就会调整大小

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2018-12-09
        • 2019-08-17
        • 1970-01-01
        • 1970-01-01
        • 2017-10-08
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多