lvol - Configure LVM logical volumes

Synopsis

  • This module creates, removes or resizes logical volumes.

Options

parameter required default choices comments
active
(added in 2.2)
no yes
  • yes
  • no
Whether the volume is activate and visible to the host.
force
(added in 1.5)
no no
  • yes
  • no
Shrink or remove operations of volumes requires this switch. Ensures that that filesystems get never corrupted/destroyed by mistake.
lv
yes
The name of the logical volume.
opts
(added in 2.0)
no
Free-form options to be passed to the lvcreate command
pvs
(added in 2.2)
no
Comma separated list of physical volumes e.g. /dev/sda,/dev/sdb
shrink
(added in 2.2)
no True
shrink if current size is higher than size requested
size
no
The size of the logical volume, according to lvcreate(8) --size, by default in megabytes or optionally with one of [bBsSkKmMgGtTpPeE] units; or according to lvcreate(8) --extents as a percentage of [VG|PVS|FREE]; Float values must begin with a digit. Resizing using percentage values was not supported prior to 2.1.
snapshot
(added in 2.1)
no
The name of the snapshot volume
state
no present
  • present
  • absent
Control if the logical volume exists. If present and the volume does not already exist then the size option is required.
vg
yes
The volume group this logical volume is part of.

Examples

# Create a logical volume of 512m.
- lvol:
    vg: firefly
    lv: test
    size: 512

# Create a logical volume of 512m with disks /dev/sda and /dev/sdb
- lvol:
    vg: firefly
    lv: test
    size: 512
    pvs: /dev/sda,/dev/sdb

# Create cache pool logical volume
- lvol:
    vg: firefly
    lv: lvcache
    size: 512m
    opts: --type cache-pool

# Create a logical volume of 512g.
- lvol:
    vg: firefly
    lv: test
    size: 512g

# Create a logical volume the size of all remaining space in the volume group
- lvol:
    vg: firefly
    lv: test
    size: 100%FREE

# Create a logical volume with special options
- lvol:
    vg: firefly
    lv: test
    size: 512g
    opts: -r 16

# Extend the logical volume to 1024m.
- lvol:
    vg: firefly
    lv: test
    size: 1024

# Extend the logical volume to consume all remaining space in the volume group
- lvol:
    vg: firefly
    lv: test
    size: +100%FREE

# Extend the logical volume to take all remaining space of the PVs
- lvol:
    vg: firefly
    lv: test
    size: 100%PVS

# Resize the logical volume to % of VG
- lvol:
    vg: firefly
    lv: test
    size: 80%VG
    force: yes

# Reduce the logical volume to 512m
- lvol:
    vg: firefly
    lv: test
    size: 512
    force: yes

# Set the logical volume to 512m and do not try to shrink if size is lower than current one
- lvol:
    vg: firefly
    lv: test
    size: 512
    shrink: no

# Remove the logical volume.
- lvol:
    vg: firefly
    lv: test
    state: absent
    force: yes

# Create a snapshot volume of the test logical volume.
- lvol:
    vg: firefly
    lv: test
    snapshot: snap1
    size: 100m

# Deactivate a logical volume
- lvol:
    vg: firefly
    lv: test
    active: false

# Create a deactivated logical volume
- lvol:
    vg: firefly
    lv: test
    size: 512g
    active: false

Notes

Note

  • Filesystems on top of the volume are not resized.

Status

This module is flagged as preview which means that it is not guaranteed to have a backwards compatible interface.

For help in developing on modules, should you be so inclined, please read Community Information & Contributing, Testing Ansible and Developing Modules.

© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.4/lvol_module.html