| ... | ... |
@@ -27,6 +27,12 @@ set +o xtrace |
| 27 | 27 |
|
| 28 | 28 |
# set up default driver |
| 29 | 29 |
CINDER_DRIVER=${CINDER_DRIVER:-default}
|
| 30 |
+CINDER_PLUGINS=$TOP_DIR/lib/cinder_plugins |
|
| 31 |
+ |
|
| 32 |
+# grab plugin config if specified via cinder_driver |
|
| 33 |
+if [[ -r $CINDER_PLUGINS/$CINDER_DRIVER ]]; then |
|
| 34 |
+ source $CINDER_PLUGINS/$CINDER_DRIVER |
|
| 35 |
+fi |
|
| 30 | 36 |
|
| 31 | 37 |
# set up default directories |
| 32 | 38 |
CINDER_DIR=$DEST/cinder |
| ... | ... |
@@ -308,42 +314,8 @@ function configure_cinder() {
|
| 308 | 308 |
setup_colorized_logging $CINDER_CONF DEFAULT "project_id" "user_id" |
| 309 | 309 |
fi |
| 310 | 310 |
|
| 311 |
- if [ "$CINDER_DRIVER" == "XenAPINFS" ]; then |
|
| 312 |
- ( |
|
| 313 |
- set -u |
|
| 314 |
- iniset $CINDER_CONF DEFAULT volume_driver "cinder.volume.drivers.xenapi.sm.XenAPINFSDriver" |
|
| 315 |
- iniset $CINDER_CONF DEFAULT xenapi_connection_url "$CINDER_XENAPI_CONNECTION_URL" |
|
| 316 |
- iniset $CINDER_CONF DEFAULT xenapi_connection_username "$CINDER_XENAPI_CONNECTION_USERNAME" |
|
| 317 |
- iniset $CINDER_CONF DEFAULT xenapi_connection_password "$CINDER_XENAPI_CONNECTION_PASSWORD" |
|
| 318 |
- iniset $CINDER_CONF DEFAULT xenapi_nfs_server "$CINDER_XENAPI_NFS_SERVER" |
|
| 319 |
- iniset $CINDER_CONF DEFAULT xenapi_nfs_serverpath "$CINDER_XENAPI_NFS_SERVERPATH" |
|
| 320 |
- ) |
|
| 321 |
- elif [ "$CINDER_DRIVER" == "nfs" ]; then |
|
| 322 |
- iniset $CINDER_CONF DEFAULT volume_driver "cinder.volume.drivers.nfs.NfsDriver" |
|
| 323 |
- iniset $CINDER_CONF DEFAULT nfs_shares_config "$CINDER_CONF_DIR/nfs_shares.conf" |
|
| 324 |
- echo "$CINDER_NFS_SERVERPATH" | sudo tee "$CINDER_CONF_DIR/nfs_shares.conf" |
|
| 325 |
- sudo chmod 666 $CINDER_CONF_DIR/nfs_shares.conf |
|
| 326 |
- elif [ "$CINDER_DRIVER" == "sheepdog" ]; then |
|
| 327 |
- iniset $CINDER_CONF DEFAULT volume_driver "cinder.volume.drivers.sheepdog.SheepdogDriver" |
|
| 328 |
- elif [ "$CINDER_DRIVER" == "glusterfs" ]; then |
|
| 329 |
- # To use glusterfs, set the following in localrc: |
|
| 330 |
- # CINDER_DRIVER=glusterfs |
|
| 331 |
- # CINDER_GLUSTERFS_SHARES="127.0.0.1:/vol1;127.0.0.1:/vol2" |
|
| 332 |
- # Shares are <host>:<volume> and separated by semicolons. |
|
| 333 |
- |
|
| 334 |
- iniset $CINDER_CONF DEFAULT volume_driver "cinder.volume.drivers.glusterfs.GlusterfsDriver" |
|
| 335 |
- iniset $CINDER_CONF DEFAULT glusterfs_shares_config "$CINDER_CONF_DIR/glusterfs_shares" |
|
| 336 |
- touch $CINDER_CONF_DIR/glusterfs_shares |
|
| 337 |
- if [ ! -z "$CINDER_GLUSTERFS_SHARES" ]; then |
|
| 338 |
- CINDER_GLUSTERFS_SHARES=$(echo $CINDER_GLUSTERFS_SHARES | tr ";" "\n") |
|
| 339 |
- echo "$CINDER_GLUSTERFS_SHARES" > $CINDER_CONF_DIR/glusterfs_shares |
|
| 340 |
- fi |
|
| 341 |
- elif [ "$CINDER_DRIVER" == "vsphere" ]; then |
|
| 342 |
- echo_summary "Using VMware vCenter driver" |
|
| 343 |
- iniset $CINDER_CONF DEFAULT vmware_host_ip "$VMWAREAPI_IP" |
|
| 344 |
- iniset $CINDER_CONF DEFAULT vmware_host_username "$VMWAREAPI_USER" |
|
| 345 |
- iniset $CINDER_CONF DEFAULT vmware_host_password "$VMWAREAPI_PASSWORD" |
|
| 346 |
- iniset $CINDER_CONF DEFAULT volume_driver "cinder.volume.drivers.vmware.vmdk.VMwareVcVmdkDriver" |
|
| 311 |
+ if [[ -r $CINDER_PLUGINS/$CINDER_DRIVER ]]; then |
|
| 312 |
+ configure_cinder_driver |
|
| 347 | 313 |
fi |
| 348 | 314 |
|
| 349 | 315 |
if [[ is_fedora && $DISTRO =~ (rhel6) ]]; then |
| 350 | 316 |
new file mode 100644 |
| ... | ... |
@@ -0,0 +1,44 @@ |
| 0 |
+# lib/cinder_plugins/XenAPINFS |
|
| 1 |
+# Configure the XenAPINFS driver |
|
| 2 |
+ |
|
| 3 |
+# Enable with: |
|
| 4 |
+# |
|
| 5 |
+# CINDER_DRIVER=XenAPINFS |
|
| 6 |
+ |
|
| 7 |
+# Dependencies: |
|
| 8 |
+# |
|
| 9 |
+# - ``functions`` file |
|
| 10 |
+# - ``cinder`` configurations |
|
| 11 |
+ |
|
| 12 |
+# configure_cinder_driver - make configuration changes, including those to other services |
|
| 13 |
+ |
|
| 14 |
+# Save trace setting |
|
| 15 |
+MY_XTRACE=$(set +o | grep xtrace) |
|
| 16 |
+set +o xtrace |
|
| 17 |
+ |
|
| 18 |
+ |
|
| 19 |
+# Defaults |
|
| 20 |
+# -------- |
|
| 21 |
+ |
|
| 22 |
+# Set up default directories |
|
| 23 |
+ |
|
| 24 |
+ |
|
| 25 |
+# Entry Points |
|
| 26 |
+# ------------ |
|
| 27 |
+ |
|
| 28 |
+# configure_cinder_driver - Set config files, create data dirs, etc |
|
| 29 |
+function configure_cinder_driver() {
|
|
| 30 |
+ iniset $CINDER_CONF DEFAULT volume_driver "cinder.volume.drivers.xenapi.sm.XenAPINFSDriver" |
|
| 31 |
+ iniset $CINDER_CONF DEFAULT xenapi_connection_url "$CINDER_XENAPI_CONNECTION_URL" |
|
| 32 |
+ iniset $CINDER_CONF DEFAULT xenapi_connection_username "$CINDER_XENAPI_CONNECTION_USERNAME" |
|
| 33 |
+ iniset $CINDER_CONF DEFAULT xenapi_connection_password "$CINDER_XENAPI_CONNECTION_PASSWORD" |
|
| 34 |
+ iniset $CINDER_CONF DEFAULT xenapi_nfs_server "$CINDER_XENAPI_NFS_SERVER" |
|
| 35 |
+ iniset $CINDER_CONF DEFAULT xenapi_nfs_serverpath "$CINDER_XENAPI_NFS_SERVERPATH" |
|
| 36 |
+} |
|
| 37 |
+ |
|
| 38 |
+# Restore xtrace |
|
| 39 |
+$MY_XTRACE |
|
| 40 |
+ |
|
| 41 |
+# Local variables: |
|
| 42 |
+# mode: shell-script |
|
| 43 |
+# End: |
| 0 | 44 |
new file mode 100644 |
| ... | ... |
@@ -0,0 +1,50 @@ |
| 0 |
+# lib/cinder_plugins/glusterfs |
|
| 1 |
+# Configure the glusterfs driver |
|
| 2 |
+ |
|
| 3 |
+# Enable with: |
|
| 4 |
+# |
|
| 5 |
+# CINDER_DRIVER=glusterfs |
|
| 6 |
+ |
|
| 7 |
+# Dependencies: |
|
| 8 |
+# |
|
| 9 |
+# - ``functions`` file |
|
| 10 |
+# - ``cinder`` configurations |
|
| 11 |
+ |
|
| 12 |
+# configure_cinder_driver - make configuration changes, including those to other services |
|
| 13 |
+ |
|
| 14 |
+# Save trace setting |
|
| 15 |
+MY_XTRACE=$(set +o | grep xtrace) |
|
| 16 |
+set +o xtrace |
|
| 17 |
+ |
|
| 18 |
+ |
|
| 19 |
+# Defaults |
|
| 20 |
+# -------- |
|
| 21 |
+ |
|
| 22 |
+# Set up default directories |
|
| 23 |
+ |
|
| 24 |
+ |
|
| 25 |
+# Entry Points |
|
| 26 |
+# ------------ |
|
| 27 |
+ |
|
| 28 |
+# configure_cinder_driver - Set config files, create data dirs, etc |
|
| 29 |
+function configure_cinder_driver() {
|
|
| 30 |
+ # To use glusterfs, set the following in localrc: |
|
| 31 |
+ # CINDER_DRIVER=glusterfs |
|
| 32 |
+ # CINDER_GLUSTERFS_SHARES="127.0.0.1:/vol1;127.0.0.1:/vol2" |
|
| 33 |
+ # Shares are <host>:<volume> and separated by semicolons. |
|
| 34 |
+ |
|
| 35 |
+ iniset $CINDER_CONF DEFAULT volume_driver "cinder.volume.drivers.glusterfs.GlusterfsDriver" |
|
| 36 |
+ iniset $CINDER_CONF DEFAULT glusterfs_shares_config "$CINDER_CONF_DIR/glusterfs_shares" |
|
| 37 |
+ touch $CINDER_CONF_DIR/glusterfs_shares |
|
| 38 |
+ if [ ! -z "$CINDER_GLUSTERFS_SHARES" ]; then |
|
| 39 |
+ CINDER_GLUSTERFS_SHARES=$(echo $CINDER_GLUSTERFS_SHARES | tr ";" "\n") |
|
| 40 |
+ echo "$CINDER_GLUSTERFS_SHARES" > $CINDER_CONF_DIR/glusterfs_shares |
|
| 41 |
+ fi |
|
| 42 |
+} |
|
| 43 |
+ |
|
| 44 |
+# Restore xtrace |
|
| 45 |
+$MY_XTRACE |
|
| 46 |
+ |
|
| 47 |
+# Local variables: |
|
| 48 |
+# mode: shell-script |
|
| 49 |
+# End: |
| 0 | 50 |
new file mode 100644 |
| ... | ... |
@@ -0,0 +1,42 @@ |
| 0 |
+# lib/cinder_plugins/nfs |
|
| 1 |
+# Configure the nfs driver |
|
| 2 |
+ |
|
| 3 |
+# Enable with: |
|
| 4 |
+# |
|
| 5 |
+# CINDER_DRIVER=nfs |
|
| 6 |
+ |
|
| 7 |
+# Dependencies: |
|
| 8 |
+# |
|
| 9 |
+# - ``functions`` file |
|
| 10 |
+# - ``cinder`` configurations |
|
| 11 |
+ |
|
| 12 |
+# configure_cinder_driver - make configuration changes, including those to other services |
|
| 13 |
+ |
|
| 14 |
+# Save trace setting |
|
| 15 |
+MY_XTRACE=$(set +o | grep xtrace) |
|
| 16 |
+set +o xtrace |
|
| 17 |
+ |
|
| 18 |
+ |
|
| 19 |
+# Defaults |
|
| 20 |
+# -------- |
|
| 21 |
+ |
|
| 22 |
+# Set up default directories |
|
| 23 |
+ |
|
| 24 |
+ |
|
| 25 |
+# Entry Points |
|
| 26 |
+# ------------ |
|
| 27 |
+ |
|
| 28 |
+# configure_cinder_driver - Set config files, create data dirs, etc |
|
| 29 |
+function configure_cinder_driver() {
|
|
| 30 |
+ iniset $CINDER_CONF DEFAULT volume_driver "cinder.volume.drivers.nfs.NfsDriver" |
|
| 31 |
+ iniset $CINDER_CONF DEFAULT nfs_shares_config "$CINDER_CONF_DIR/nfs_shares.conf" |
|
| 32 |
+ echo "$CINDER_NFS_SERVERPATH" | sudo tee "$CINDER_CONF_DIR/nfs_shares.conf" |
|
| 33 |
+ sudo chmod 660 $CINDER_CONF_DIR/nfs_shares.conf |
|
| 34 |
+} |
|
| 35 |
+ |
|
| 36 |
+# Restore xtrace |
|
| 37 |
+$MY_XTRACE |
|
| 38 |
+ |
|
| 39 |
+# Local variables: |
|
| 40 |
+# mode: shell-script |
|
| 41 |
+# End: |
| 0 | 42 |
new file mode 100644 |
| ... | ... |
@@ -0,0 +1,39 @@ |
| 0 |
+# lib/cinder_plugins/sheepdog |
|
| 1 |
+# Configure the sheepdog driver |
|
| 2 |
+ |
|
| 3 |
+# Enable with: |
|
| 4 |
+# |
|
| 5 |
+# CINDER_DRIVER=sheepdog |
|
| 6 |
+ |
|
| 7 |
+# Dependencies: |
|
| 8 |
+# |
|
| 9 |
+# - ``functions`` file |
|
| 10 |
+# - ``cinder`` configurations |
|
| 11 |
+ |
|
| 12 |
+# configure_cinder_driver - make configuration changes, including those to other services |
|
| 13 |
+ |
|
| 14 |
+# Save trace setting |
|
| 15 |
+MY_XTRACE=$(set +o | grep xtrace) |
|
| 16 |
+set +o xtrace |
|
| 17 |
+ |
|
| 18 |
+ |
|
| 19 |
+# Defaults |
|
| 20 |
+# -------- |
|
| 21 |
+ |
|
| 22 |
+# Set up default directories |
|
| 23 |
+ |
|
| 24 |
+ |
|
| 25 |
+# Entry Points |
|
| 26 |
+# ------------ |
|
| 27 |
+ |
|
| 28 |
+# configure_cinder_driver - Set config files, create data dirs, etc |
|
| 29 |
+function configure_cinder_driver() {
|
|
| 30 |
+ iniset $CINDER_CONF DEFAULT volume_driver "cinder.volume.drivers.sheepdog.SheepdogDriver" |
|
| 31 |
+} |
|
| 32 |
+ |
|
| 33 |
+# Restore xtrace |
|
| 34 |
+$MY_XTRACE |
|
| 35 |
+ |
|
| 36 |
+# Local variables: |
|
| 37 |
+# mode: shell-script |
|
| 38 |
+# End: |
| 0 | 39 |
new file mode 100644 |
| ... | ... |
@@ -0,0 +1,48 @@ |
| 0 |
+# lib/cinder_plugins/solidfire |
|
| 1 |
+# Configure the solidfire driver |
|
| 2 |
+ |
|
| 3 |
+# Enable with: |
|
| 4 |
+# |
|
| 5 |
+# CINDER_DRIVER=solidfire |
|
| 6 |
+ |
|
| 7 |
+# Dependencies: |
|
| 8 |
+# |
|
| 9 |
+# - ``functions`` file |
|
| 10 |
+# - ``cinder`` configurations |
|
| 11 |
+ |
|
| 12 |
+# configure_cinder_driver - make configuration changes, including those to other services |
|
| 13 |
+ |
|
| 14 |
+# Save trace setting |
|
| 15 |
+MY_XTRACE=$(set +o | grep xtrace) |
|
| 16 |
+set +o xtrace |
|
| 17 |
+ |
|
| 18 |
+ |
|
| 19 |
+# Defaults |
|
| 20 |
+# -------- |
|
| 21 |
+ |
|
| 22 |
+# Set up default directories |
|
| 23 |
+ |
|
| 24 |
+ |
|
| 25 |
+# Entry Points |
|
| 26 |
+# ------------ |
|
| 27 |
+ |
|
| 28 |
+# configure_cinder_driver - Set config files, create data dirs, etc |
|
| 29 |
+function configure_cinder_driver() {
|
|
| 30 |
+ # To use solidfire, set the following in localrc: |
|
| 31 |
+ # CINDER_DRIVER=solidfire |
|
| 32 |
+ # SAN_IP=<mvip> |
|
| 33 |
+ # SAN_LOGIN=<cluster-admin-account> |
|
| 34 |
+ # SAN_PASSWORD=<cluster-admin-password> |
|
| 35 |
+ |
|
| 36 |
+ iniset $CINDER_CONF DEFAULT volume_driver "cinder.volume.drivers.solidfire.SolidFireDriver" |
|
| 37 |
+ iniset $CINDER_CONF DEFAULT san_ip $SAN_IP |
|
| 38 |
+ iniset $CINDER_CONF DEFAULT san_login $SAN_LOGIN |
|
| 39 |
+ iniset $CINDER_CONF DEFAULT san_password $SAN_PASSWORD |
|
| 40 |
+} |
|
| 41 |
+ |
|
| 42 |
+# Restore xtrace |
|
| 43 |
+$MY_XTRACE |
|
| 44 |
+ |
|
| 45 |
+# Local variables: |
|
| 46 |
+# mode: shell-script |
|
| 47 |
+# End: |
| 0 | 48 |
new file mode 100644 |
| ... | ... |
@@ -0,0 +1,42 @@ |
| 0 |
+# lib/cinder_plugins/vsphere |
|
| 1 |
+# Configure the vsphere driver |
|
| 2 |
+ |
|
| 3 |
+# Enable with: |
|
| 4 |
+# |
|
| 5 |
+# CINDER_DRIVER=vsphere |
|
| 6 |
+ |
|
| 7 |
+# Dependencies: |
|
| 8 |
+# |
|
| 9 |
+# - ``functions`` file |
|
| 10 |
+# - ``cinder`` configurations |
|
| 11 |
+ |
|
| 12 |
+# configure_cinder_driver - make configuration changes, including those to other services |
|
| 13 |
+ |
|
| 14 |
+# Save trace setting |
|
| 15 |
+MY_XTRACE=$(set +o | grep xtrace) |
|
| 16 |
+set +o xtrace |
|
| 17 |
+ |
|
| 18 |
+ |
|
| 19 |
+# Defaults |
|
| 20 |
+# -------- |
|
| 21 |
+ |
|
| 22 |
+# Set up default directories |
|
| 23 |
+ |
|
| 24 |
+ |
|
| 25 |
+# Entry Points |
|
| 26 |
+# ------------ |
|
| 27 |
+ |
|
| 28 |
+# configure_cinder_driver - Set config files, create data dirs, etc |
|
| 29 |
+function configure_cinder_driver() {
|
|
| 30 |
+ iniset $CINDER_CONF DEFAULT vmware_host_ip "$VMWAREAPI_IP" |
|
| 31 |
+ iniset $CINDER_CONF DEFAULT vmware_host_username "$VMWAREAPI_USER" |
|
| 32 |
+ iniset $CINDER_CONF DEFAULT vmware_host_password "$VMWAREAPI_PASSWORD" |
|
| 33 |
+ iniset $CINDER_CONF DEFAULT volume_driver "cinder.volume.drivers.vmware.vmdk.VMwareVcVmdkDriver" |
|
| 34 |
+} |
|
| 35 |
+ |
|
| 36 |
+# Restore xtrace |
|
| 37 |
+$MY_XTRACE |
|
| 38 |
+ |
|
| 39 |
+# Local variables: |
|
| 40 |
+# mode: shell-script |
|
| 41 |
+# End: |