在主机的现有 LVM 卷组上设置 LXD 存储精简池

Krz*_*tof 3 lvm lxd 19.10

向导lxd init不允许将主机的现有 LVM 卷组(重新)用于 LXD 存储池。

如何手动配置LXD存储,以便它在主机的现有卷组中创建精简池和卷?

Krz*_*tof 7

lxd init向导中,回答no有关创建存储池的问题。

Do you want to configure a new storage pool? (yes/no) [default=yes]: no
Run Code Online (Sandbox Code Playgroud)

以下命令需要以root权限执行。使用命令切换到 rootsudo -i或使用前缀执行以下命令sudo

在此代码片段中,<VG>是主机的卷组名称。使用vgs命令查找您的卷组名称。此命令创建一个 LXD 存储池,其名称pool位于 LVM 卷组中<VG>。主机 LVM 中的池名称变为lxd-pool

# lxc storage create pool lvm source=<VG> lvm.vg.force_reuse=true lvm.use_thinpool=true lvm.thinpool_name=lxd-pool
Run Code Online (Sandbox Code Playgroud)

然后,将其设为容器磁盘的默认池。

# lxc profile device add default root disk path=/ pool=pool
Run Code Online (Sandbox Code Playgroud)

要检查它是否按预期工作,请使用lvs并检查是否lxd-pool列出...

# lvs
  LV                   VG      Attr       LSize   Pool Origin      Data%  Meta%  Move Log Cpy%Sync Convert
  lxd-pool             <VG>    twi-a-tz-- 162,00g                  0,00   1,63
(...)     
Run Code Online (Sandbox Code Playgroud)

...并lxc storage list检查 LXD 存储配置:

# lxc storage list
+------+-------------+--------+---------+---------+
| NAME | DESCRIPTION | DRIVER | SOURCE  | USED BY |
+------+-------------+--------+---------+---------+
| pool |             | lvm    | <VG>    | 3       |
+------+-------------+--------+---------+---------+
Run Code Online (Sandbox Code Playgroud)