登入vSphere Client,展開左上角設定-策略和配置檔案-虛擬機器儲存策略,可以檢視系統預設建立的虛擬機器儲存策略。這些儲存策略由系統自動生成,其中有一部分儲存策略僅用於vSAN資料儲存,作為vSAN 預設儲存策略以應用於,當在部署虛擬機器時未進行自定義儲存策略時所預設分配的策略。
vSAN 8 中具有以下預設儲存策略,這些vSAN 預設儲存策略的特性都是無法被刪除,預設名稱及描述無法被編輯,只能修改其配置引數或基於該策略克隆出一個新的儲存策略配置檔案進行使用。
- vSAN Default Storage Policy
- Management Storage policy - Encryption
- Management Storage policy - Thin
- Management Storage Policy - Large
- Management Storage Policy - Regular
- Management Storage Policy - Single Node
- Management Storage Policy - Stretched
- Management Storage Policy - Stretched Lite
- Management Storage Policy - Stretched ESA
- vSAN ESA Default Policy - RAID5
- vSAN ESA Default Policy - RAID6
其實大多時候,我們都使用自己定義的vSAN 儲存策略,這些預設vSAN儲存策略基本都用不到,比如Management Storage policy - XX。那可不可以刪除這些用不到的vSAN 預設儲存策略呢?答案是可以的。參考我之前的 連線和使用vCenter Server嵌入式vPostgres資料庫 這篇文章,下面演示如何在vPostgres資料庫中去刪除它。
首先,以root使用者登入vCenter Server的Shell命令列,使用下面命令連線到vPostgres資料庫。
/opt/vmware/vpostgres/current/bin/psql -U postgres -d VCDB
執行 \x 命令開啟擴充套件顯示輸出,然後使用下面 SQL 命令查詢所有基於spbmCapabilityBasedProfileProvider的虛擬機器儲存策略。
SELECT surr_key, kv_provider, kv_value FROM vc.cis_kv_keyvalue WHERE kv_provider='spbmCapabilityBasedProfileProvider';
執行上面 SQL 命令後,可以獲得如下圖所示的內容。透過kv_value中的name的值,確定vSAN 預設儲存策略的名稱,比如這裡是Management Storage Policy - Regular,同時需要記住surr_key中的值,比如這裡是 11 ,後面需要根據surr_key來刪除vSAN 預設儲存策略。
根據上面獲得的vSAN 預設儲存策略的surr_key的值,執行下面的 SQL 命令,刪除這個vSAN 預設儲存策略。
DELETE FROM vc.cis_kv_keyvalue WHERE kv_provider='spbmCapabilityBasedProfileProvider' AND surr_key=11;
此時,我們再到vSphere Client介面重新整理一下,剛剛刪除的 Management Storage Policy - Regular 已經不在了。
使用同樣的方式,刪除其他不需要的vSAN 預設儲存策略。當然,除了使用命令列方式,也可以選擇使用圖形化客戶端工具。
注:以上操作不受VMware支援,也不應該在生產環境中使用,所有風險需自行評估並承擔可能帶來的後果。