LVM thin provisioning

Bug #1862655 reported by Ivan Hitos on 2020-02-10
This bug affects 1 person
Affects Status Importance Assigned to Milestone

Bug Description

It would be great it we could add a flag to be able to thin provision logical volumes via MAAS, when deploying the nodes.

Tags: sts Edit Tag help
Changed in maas:
assignee: nobody → Björn Tillenius (bjornt)
Björn Tillenius (bjornt) wrote :

Is all you need to flag a LV to a thin pool? If so, that should be quite easy to do, but we need support in curtin for it first.

If you need more complex functionality, like creating LVs on top of the think pool, then we need a feature request in

Changed in maas:
status: New → Incomplete
assignee: Björn Tillenius (bjornt) → nobody
status: Incomplete → New
status: New → Incomplete
Ryan Harper (raharper) wrote :

Reading through the manpage suggests that it's not just a flag, but
incorporating a new storage type; in particular, this is something
that needs thought:

  "Blocks in a standard logical volume are allocated when the LV is created,
  but blocks in a thin provisioned logical volume are allocated as they are
  written. Because of this, a thin provisioned LV is given a virtual
  size, and can then be much larger than physically available storage. The
  amount of physical storage provided for thin provisioned LVs can be
  increased later as the need arises."

We'll need to account for the idea that the size of a thin LV can exceed the
capacity of physical storage.

  "Blocks in a standard LV are allocated (during creation) from the VG, but
  blocks in a thin LV are allocated (during use) from a special "thin pool
  LV". The thin pool LV contains blocks of physical storage, and blocks
  in thin LVs just reference blocks in the thin pool LV"

One needs additional LV pools, the metadata pools need special handling, for
example, best practice indicates:

Specify devices for data and metadata LVs

    "The data and metadata LVs in a thin pool are best created on separate
    physical devices. To do that, specify the device name(s) at the end of
    the lvcreate line. It can be especially helpful to use fast devices
    for the metadata LV."


    "To tolerate device failures, use raid for the pool data LV and pool
    metadata LV. This is especially recommended for pool metadata LVs."

Changed in curtin:
importance: Undecided → Wishlist
status: New → Triaged
Changed in maas:
status: Incomplete → New
status: New → Incomplete
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers