add a glusterfs_native driver + heketi layout backend variant
A bit of refactoring was needed. Change-Id: If101230972b091998b5389a2a71e9357c4256bb4
This commit is contained in:
parent
97d2df17f4
commit
e4567a24f2
|
@ -35,6 +35,6 @@ As part of "unstack.sh":
|
||||||
* To enable Gluster as a backend for Manila:
|
* To enable Gluster as a backend for Manila:
|
||||||
CONFIGURE_GLUSTERFS_MANILA=True
|
CONFIGURE_GLUSTERFS_MANILA=True
|
||||||
Also select specific gluster backend type for manila, default is "glusterfs":
|
Also select specific gluster backend type for manila, default is "glusterfs":
|
||||||
GLUSTERFS_MANILA_DRIVER_TYPE=glusterfs-{nfs{,-heketi},native}
|
GLUSTERFS_MANILA_DRIVER_TYPE=glusterfs-{nfs,native}{,-heketi}
|
||||||
|
|
||||||
* Then run "stack.sh"
|
* Then run "stack.sh"
|
||||||
|
|
|
@ -302,7 +302,7 @@ function _configure_glusterfs_server_in_local_host_for_tls_support {
|
||||||
|
|
||||||
# Setup and configure glusterfs_native.py as the backend share driver for Manila
|
# Setup and configure glusterfs_native.py as the backend share driver for Manila
|
||||||
function _configure_manila_glusterfs_native {
|
function _configure_manila_glusterfs_native {
|
||||||
|
local share_backend=$1
|
||||||
|
|
||||||
# Create necessary files to allow GlusterFS volumes to use TLS features
|
# Create necessary files to allow GlusterFS volumes to use TLS features
|
||||||
local common_name=server.com
|
local common_name=server.com
|
||||||
|
@ -327,11 +327,19 @@ function _configure_manila_glusterfs_native {
|
||||||
local glusterfs_volume_pattern=manila-glusterfs-native-vol-#{size}G-\\\\d+$
|
local glusterfs_volume_pattern=manila-glusterfs-native-vol-#{size}G-\\\\d+$
|
||||||
|
|
||||||
iniset $MANILA_CONF $group_name share_driver $share_driver
|
iniset $MANILA_CONF $group_name share_driver $share_driver
|
||||||
iniset $MANILA_CONF $group_name share_backend_name GLUSTERFSNATIVE
|
|
||||||
iniset $MANILA_CONF $group_name glusterfs_servers $(hostname)
|
iniset $MANILA_CONF $group_name glusterfs_servers $(hostname)
|
||||||
iniset $MANILA_CONF $group_name driver_handles_share_servers False
|
iniset $MANILA_CONF $group_name driver_handles_share_servers False
|
||||||
iniset $MANILA_CONF $group_name glusterfs_volume_pattern $glusterfs_volume_pattern
|
iniset $MANILA_CONF $group_name glusterfs_volume_pattern $glusterfs_volume_pattern
|
||||||
|
|
||||||
|
_configure_native_common $group_name $share_backend
|
||||||
|
}
|
||||||
|
|
||||||
|
function _configure_native_common {
|
||||||
|
local group_name=$1
|
||||||
|
local share_backend=$2
|
||||||
|
|
||||||
|
iniset $MANILA_CONF $group_name share_backend_name $share_backend
|
||||||
|
|
||||||
# Set enabled_share_protocols to be GLUSTERFS that is used by
|
# Set enabled_share_protocols to be GLUSTERFS that is used by
|
||||||
# glusterfs_native driver.
|
# glusterfs_native driver.
|
||||||
iniset $MANILA_CONF DEFAULT enabled_share_protocols GLUSTERFS
|
iniset $MANILA_CONF DEFAULT enabled_share_protocols GLUSTERFS
|
||||||
|
@ -366,7 +374,7 @@ function _configure_setup_heketi {
|
||||||
$GLUSTERFS_PLUGIN_DIR/extras/heketisetup.py -s 1T -n 3 -v -D $(hostname)
|
$GLUSTERFS_PLUGIN_DIR/extras/heketisetup.py -s 1T -n 3 -v -D $(hostname)
|
||||||
}
|
}
|
||||||
|
|
||||||
function _configure_manila_glusterfs_heketi {
|
function _configure_manila_glusterfs_heketi_common {
|
||||||
local group_name=$1
|
local group_name=$1
|
||||||
|
|
||||||
_setup_rootssh
|
_setup_rootssh
|
||||||
|
@ -379,6 +387,18 @@ function _configure_manila_glusterfs_heketi {
|
||||||
iniset $MANILA_CONF $group_name glusterfs_heketi_volume_replica 1
|
iniset $MANILA_CONF $group_name glusterfs_heketi_volume_replica 1
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function _configure_manila_glusterfs_native_heketi {
|
||||||
|
install_package rsync
|
||||||
|
|
||||||
|
local group_name=$1
|
||||||
|
|
||||||
|
iniset $MANILA_CONF $group_name glusterfs_native_CA_cert "$GLUSTERFS_PLUGIN_DIR"/extras/cert/gluster_ca.pem
|
||||||
|
iniset $MANILA_CONF $group_name glusterfs_native_CA_key "$GLUSTERFS_PLUGIN_DIR"/extras/cert/gluster_ca-priv.pem
|
||||||
|
iniset $MANILA_CONF $group_name glusterfs_native_CA_passphrase marharepa
|
||||||
|
|
||||||
|
_configure_manila_glusterfs_heketi_common $group_name
|
||||||
|
}
|
||||||
|
|
||||||
# Configure GlusterFS as a backend for Manila
|
# Configure GlusterFS as a backend for Manila
|
||||||
function configure_manila_backend_glusterfs {
|
function configure_manila_backend_glusterfs {
|
||||||
case "$GLUSTERFS_MANILA_DRIVER_TYPE" in
|
case "$GLUSTERFS_MANILA_DRIVER_TYPE" in
|
||||||
|
@ -387,13 +407,16 @@ function configure_manila_backend_glusterfs {
|
||||||
;;
|
;;
|
||||||
glusterfs-heketi|glusterfs-nfs-heketi)
|
glusterfs-heketi|glusterfs-nfs-heketi)
|
||||||
_configure_manila_glusterfs_nfs_common glusterheketi1 GLUSTERFSHEKETI
|
_configure_manila_glusterfs_nfs_common glusterheketi1 GLUSTERFSHEKETI
|
||||||
_configure_manila_glusterfs_heketi glusterheketi1
|
_configure_manila_glusterfs_heketi_common glusterheketi1
|
||||||
;;
|
;;
|
||||||
glusterfs-native)
|
glusterfs-native)
|
||||||
_configure_manila_glusterfs_native
|
_configure_manila_glusterfs_native GLUSTERFSNATIVE
|
||||||
|
;;
|
||||||
|
glusterfs-native-heketi)
|
||||||
|
_configure_native_common glusterfsnativeheketi1 GLUSTERFSNATIVEHEKETI
|
||||||
|
_configure_manila_glusterfs_native_heketi glusterfsnativeheketi1
|
||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
echo "no configuration hook for GLUSTERFS_MANILA_DRIVER_TYPE=${GLUSTERFS_MANILA_DRIVER_TYPE}"
|
echo "no configuration hook for GLUSTERFS_MANILA_DRIVER_TYPE=${GLUSTERFS_MANILA_DRIVER_TYPE}"
|
||||||
;;
|
|
||||||
esac
|
esac
|
||||||
}
|
}
|
||||||
|
|
|
@ -87,7 +87,7 @@ fi
|
||||||
CONFIGURE_GLUSTERFS_MANILA=${CONFIGURE_GLUSTERFS_MANILA:-False}
|
CONFIGURE_GLUSTERFS_MANILA=${CONFIGURE_GLUSTERFS_MANILA:-False}
|
||||||
|
|
||||||
if [ "$CONFIGURE_GLUSTERFS_MANILA" == "True" ]; then
|
if [ "$CONFIGURE_GLUSTERFS_MANILA" == "True" ]; then
|
||||||
# Set GLUSTERFS_MANILA_DRIVER_TYPE to one of 'glusterfs-{nfs{,-heketi},native}.
|
# Set GLUSTERFS_MANILA_DRIVER_TYPE to one of 'glusterfs-{nfs,native}{,-heketi}.
|
||||||
GLUSTERFS_MANILA_DRIVER_TYPE=${GLUSTERFS_MANILA_DRIVER_TYPE:-glusterfs}
|
GLUSTERFS_MANILA_DRIVER_TYPE=${GLUSTERFS_MANILA_DRIVER_TYPE:-glusterfs}
|
||||||
|
|
||||||
# Set GLUSTERFS_VG_NAME to the name of volume group.
|
# Set GLUSTERFS_VG_NAME to the name of volume group.
|
||||||
|
|
|
@ -0,0 +1,30 @@
|
||||||
|
-----BEGIN ENCRYPTED PRIVATE KEY-----
|
||||||
|
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
|
||||||
|
D+E=
|
||||||
|
-----END ENCRYPTED PRIVATE KEY-----
|
|
@ -0,0 +1,19 @@
|
||||||
|
-----BEGIN CERTIFICATE-----
|
||||||
|
MIIDJTCCAg2gAwIBAgIJANSpdKhWbgKEMA0GCSqGSIb3DQEBCwUAMCkxJzAlBgNV
|
||||||
|
BAMMHk9wZW5TdGFjayBNYW5pbGEgR2x1c3RlckZTIEZUVzAeFw0xNjAzMDMxMDU4
|
||||||
|
NTZaFw0xNjA0MDIxMDU4NTZaMCkxJzAlBgNVBAMMHk9wZW5TdGFjayBNYW5pbGEg
|
||||||
|
R2x1c3RlckZTIEZUVzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAOAX
|
||||||
|
9QE9eCQyk1T6QjAIse+fztcmHXBoO91KZfYJdEcODosqKGl7bNxmGlwx8Pq7P3El
|
||||||
|
/XvYGvF5Xdeub5BYUUMaQc8FMZ5kx1k4/+7hZYakyP+8HwoDj2fmSVI0qhkX0Fwz
|
||||||
|
wkZrkqgVSSZ0e9QI++LegdYjkgwnll8h2ugZWkBcBjYCGvZzYET+C8tmrap+rmC8
|
||||||
|
rfmMSlx7PFIO5IU2uayUNkkkKFoNnx/Suhx2CXsyr5SAoR82Yux2QZp0zt0pI5A8
|
||||||
|
tSRGAXTu8whSsQXUXinjDU5rPJ2MSi0vLTn2P5vN9xjAv4TU02EGfB1JHJK76FyD
|
||||||
|
rBYSwwDX0IhPubdPnQkCAwEAAaNQME4wHQYDVR0OBBYEFFnzCxSGZdgYizWBdc6/
|
||||||
|
fThm8Zr7MB8GA1UdIwQYMBaAFFnzCxSGZdgYizWBdc6/fThm8Zr7MAwGA1UdEwQF
|
||||||
|
MAMBAf8wDQYJKoZIhvcNAQELBQADggEBACCR44DLJlwL51OEHdf8iU7VSAAH+2Az
|
||||||
|
vr7+1yDlIJUJGW4Yei28FQZXWTGVrQXUvRPDdNswFWLPDUFGkjAVSTodTwKZDkzF
|
||||||
|
3dUp9uOIFaMf0LstNLYWVpmwx4wdaT3dGsDVUPnqiuO1wvfVgZkPszna67cseuDY
|
||||||
|
hinCuXQSNyH8IwvR6u9j5QeKV90Xm1XeRCLPg7wcZsqbFwpdz2l1InybSd1KuBpR
|
||||||
|
po09IpN3QX1gcDoGD7N7Fvp/sooxbca06NVwnTbpKQW7FXyYB97I2ThvQ2tmRejn
|
||||||
|
4QCiFRr7dCWNEVD4HXNBZ7921gYIqKYjj+gDGA+UmGep8Oq/MqVDUX0=
|
||||||
|
-----END CERTIFICATE-----
|
|
@ -28,8 +28,18 @@ for env_var in ${DEVSTACK_LOCAL_CONFIG// / }; do
|
||||||
export $env_var;
|
export $env_var;
|
||||||
done
|
done
|
||||||
|
|
||||||
if [[ "$GLUSTERFS_MANILA_DRIVER_TYPE" == "glusterfs-native" ]]; then
|
if [[ "$GLUSTERFS_MANILA_DRIVER_TYPE" =~ "glusterfs-native" ]]; then
|
||||||
local BACKEND_NAME="GLUSTERNATIVE"
|
case "$GLUSTERFS_MANILA_DRIVER_TYPE" in
|
||||||
|
glusterfs-native)
|
||||||
|
local BACKEND_NAME="GLUSTERFSNATIVE"
|
||||||
|
;;
|
||||||
|
glusterfs-native-heketi)
|
||||||
|
local BACKEND_NAME="GLUSTERFNATIVEHEKETI"
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
echo "no BACKEND_NAME for GLUSTERFS_MANILA_DRIVER_TYPE=${GLUSTERFS_MANILA_DRIVER_TYPE}"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
iniset $TEMPEST_CONFIG share enable_protocols glusterfs
|
iniset $TEMPEST_CONFIG share enable_protocols glusterfs
|
||||||
iniset $TEMPEST_CONFIG share storage_protocol glusterfs
|
iniset $TEMPEST_CONFIG share storage_protocol glusterfs
|
||||||
# Disable tempest config option that enables creation of 'ip' type access
|
# Disable tempest config option that enables creation of 'ip' type access
|
||||||
|
|
Loading…
Reference in New Issue