After you configure the services on the controller node, configure a second system to be a Block Storage service node. This node contains the disk that serves volumes.
You can configure OpenStack to use various storage systems. This example uses LVM.
Use the instructions in Chapter 2, Basic environment configuration to configure the system. Note the following differences from the installation instructions for the controller node:
Set the host name to
block1
and use10.0.0.41
as IP address on the management network interface. Ensure that the IP addresses and host names for both controller node and Block Storage service node are listed in the/etc/hosts
file on each system.Follow the instructions in the section called “Network Time Protocol (NTP)” to synchronize from the controller node.
Create the LVM physical and logical volumes. This guide assumes a second disk
/dev/sdb
that is used for this purpose:# pvcreate /dev/sdb # vgcreate cinder-volumes /dev/sdb
Add a filter entry to the
devices
section in the/etc/lvm/lvm.conf
file to keep LVM from scanning devices used by virtual machines:devices { ... filter = [ "a/sda1/", "a/sdb/", "r/.*/"] ... }
Note You must add required physical volumes for LVM on the Block Storage host. Run the pvdisplay command to get a list or required volumes.
Each item in the filter array starts with either an
a
for accept, or anr
for reject. The physical volumes that are required on the Block Storage host have names that begin witha
. The array must end with "r/.*/
" to reject any device not listed.In this example,
/dev/sda1
is the volume where the volumes for the operating system for the node reside, while/dev/sdb
is the volume reserved forcinder-volumes
.After you configure the operating system, install the appropriate packages for the Block Storage service:
# apt-get install cinder-volume
Respond to the
debconf
prompts about the database management,[keystone_authtoken]
settings, and RabbitMQ credentials. Make sure to enter the same details as you did for your Block Storage service controller node.Another screen prompts you for the
volume-group
to use. The Debian package configuration script detects every active volume group and tries to use the first one it sees, provided that thelvm2
package was installed before Block Storage. This should be the case if you configured the volume group first, as this guide recommends.If you have only one active volume group on your Block Storage service node, you do not need to manually enter its name when you install the
cinder-volume
package because it is detected automatically. If novolume-group
is available when you installcinder-common
, you must use dpkg-reconfigure to manually configure or re-configurecinder-common
.Edit the
/etc/cinder/cinder.conf
configuration file and add this section for keystone credentials:... [keystone_authtoken] auth_uri = http://
controller
:5000 auth_host =controller
auth_port = 35357 auth_protocol = http admin_tenant_name = service admin_user = cinder admin_password =CINDER_PASS
Configure Block Storage to use the Image Service. Block Storage needs access to images to create bootable volumes. Edit the
/etc/cinder/cinder.conf
file and update theglance_host
option in the[DEFAULT]
section:[DEFAULT] ... glance_host =
controller