VDO是一個精簡配置的塊存儲設備。正因如此必須時刻關注並管理VDO卷的空間使用狀況。app
VDO卷的物理空間使用狀況可能與用戶看到的卷的大小空間不一致。你能夠利用這種差別來節約存儲消耗。但當數據寫入速率沒達到預期優化的水平時,當心避免意外用完空間。只要邏輯塊(虛擬存儲)的數量超過物理塊(實際存儲)的數量,文件系統和應用程序就有可能意外用完空間。所以,使用VDO的存儲系統必須爲您提供一種監視VDO捲上空間池大小的方法。工具
你可使用vdostats工具來監控空間池的大小。這個命令默認輸出是相似於df命令同樣顯示全部運行着的VDO卷,好比優化
Device 1K-blocks Used Available Use% /dev/mapper/my-vdo 211812352 105906176 105906176 50%
當VDO卷的物理空間塊滿時,VDO會在系統日誌中報警,以下日誌
Oct 2 17:13:39 system lvm\[13863\]: Monitoring VDO pool my-vdo. Oct 2 17:27:39 system lvm\[13863\]: WARNING: VDO pool my-vdo is now 80.69% full. Oct 2 17:28:19 system lvm\[13863\]: WARNING: VDO pool my-vdo is now 85.25% full. Oct 2 17:29:39 system lvm\[13863\]: WARNING: VDO pool my-vdo is now 90.64% full. Oct 2 17:30:29 system lvm\[13863\]: WARNING: VDO pool my-vdo is now 96.07% full.
當池中的空間達到必定程度時,你能夠選擇刪除數據,或者增長物理存儲,或者刪除VDO上的LUNs來解決。code
只有文件系統用DISCARD,TRIM或UNMAP命令標記塊爲空閒時VDO才能回收空間。
使用blkdiscard工具能夠在無文件系統的塊存儲上回收VDO卷的空間。it
在系統啓動時,vdo systemd單元會自動啓動全部配置爲activated的VDO設備。vdo systemd單元默認隨vdo包安裝後啓用。這個單元在系統啓動時自動運行vdo start -all
命令激活全部VDO卷。你也能夠在建立VDO卷時在命令vdo create
增長參數--activate=disabled
來禁用自動啓動。監控
有些系統能夠在VDO捲上層或下層構建LVM卷。在這些系統中有必要按正確的順序啓動服務:
1.低層的LVM必須先啓動。在大多數系統中,在LVM安裝後配置了自動啓動這一層。
2.而後啓動vdo systemd單元
3.最後啓動上層VDO捲上的其餘腳原本啓動LVM卷或服務sed
啓動VDO卷配置
$ vdo start --name=my-vdo $ vdo start --all
中止VDO卷map
$ vdo stop --name=my-vdo $ vdo stop --all
激活VDO卷
$ vdo activate --name-my-vdo $ vdo avtivate --all
停用VDO卷
$ vdo deavtivate --name=my-vdo $ vdo deactivate --all