community.general.lvol – Configure LVM logical volumes
Note
This plugin is part of the community.general collection (version 3.8.3).
You might already have this collection installed if you are using the ansible
package.
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
.
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. |
|
Comma separated list of physical volumes (e.g. /dev/sda,/dev/sdb). |
|
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]; 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 the snapshot volume |
|
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. |
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: yes
- name: Reduce the logical volume to 512m
community.general.lvol:
vg: firefly
lv: test
size: 512
force: yes
- name: Reduce the logical volume by given space
community.general.lvol:
vg: firefly
lv: test
size: -512M
force: yes
- 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: no
- name: Remove the logical volume.
community.general.lvol:
vg: firefly
lv: test
state: absent
force: yes
- 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
Authors
Jeroen Hoekx (@jhoekx)
Alexander Bulimov (@abulimov)
Raoul Baudach (@unkaputtbar112)
Ziga Kern (@zigaSRC)