可設定狀態的應用程式 (例如資料庫) 會儲存工作階段之間的資料,並且需要持續性磁碟區來儲存資料。透過 vSphere IaaS control plane,您可以為應用程式動態佈建持續性磁碟區。
在 vSphere 環境中,持續性磁碟區物件由資料存放區上的虛擬磁碟提供支援。資料存放區由儲存區原則表示。當 vSphere 管理員建立儲存區原則 (例如 gold) 並將其指派給 主管 中的命名空間後,儲存區原則會在 vSphere 命名空間 和任何可用的 Tanzu Kubernetes Grid 叢集中顯示為相符的 Kubernetes 儲存區類別。
做為 DevOps 工程師,您可以在持續性磁碟區宣告規格中使用此儲存區類別。然後,您可以從持續性磁碟區宣告部署使用該儲存區的應用程式。在此範例中,會動態建立應用程式的持續性磁碟區。
必要條件
確保您的 vSphere 管理員已建立適當的儲存區原則,並且已將原則指派給命名空間。
程序
- 在 vSphere Kubernetes 環境中存取您的命名空間。
- 確認儲存區類別可供使用。
- 建立持續性磁碟區宣告。
- 建立包含持續性磁碟區宣告組態的 YAML 檔案。
在此範例中,檔案會參考
金級儲存區類別。
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: my-pvc
spec:
accessModes:
- ReadWriteOnce
storageClassName: gold
resources:
requests:
storage: 3Gi
- 將持續性磁碟區宣告套用至 Kubernetes 叢集。
kubectl apply -f pvc_name.yaml
此命令會動態建立 Kubernetes 持續性磁碟區和 vSphere 磁碟區,該磁碟區具有滿足宣告儲存區需求的支援虛擬磁碟。
- 檢查持續性磁碟區宣告的狀態。
kubectl get pvc my-pvc
輸出顯示磁碟區已繫結到持續性磁碟區宣告。
NAME STATUS VOLUME CAPACITY ACCESSMODES STORAGECLASS AGE
my-pvc Bound my-pvc 2Gi RWO gold 30s
- 建立掛接持續性磁碟區的網繭。
- 建立包含持續性磁碟區的 YAML 檔案。
此檔案包含這些參數。
...
volumes:
- name: my-pvc
persistentVolumeClaim:
claimName: my-pvc
- 從 YAML 檔案部署網繭。
kubectl create -f pv_pod_name.yaml
- 確認已建立網繭。
NAME READY STATUS RESTARTS AGE
pod_name 1/1 Ready 0 40s
結果
您設定的網繭會使用持續性磁碟區宣告中所述的持續性儲存區。