OpenStack Block Storage enables you to choose a volume back end according
to free_capacity and allocated_capacity. The volume number weigher
feature lets the scheduler choose a volume back end based on its volume
number in the volume back end. This can provide another means to improve
the volume back ends’ I/O balance and the volumes’ I/O performance.
To enable a volume number weigher, set the
scheduler_default_weighers to VolumeNumberWeigher flag in the
cinder.conf file to define VolumeNumberWeigher
as the selected weigher.
To configure VolumeNumberWeigher, use LVMVolumeDriver
as the volume driver.
This configuration defines two LVM volume groups: stack-volumes with
10 GB capacity and stack-volumes-1 with 60 GB capacity.
This example configuration defines two back ends:
scheduler_default_weighers=VolumeNumberWeigher
enabled_backends=lvmdriver-1,lvmdriver-2
[lvmdriver-1]
volume_group=stack-volumes
volume_driver=cinder.volume.drivers.lvm.LVMVolumeDriver
volume_backend_name=LVM
[lvmdriver-2]
volume_group=stack-volumes-1
volume_driver=cinder.volume.drivers.lvm.LVMVolumeDriver
volume_backend_name=LVM
Define a volume type in Block Storage:
$ openstack volume type create lvm
Create an extra specification that links the volume type to a back-end name:
$ openstack volume type set lvm --property volume_backend_name=LVM
This example creates a lvm volume type with
volume_backend_name=LVM as extra specifications.
To create six 1-GB volumes, run the openstack volume create --size 1 --type lvm volume1 command six times:
$ openstack volume create --size 1 --type lvm volume1
This command creates three volumes in stack-volumes and
three volumes in stack-volumes-1.
List the available volumes:
# lvs
LV VG Attr LSize Pool Origin Data% Move Log Copy% Convert
volume-3814f055-5294-4796-b5e6-1b7816806e5d stack-volumes -wi-a---- 1.00g
volume-72cf5e79-99d2-4d23-b84e-1c35d3a293be stack-volumes -wi-a---- 1.00g
volume-96832554-0273-4e9d-902b-ad421dfb39d1 stack-volumes -wi-a---- 1.00g
volume-169386ef-3d3e-4a90-8439-58ceb46889d9 stack-volumes-1 -wi-a---- 1.00g
volume-460b0bbb-d8a0-4bc3-9882-a129a5fe8652 stack-volumes-1 -wi-a---- 1.00g
volume-9a08413b-0dbc-47c9-afb8-41032ab05a41 stack-volumes-1 -wi-a---- 1.00g
Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.