community.general.lvol module – Configure LVM logical volumes
Note
This module is part of the community.general collection (version 9.4.0).
It is not included in ansible-core
.
To check whether it is installed, run ansible-galaxy collection list
.
To install it, use: ansible-galaxy collection install community.general
.
To use it in a playbook, specify: community.general.lvol
.
Synopsis
This module creates, removes or resizes logical volumes.
Parameters
Parameter |
Comments |
---|---|
Whether the volume is active and visible to the host. Choices:
|
|
Shrink or remove operations of volumes requires this switch. Ensures that that filesystems get never corrupted/destroyed by mistake. Choices:
|
|
The name of the logical volume. |
|
Free-form options to be passed to the lvcreate command. |
|
List of physical volumes (for example |
|
Resize the underlying filesystem together with the logical volume. Supported for Choices:
|
|
Shrink if current size is higher than size requested. Choices:
|
|
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|ORIGIN]; Float values must begin with a digit. When resizing, apart from specifying an absolute size you may, according to lvextend(8)|lvreduce(8) Resizing using Please note that when using |
|
The name of a snapshot volume to be configured. When creating a snapshot volume, the |
|
Control if the logical volume exists. If Choices:
|
|
The thin pool volume name. When you want to create a thin provisioned volume, specify a thin pool volume name. |
|
The volume group this logical volume is part of. |
Attributes
Attribute |
Support |
Description |
---|---|---|
Support: full |
Can run in |
|
Support: none |
Will return details on what has changed (or possibly needs changing in |
Notes
Note
You must specify lv (when managing the state of logical volumes) or thinpool (when managing a thin provisioned volume).
Examples
- name: Create a logical volume of 512m
community.general.lvol:
vg: firefly
lv: test
size: 512
- name: Create a logical volume of 512m with disks /dev/sda and /dev/sdb
community.general.lvol:
vg: firefly
lv: test
size: 512
pvs:
- /dev/sda
- /dev/sdb
- name: Create cache pool logical volume
community.general.lvol:
vg: firefly
lv: lvcache
size: 512m
opts: --type cache-pool
- name: Create a logical volume of 512g.
community.general.lvol:
vg: firefly
lv: test
size: 512g
- name: Create a logical volume the size of all remaining space in the volume group
community.general.lvol:
vg: firefly
lv: test
size: 100%FREE
- name: Create a logical volume with special options
community.general.lvol:
vg: firefly
lv: test
size: 512g
opts: -r 16
- name: Extend the logical volume to 1024m.
community.general.lvol:
vg: firefly
lv: test
size: 1024
- name: Extend the logical volume to consume all remaining space in the volume group
community.general.lvol:
vg: firefly
lv: test
size: +100%FREE
- name: Extend the logical volume by given space
community.general.lvol:
vg: firefly
lv: test
size: +512M
- name: Extend the logical volume to take all remaining space of the PVs and resize the underlying filesystem
community.general.lvol:
vg: firefly
lv: test
size: 100%PVS
resizefs: true
- name: Resize the logical volume to % of VG
community.general.lvol:
vg: firefly
lv: test
size: 80%VG
force: true
- name: Reduce the logical volume to 512m
community.general.lvol:
vg: firefly
lv: test
size: 512
force: true
- name: Reduce the logical volume by given space
community.general.lvol:
vg: firefly
lv: test
size: -512M
force: true
- name: Set the logical volume to 512m and do not try to shrink if size is lower than current one
community.general.lvol:
vg: firefly
lv: test
size: 512
shrink: false
- name: Remove the logical volume.
community.general.lvol:
vg: firefly
lv: test
state: absent
force: true
- name: Create a snapshot volume of the test logical volume.
community.general.lvol:
vg: firefly
lv: test
snapshot: snap1
size: 100m
- name: Deactivate a logical volume
community.general.lvol:
vg: firefly
lv: test
active: false
- name: Create a deactivated logical volume
community.general.lvol:
vg: firefly
lv: test
size: 512g
active: false
- name: Create a thin pool of 512g
community.general.lvol:
vg: firefly
thinpool: testpool
size: 512g
- name: Create a thin volume of 128g
community.general.lvol:
vg: firefly
lv: test
thinpool: testpool
size: 128g