2014-12-05 14:25:28 -05:00
|
|
|
#!/bin/bash
|
|
|
|
#
|
2014-07-03 10:46:57 -05:00
|
|
|
# lib/cinder_backends/lvm
|
|
|
|
# Configure the LVM backend
|
|
|
|
|
|
|
|
# Enable with:
|
|
|
|
#
|
|
|
|
# CINDER_ENABLED_BACKENDS+=,lvm:lvmname
|
|
|
|
|
|
|
|
# Dependencies:
|
|
|
|
#
|
|
|
|
# - ``functions`` file
|
|
|
|
# - ``cinder`` configurations
|
|
|
|
|
|
|
|
# CINDER_CONF
|
|
|
|
# DATA_DIR
|
2014-10-31 15:01:29 -04:00
|
|
|
# VOLUME_GROUP_NAME
|
2014-07-03 10:46:57 -05:00
|
|
|
|
|
|
|
# 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
|
2015-10-13 11:03:03 +11:00
|
|
|
_XTRACE_CINDER_LVM=$(set +o | grep xtrace)
|
2014-07-03 10:46:57 -05:00
|
|
|
set +o xtrace
|
|
|
|
|
|
|
|
|
|
|
|
# TODO: resurrect backing device...need to know how to set values
|
|
|
|
#VOLUME_BACKING_DEVICE=${VOLUME_BACKING_DEVICE:-}
|
|
|
|
|
|
|
|
# Entry Points
|
|
|
|
# ------------
|
|
|
|
|
2014-10-31 15:01:29 -04:00
|
|
|
# cleanup_cinder_backend_lvm - Delete volume group and remove backing file
|
|
|
|
# cleanup_cinder_backend_lvm $be_name
|
2014-07-03 10:46:57 -05:00
|
|
|
function cleanup_cinder_backend_lvm {
|
|
|
|
local be_name=$1
|
|
|
|
|
|
|
|
# Campsite rule: leave behind a volume group at least as clean as we found it
|
2014-10-31 15:01:29 -04:00
|
|
|
clean_lvm_volume_group $VOLUME_GROUP_NAME-$be_name
|
2015-04-23 09:12:59 -07:00
|
|
|
clean_lvm_filter
|
2014-07-03 10:46:57 -05:00
|
|
|
}
|
|
|
|
|
|
|
|
# configure_cinder_backend_lvm - Set config files, create data dirs, etc
|
2014-10-31 15:01:29 -04:00
|
|
|
# configure_cinder_backend_lvm $be_name
|
2014-07-03 10:46:57 -05:00
|
|
|
function configure_cinder_backend_lvm {
|
|
|
|
local be_name=$1
|
|
|
|
|
|
|
|
iniset $CINDER_CONF $be_name volume_backend_name $be_name
|
2015-01-22 08:25:59 -08:00
|
|
|
iniset $CINDER_CONF $be_name volume_driver "cinder.volume.drivers.lvm.LVMVolumeDriver"
|
2014-10-31 15:01:29 -04:00
|
|
|
iniset $CINDER_CONF $be_name volume_group $VOLUME_GROUP_NAME-$be_name
|
2018-02-25 14:48:05 +00:00
|
|
|
iniset $CINDER_CONF $be_name target_helper "$CINDER_ISCSI_HELPER"
|
2015-05-12 17:28:59 -06:00
|
|
|
iniset $CINDER_CONF $be_name lvm_type "$CINDER_LVM_TYPE"
|
2014-07-03 10:46:57 -05:00
|
|
|
|
|
|
|
}
|
|
|
|
|
2014-10-31 15:01:29 -04:00
|
|
|
# init_cinder_backend_lvm - Initialize volume group
|
|
|
|
# init_cinder_backend_lvm $be_name
|
2014-07-03 10:46:57 -05:00
|
|
|
function init_cinder_backend_lvm {
|
|
|
|
local be_name=$1
|
|
|
|
|
|
|
|
# Start with a clean volume group
|
2014-10-31 15:01:29 -04:00
|
|
|
init_lvm_volume_group $VOLUME_GROUP_NAME-$be_name $VOLUME_BACKING_FILE_SIZE
|
2014-07-03 10:46:57 -05:00
|
|
|
}
|
|
|
|
|
|
|
|
# Restore xtrace
|
2015-10-13 11:03:03 +11:00
|
|
|
$_XTRACE_CINDER_LVM
|
2014-07-03 10:46:57 -05:00
|
|
|
|
|
|
|
# mode: shell-script
|
|
|
|
# End:
|