本繁體中文版使用機器翻譯,譯文僅供參考,若與英文版本牴觸,應以英文版本為準。
管理儲存類別
您可以檢視現有儲存類別、設定預設儲存類別、識別儲存類別後端,以及刪除儲存類別。
檢視現有的儲存類別
-
若要檢視現有的 Kubernetes 儲存類別,請執行下列命令:
kubectl get storageclass
-
若要檢視 Kubernetes 儲存類別詳細資訊,請執行下列命令:
kubectl get storageclass <storage-class> -o json
-
若要檢視 Trident 的同步儲存類別,請執行下列命令:
tridentctl get storageclass
-
若要檢視 Trident 的同步儲存類別詳細資料、請執行下列命令:
tridentctl get storageclass <storage-class> -o json
設定預設儲存類別
Kubernetes 1.6 新增了設定預設儲存類別的功能。如果使用者未在持久性磁碟區宣告(PVC)中指定儲存類別,則將使用此儲存類別來配置持久性磁碟區。
-
透過在儲存類別定義中將註解
storageclass.kubernetes.io/is-default-class設為 true 來定義預設儲存類別。根據規範,任何其他值或註解的缺失都將被解釋為 false。 -
您可以使用下列命令將現有儲存類別設定為預設儲存類別:
kubectl patch storageclass <storage-class-name> -p '{"metadata": {"annotations":{"storageclass.kubernetes.io/is-default-class":"true"}}}'
-
同樣地,您可以使用下列命令移除預設儲存類別註釋:
kubectl patch storageclass <storage-class-name> -p '{"metadata": {"annotations":{"storageclass.kubernetes.io/is-default-class":"false"}}}'
Trident 安裝程式套件中也有包含此註解的範例。
|
|
叢集中一次只能存在一個預設儲存類別。Kubernetes 技術上並不會禁止存在多個預設儲存類別,但它的行為會如同根本沒有預設儲存類別一樣。 |
識別儲存類別的後端
這是一個可以使用 tridentctl 為 Trident 後端物件輸出的 JSON 資料來回答的問題範例。此範例使用了 jq 實用程式,您可能需要先安裝該程式。
tridentctl get storageclass -o json | jq '[.items[] | {storageClass: .Config.name, backends: [.storage]|unique}]'
刪除儲存類別
若要從 Kubernetes 中刪除儲存類別,請執行以下命令:
kubectl delete storageclass <storage-class>
<storage-class> 應該替換成您的儲存類別。
透過此儲存類別建立的任何持久性磁碟區都將保持不變,Trident 將繼續管理它們。
|
|
Trident 會為其建立的磁碟區強制執行空白 fsType。對於 iSCSI 後端、建議在 StorageClass 中強制執行 parameters.fsType。您應該刪除現有的 StorageClasses 並使用指定的 `parameters.fsType`重新建立它們。
|