openstack-manuals/doc/admin-guide-cloud/blockstorage/section_volume_number_weighter.xml
ling-yun ecdc27f432 Configure and use volume number weigher
Cinder volume number weigher(https://review.openstack.org/#/c/102414/) has
been merged into cinder.
It needs add docs for how to configure and use volume number weigher.

Change-Id: I1dcf2424b8ce7cf349c88103484901fe3db5d16f
Closes-Bug: #1338456
2014-09-17 09:01:04 -05:00

71 lines
3.8 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE section [
<!ENTITY % openstack SYSTEM "../../common/entities/openstack.ent">
%openstack;
]>
<section xmlns="http://docbook.org/ns/docbook"
xmlns:xi="http://www.w3.org/2001/XInclude"
xmlns:xlink="http://www.w3.org/1999/xlink"
version="5.0"
xml:id="volume_number_weighter">
<title>Configure and use volume number weighter</title>
<para>OpenStack Block Storage enables you to choose a volume back end
according
to <option>free_capacity</option> and <option>allocated_capacity</option>.
The volume number weighter 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.</para>
<simplesect>
<title>Enable volume number weighter</title>
<para>To enable a volume number weighter, set the <option>scheduler_default_weighters</option>
to <literal>VolumeNumberWeigher</literal> flag in the <filename>cinder.conf</filename> file to
define <literal>VolumeNumberWeigher</literal> as the selected weighter.
</para>
</simplesect>
<simplesect>
<title>Configure multiple-storage back ends</title>
<para>To configure <literal>VolumeNumberWeigher</literal>, use <literal>LVMISCSIDriver</literal> as the volume driver.</para>
<para>This configuration defines two LVM volume groups: <literal>stack-volumes</literal> with 10&nbsp;GB capacity
and <literal>stack-volumes-1</literal> with 60&nbsp;GB capacity.
This example configuration defines two back ends:</para>
<programlisting language="ini">scheduler_default_weighers=VolumeNumberWeigher
enabled_backends=lvmdriver-1,lvmdriver-2
[lvmdriver-1]
volume_group=stack-volumes
volume_driver=cinder.volume.drivers.lvm.LVMISCSIDriver
volume_backend_name=LVM_iSCSI
[lvmdriver-2]
volume_group=stack-volumes-1
volume_driver=cinder.volume.drivers.lvm.LVMISCSIDriver
volume_backend_name=LVM_iSCSI</programlisting>
</simplesect>
<simplesect>
<title>Volume type</title>
<para>Define a volume type in Block Storage:</para>
<screen><prompt>$</prompt> <userinput>cinder admin type-create lvm</userinput></screen>
<para>Create an extra specification that links
the volume type to a back-end name:</para>
<screen><prompt>$</prompt> <userinput>cinder type-key lvm set volume_backend_name=LVM_iSCSI</userinput></screen>
<para>This example creates a <literal>lvm</literal> volume
type with <literal>volume_backend_name=LVM_iSCSI</literal>
as extra specifications.</para>
</simplesect>
<simplesect>
<title>Usage</title>
<para>To create six 1-GB volumes, run the <command>cinder create --volume-type lvm 1</command> command
six times:</para>
<screen><prompt>$</prompt> <userinput>cinder create --volume-type lvm 1</userinput></screen>
<para>This command creates three volumes in <literal>stack-volumes</literal> and three volumes in <literal>stack-volumes-1</literal>.</para>
<para>List the available volumes:</para>
<screen><prompt>#</prompt> <userinput>lvs</userinput>
<computeroutput> 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</computeroutput></screen>
</simplesect>
</section>