番外篇:如何擴充 PV PVC storage size

今日來紀錄下,在GKE上面使用PV、PVE要如何擴展空間

在這篇論壇文件中,提到了擴展空間的細節,簡要的說:

說明

  • Kubernetes v1.11 PV 空間擴充已經支援了,也無需涉及儲存管理、無需刪除重建PV、PVC

  • 目前支持擴展功能的磁碟對象有:AWS-EBS,GCE-PD,Azure Disk,Azure File,Glusterfs,Cinder,Portworx、Ceph RBD

  • 如需使用此功能,需在StorageClass新增此設定allowVolumeExpansion: true

擴展程序

  • 編輯PVC,擴展所需的新空間大小 spec.resources.requests.storage: 100Gi

  • PV將依新設定值擴充空間,但是Pod尚未取得最新擴充後空間

  • 進行Pod重啟( delete pod ),經過FileSystem層面擴充程序後,即可獲得真正能使用的空間。

GKE 案例概念

先準備一個resizing.yaml檔案

spec:
  accessModes:
  - ReadWriteOnce
  dataSource: null
  resources:
    requests:
      storage: 100Gi  # 原本 50Gi

透過kubectl patch更新PVC

kubectl patch --patch "$(cat ./resizing.yaml)" pvc-1
# 這麼做是為了方便您,要更新數個以上的 PVC

刪除pod,擴展實際空間。

kubectl delete pod -l app=demo-pod

以上,大致如此,每個環境不一定完全相同,仍是著重於您的實作面。

Last updated