Enable multiple ceph filesystems for manila
In a lab setting it can be useful to allow multiple manila devstacks, each with its own CephFS filesystem, to share a common REMOTE_CEPH cluster. Parameterize the name of the CephFS filesystem that devstack creates and enable creation of multiple filesystems if appropriate variables are set in local.conf. Note that since separate filesystems require separate data and metadata pools, one also needs to set values for the extant CEPHFS_DATA_POOL and CEPHFS_METADATA_POOL parameters. Change-Id: I67a88b75d06f04621cb0dac726f307a06ee6113b
This commit is contained in:
parent
7540a7946a
commit
28ae5aeae3
|
@ -69,8 +69,17 @@ CINDER_CEPH_UUID=${CINDER_CEPH_UUID:-$(uuidgen)}
|
|||
|
||||
# Manila
|
||||
CEPHFS_POOL_PG=${CEPHFS_POOL_PG:-8}
|
||||
|
||||
# Multiple filesystems enable more than one devstack to share
|
||||
# the same REMOTE_CEPH cluster. Note that in addition to setting
|
||||
# CEPHFS_MULTIPLE_FILESYSTEMS and REMOTE_CEPH, each devstack
|
||||
# needs to set distinct values for CEPHFS_FILESYSTEM,
|
||||
# CEPHFS_METADATA_POOL, and CEPHFS_DATA_POOL.
|
||||
CEPHFS_MULTIPLE_FILESYSTEMS=${CEPHFS_MULTIPLE_FILESYSTEMS:-False}
|
||||
CEPHFS_FILESYSTEM=${CEPHFS_FILESYSTEM:-cephfs}
|
||||
CEPHFS_METADATA_POOL=${CEPHFS_METADATA_POOL:-cephfs_metadata}
|
||||
CEPHFS_DATA_POOL=${CEPHFS_DATA_POOL:-cephfs_data}
|
||||
|
||||
MANILA_CEPH_DRIVER=${MANILA_CEPH_DRIVER:-cephfsnative}
|
||||
MANILA_CEPH_USER=${MANILA_CEPH_USER:-manila}
|
||||
MDS_ID=${MDS_ID:-a}
|
||||
|
@ -214,6 +223,8 @@ function cleanup_ceph_remote {
|
|||
--yes-i-really-really-mean-it > /dev/null 2>&1
|
||||
fi
|
||||
if is_ceph_enabled_for_service manila; then
|
||||
sudo ceph -c ${CEPH_CONF_FILE} fs rm $CEPHFS_FILESYSTEM \
|
||||
--yes-i-really-mean-it
|
||||
sudo ceph osd pool delete $CEPHFS_METADATA_POOL $CEPHFS_METADATA_POOL \
|
||||
--yes-i-really-really-mean-it > /dev/null 2>&1
|
||||
sudo ceph osd pool delete $CEPHFS_DATA_POOL $CEPHFS_DATA_POOL \
|
||||
|
@ -481,7 +492,11 @@ function configure_ceph_manila {
|
|||
${CEPHFS_POOL_PG}
|
||||
sudo ceph -c ${CEPH_CONF_FILE} osd pool create ${CEPHFS_DATA_POOL} \
|
||||
${CEPHFS_POOL_PG}
|
||||
sudo ceph -c ${CEPH_CONF_FILE} fs new cephfs ${CEPHFS_METADATA_POOL} \
|
||||
if [[ ${CEPHFS_MULTIPLE_FILESYSTEMS} == 'True' ]]; then
|
||||
sudo ceph -c ${CEPH_CONF_FILE} fs flag set enable_multiple true \
|
||||
--yes-i-really-mean-it
|
||||
fi
|
||||
sudo ceph -c ${CEPH_CONF_FILE} fs new ${CEPHFS_FILESYSTEM} ${CEPHFS_METADATA_POOL} \
|
||||
${CEPHFS_DATA_POOL}
|
||||
sudo ceph -c ${CEPH_CONF_FILE} auth get-or-create \
|
||||
client.${MANILA_CEPH_USER} \
|
||||
|
|
Loading…
Reference in New Issue