8c86e5a53e
This only applies to the LVM driver (when using thick provisioning), and doesn't have any effect on other backends like NFS, so only write the conf entry for LVM. Change-Id: I722ba2fa0010d9887ed9b7fdd9e050cd4694768e
72 lines
1.9 KiB
Bash
72 lines
1.9 KiB
Bash
#!/bin/bash
|
|
#
|
|
# lib/cinder_backends/lvm
|
|
# Configure the LVM backend
|
|
|
|
# Enable with:
|
|
#
|
|
# CINDER_ENABLED_BACKENDS+=,lvm:lvmname
|
|
|
|
# Dependencies:
|
|
#
|
|
# - ``functions`` file
|
|
# - ``cinder`` configurations
|
|
|
|
# CINDER_CONF
|
|
# DATA_DIR
|
|
# VOLUME_GROUP_NAME
|
|
|
|
# clean_cinder_backend_lvm - called from clean_cinder()
|
|
# configure_cinder_backend_lvm - called from configure_cinder()
|
|
# init_cinder_backend_lvm - called from init_cinder()
|
|
|
|
|
|
# Save trace setting
|
|
_XTRACE_CINDER_LVM=$(set +o | grep xtrace)
|
|
set +o xtrace
|
|
|
|
|
|
# TODO: resurrect backing device...need to know how to set values
|
|
#VOLUME_BACKING_DEVICE=${VOLUME_BACKING_DEVICE:-}
|
|
|
|
# Entry Points
|
|
# ------------
|
|
|
|
# cleanup_cinder_backend_lvm - Delete volume group and remove backing file
|
|
# cleanup_cinder_backend_lvm $be_name
|
|
function cleanup_cinder_backend_lvm {
|
|
local be_name=$1
|
|
|
|
# Campsite rule: leave behind a volume group at least as clean as we found it
|
|
clean_lvm_volume_group $VOLUME_GROUP_NAME-$be_name
|
|
clean_lvm_filter
|
|
}
|
|
|
|
# configure_cinder_backend_lvm - Set config files, create data dirs, etc
|
|
# configure_cinder_backend_lvm $be_name
|
|
function configure_cinder_backend_lvm {
|
|
local be_name=$1
|
|
|
|
iniset $CINDER_CONF $be_name volume_backend_name $be_name
|
|
iniset $CINDER_CONF $be_name volume_driver "cinder.volume.drivers.lvm.LVMVolumeDriver"
|
|
iniset $CINDER_CONF $be_name volume_group $VOLUME_GROUP_NAME-$be_name
|
|
iniset $CINDER_CONF $be_name target_helper "$CINDER_ISCSI_HELPER"
|
|
iniset $CINDER_CONF $be_name lvm_type "$CINDER_LVM_TYPE"
|
|
iniset $CINDER_CONF $be_name volume_clear "$CINDER_VOLUME_CLEAR"
|
|
}
|
|
|
|
# init_cinder_backend_lvm - Initialize volume group
|
|
# init_cinder_backend_lvm $be_name
|
|
function init_cinder_backend_lvm {
|
|
local be_name=$1
|
|
|
|
# Start with a clean volume group
|
|
init_lvm_volume_group $VOLUME_GROUP_NAME-$be_name $VOLUME_BACKING_FILE_SIZE
|
|
}
|
|
|
|
# Restore xtrace
|
|
$_XTRACE_CINDER_LVM
|
|
|
|
# mode: shell-script
|
|
# End:
|