我使用現有的 ZFS 池配置了 LXD。然後我創建了一個容器,它運行正常。 LXD 了解 ZFS 存儲,因為它在那裡創建了兩個目錄:容器和映像。此外,「lxc info」顯示 ZFS 池名稱。
但是,ZFS 池中的目錄是空的。實際檔案已儲存在/var/lib/lxd 中。
我在這裡缺少什麼?
答案1
這是容器的樣子:
root@nsn7:~# zfs list -r nsn7/lxd/containers
NAME USED AVAIL REFER MOUNTPOINT
nsn7/lxd/containers 2,95G 259G 19K /nsn7/lxd/containers
nsn7/lxd/containers/lds-xenial 2,68G 259G 3,16G /var/lib/lxd/containers/lds-xenial.zfs
nsn7/lxd/containers/maas-trusty 214M 259G 214M /var/lib/lxd/containers/maas-trusty.zfs
nsn7/lxd/containers/maas-trusty-virbr1 57,0M 259G 570M /var/lib/lxd/containers/maas-trusty-virbr1.zfs
觀察每個 zfs 資料集的安裝位置,在此輸出中特別詢問與安裝相關的選項:
root@nsn7:~# zfs get all nsn7/lxd/containers/maas-trusty|grep mount
nsn7/lxd/containers/maas-trusty mounted yes -
nsn7/lxd/containers/maas-trusty mountpoint /var/lib/lxd/containers/maas-trusty.zfs local
nsn7/lxd/containers/maas-trusty canmount on default
答案2
我一開始就看到了這一點,讓 LXD 為我設定 ZFS 分割區,然後回到它設定掛載點,但正如你所說,它是空的。
您已經有了 Andreas 提供的答案(您應該接受它),但只是為了澄清,它應該不明顯:
LXD 將各個路徑掛載在與使用 DIR 相同的位置 -/var/lib/lxd/(containers/images)
並且在您設定的ZFS 池的根目錄處設定掛載點不會讓您看到這些資料夾,就像您在「傳統」FS 上所期望的那樣。
第一次查看時並不完全清楚,但它正在按預期工作。