Shared filesystem management project for OpenStack.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

settings 11KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212
  1. # Setting configuration file for manila services
  2. # ----------------------------------------------
  3. # 1) It is possible to set any custom opt to any config group using following:
  4. # $ export MANILA_OPTGROUP_foo_bar=value
  5. # where 'foo' is name of config group and 'bar' is name of option.
  6. #
  7. # 2) 'MANILA_CONFIGURE_GROUPS' contains list of config group names used to create
  8. # config groups, but 'MANILA_ENABLED_BACKENDS' is used to set config groups as
  9. # Manila share back ends. Both can be set like following:
  10. # $ export MANILA_ENABLED_BACKENDS=foo,bar
  11. # where 'foo' and 'bar' are names of config groups with opts for some share
  12. # drivers. By default they are equal. Also be attentive, if you modify both,
  13. # make sure 'MANILA_CONFIGURE_GROUPS' contains all values from
  14. # 'MANILA_ENABLED_BACKENDS'.
  15. # DEFAULT group is always defined, no need to specify it within 'MANILA_CONFIGURE_GROUPS'.
  16. #
  17. # 3) Two default backends are used for compatibility with previous approach.
  18. # They have same configuration except name of backend. Both use generic driver.
  19. # They can be enabled by adding values of following env vars:
  20. # 'MANILA_BACKEND1_CONFIG_GROUP_NAME' and 'MANILA_BACKEND2_CONFIG_GROUP_NAME'
  21. # to the env var 'MANILA_ENABLED_BACKENDS' or will be enabled
  22. # if 'MANILA_ENABLED_BACKENDS' is empty.
  23. #
  24. # 4) 'CINDER_OVERSUBSCRIPTION_RATIO' - manila devstack-plugin env var that is
  25. # useful for all share drivers that use Cinder. If it is set, then it will be
  26. # applied for two Cinder options: 'max_over_subscription_ratio' and
  27. # 'lvm_max_over_subscription_ratio'. Should be float. Example:
  28. # CINDER_OVERSUBSCRIPTION_RATIO=20.0
  29. # Defaults
  30. # --------
  31. MANILA_GIT_BASE=${MANILA_GIT_BASE:-https://git.openstack.org}
  32. MANILA_REPO_ROOT=${MANILA_REPO_ROOT:-openstack}
  33. MANILACLIENT_REPO=${MANILA_GIT_BASE}/${MANILA_REPO_ROOT}/python-manilaclient.git
  34. MANILACLIENT_BRANCH=${MANILACLIENT_BRANCH:-master}
  35. # Set up default directories
  36. MANILA_DIR=${MANILA_DIR:=$DEST/manila}
  37. MANILA_LOCK_PATH=${MANILA_LOCK_PATH:=$OSLO_LOCK_PATH}
  38. MANILA_LOCK_PATH=${MANILA_LOCK_PATH:=$MANILA_DIR/manila_locks}
  39. MANILACLIENT_DIR=${MANILACLIENT_DIR:=$DEST/python-manilaclient}
  40. MANILA_STATE_PATH=${MANILA_STATE_PATH:=$DATA_DIR/manila}
  41. MANILA_AUTH_CACHE_DIR=${MANILA_AUTH_CACHE_DIR:-/var/cache/manila}
  42. MANILA_CONF_DIR=${MANILA_CONF_DIR:-/etc/manila}
  43. MANILA_CONF=$MANILA_CONF_DIR/manila.conf
  44. MANILA_API_PASTE_INI=$MANILA_CONF_DIR/api-paste.ini
  45. # Set this to False to leave "default_share_type" and
  46. # "default_share_group_type" configuration options empty.
  47. MANILA_CONFIGURE_DEFAULT_TYPES=${MANILA_CONFIGURE_DEFAULT_TYPES:-True}
  48. MANILA_DEFAULT_SHARE_TYPE=${MANILA_DEFAULT_SHARE_TYPE:-default}
  49. # MANILA_DEFAULT_SHARE_TYPE_EXTRA_SPECS is expected to contain extra specs key-value pairs,
  50. # that should be assigned to default share type. Both - qualified and unqualified extra specs are supported.
  51. # Pairs are separated by spaces, value is assigned to key using sign of equality. Examples:
  52. # MANILA_DEFAULT_SHARE_TYPE_EXTRA_SPECS='foo=bar'
  53. # MANILA_DEFAULT_SHARE_TYPE_EXTRA_SPECS='foo=bar quuz=xyzzy'
  54. # MANILA_DEFAULT_SHARE_TYPE_EXTRA_SPECS='foo=bar quuz=xyzzy fakeprefix:baz=waldo'
  55. MANILA_DEFAULT_SHARE_TYPE_EXTRA_SPECS=${MANILA_DEFAULT_SHARE_TYPE_EXTRA_SPECS:-''}
  56. MANILA_DHSS_TRUE_SHARE_TYPE_EXTRA_SPECS=${MANILA_DHSS_TRUE_SHARE_TYPE_EXTRA_SPECS:-$MANILA_DEFAULT_SHARE_TYPE_EXTRA_SPECS}
  57. MANILA_DHSS_FALSE_SHARE_TYPE_EXTRA_SPECS=${MANILA_DHSS_FALSE_SHARE_TYPE_EXTRA_SPECS:-$MANILA_DEFAULT_SHARE_TYPE_EXTRA_SPECS}
  58. # Share groups and their specs
  59. MANILA_DEFAULT_SHARE_GROUP_TYPE=${MANILA_DEFAULT_SHARE_GROUP_TYPE:-default}
  60. # MANILA_DEFAULT_SHARE_GROUP_TYPE_SPECS is expected to contain key-value pairs,
  61. # that should be assigned to default share group type. Both - qualified and unqualified specs are supported.
  62. # Pairs are separated by spaces, value is assigned to key using sign of equality. Examples:
  63. # MANILA_DEFAULT_SHARE_GROUP_TYPE_SPECS='foo=bar'
  64. # MANILA_DEFAULT_SHARE_GROUP_TYPE_SPECS='foo=bar quuz=xyzzy'
  65. # MANILA_DEFAULT_SHARE_GROUP_TYPE_SPECS='foo=bar quuz=xyzzy fakeprefix:baz=waldo'
  66. MANILA_DEFAULT_SHARE_GROUP_TYPE_SPECS=${MANILA_DEFAULT_SHARE_GROUP_TYPE_SPECS:-''}
  67. # Public facing bits
  68. MANILA_SERVICE_HOST=${MANILA_SERVICE_HOST:-$SERVICE_HOST}
  69. MANILA_SERVICE_PORT=${MANILA_SERVICE_PORT:-8786}
  70. MANILA_SERVICE_PORT_INT=${MANILA_SERVICE_PORT_INT:-18786}
  71. MANILA_SERVICE_PROTOCOL=${MANILA_SERVICE_PROTOCOL:-$SERVICE_PROTOCOL}
  72. # Support entry points installation of console scripts
  73. if [[ -d $MANILA_DIR/bin ]]; then
  74. MANILA_BIN_DIR=$MANILA_DIR/bin
  75. else
  76. MANILA_BIN_DIR=$(get_python_exec_prefix)
  77. fi
  78. # Common opts
  79. SHARE_NAME_PREFIX=${SHARE_NAME_PREFIX:-share-}
  80. MANILA_ENABLED_SHARE_PROTOCOLS=${ENABLED_SHARE_PROTOCOLS:-"NFS,CIFS"}
  81. MANILA_SCHEDULER_DRIVER=${MANILA_SCHEDULER_DRIVER:-manila.scheduler.filter_scheduler.FilterScheduler}
  82. MANILA_SERVICE_SECGROUP="manila-service"
  83. # Following env var defines whether to apply downgrade migrations setting up DB or not.
  84. # If it is set to False, then only 'upgrade' migrations will be applied.
  85. # If it is set to True, then will be applied 'upgrade', 'downgrade' and 'upgrade'
  86. # migrations again.
  87. MANILA_USE_DOWNGRADE_MIGRATIONS=${MANILA_USE_DOWNGRADE_MIGRATIONS:-"False"}
  88. # Toggle for deploying manila-api service under Apache web server with enabled 'mod_wsgi' plugin.
  89. # Disabled by default, which means running manila-api service as standalone
  90. # eventlet-based WSGI application.
  91. # Set it as True, because starting with Pike it is requirement from
  92. # 'governance' project. See:
  93. # https://governance.openstack.org/tc/goals/pike/deploy-api-in-wsgi.html#completion-criteria
  94. MANILA_USE_MOD_WSGI=${MANILA_USE_MOD_WSGI:-True}
  95. # Common info for Generic driver(s)
  96. SHARE_DRIVER=${SHARE_DRIVER:-manila.share.drivers.generic.GenericShareDriver}
  97. eval USER_HOME=~
  98. MANILA_PATH_TO_PUBLIC_KEY=${MANILA_PATH_TO_PUBLIC_KEY:-"$USER_HOME/.ssh/id_rsa.pub"}
  99. MANILA_PATH_TO_PRIVATE_KEY=${MANILA_PATH_TO_PRIVATE_KEY:-"$USER_HOME/.ssh/id_rsa"}
  100. MANILA_SERVICE_KEYPAIR_NAME=${MANILA_SERVICE_KEYPAIR_NAME:-"manila-service"}
  101. MANILA_SERVICE_INSTANCE_USER=${MANILA_SERVICE_INSTANCE_USER:-"manila"}
  102. MANILA_SERVICE_IMAGE_URL=${MANILA_SERVICE_IMAGE_URL:-"http://tarballs.openstack.org/manila-image-elements/images/manila-service-image-master.qcow2"}
  103. MANILA_SERVICE_IMAGE_NAME=${MANILA_SERVICE_IMAGE_NAME:-"manila-service-image-master"}
  104. # Third party CI Vendors should set this to false to skip the service image download
  105. MANILA_SERVICE_IMAGE_ENABLED=$(trueorfalse True MANILA_SERVICE_IMAGE_ENABLED)
  106. MANILA_USE_SERVICE_INSTANCE_PASSWORD=${MANILA_USE_SERVICE_INSTANCE_PASSWORD:-"False"}
  107. MANILA_SERVICE_INSTANCE_PASSWORD=${MANILA_SERVICE_INSTANCE_PASSWORD:-"manila"}
  108. MANILA_SERVICE_VM_FLAVOR_REF=${MANILA_SERVICE_VM_FLAVOR_REF:-100}
  109. MANILA_SERVICE_VM_FLAVOR_NAME=${MANILA_SERVICE_VM_FLAVOR_NAME:-"manila-service-flavor"}
  110. MANILA_SERVICE_VM_FLAVOR_RAM=${MANILA_SERVICE_VM_FLAVOR_RAM:-192}
  111. MANILA_SERVICE_VM_FLAVOR_DISK=${MANILA_SERVICE_VM_FLAVOR_DISK:-0}
  112. MANILA_SERVICE_VM_FLAVOR_VCPUS=${MANILA_SERVICE_VM_FLAVOR_VCPUS:-1}
  113. # Support for multi backend configuration (default is no support)
  114. MANILA_MULTI_BACKEND=$(trueorfalse False MANILA_MULTI_BACKEND)
  115. DEPRECATED_TEXT="$DEPRECATED_TEXT\n'MANILA_MULTI_BACKEND' is deprecated,
  116. it makes influence only when is set to True and 'MANILA_ENABLED_BACKENDS' is not set.
  117. Use 'MANILA_ENABLED_BACKENDS' instead if you want to use custom setting.
  118. Set there a list of back end names to be enabled.\n
  119. To configure custom back ends use (any opt in any group can be set in this way) following:
  120. MANILA_OPTGROUP_foo_bar=value
  121. where 'foo' is name of config group and 'bar' is name of option.\n"
  122. # First share backend data, that will be used in any installation
  123. MANILA_BACKEND1_CONFIG_GROUP_NAME=${MANILA_BACKEND1_CONFIG_GROUP_NAME:-generic1} # deprecated
  124. MANILA_SHARE_BACKEND1_NAME=${MANILA_SHARE_BACKEND1_NAME:-GENERIC1} # deprecated
  125. # Second share backend data, that will be used only with MANILA_MULTI_BACKEND=True
  126. MANILA_BACKEND2_CONFIG_GROUP_NAME=${MANILA_BACKEND2_CONFIG_GROUP_NAME:-generic2} # deprecated
  127. MANILA_SHARE_BACKEND2_NAME=${MANILA_SHARE_BACKEND2_NAME:-GENERIC2} # deprecated
  128. # Options for configuration of LVM share driver
  129. SHARE_BACKING_FILE_SIZE=${SHARE_BACKING_FILE_SIZE:-8400M}
  130. SHARE_GROUP=${SHARE_GROUP:-lvm-shares}
  131. MANILA_MNT_DIR=${MANILA_MNT_DIR:=$MANILA_STATE_PATH/mnt}
  132. SMB_CONF=${SMB_CONF:-/etc/samba/smb.conf}
  133. SMB_PRIVATE_DIR=${SMB_PRIVATE_DIR:-/var/lib/samba/private}
  134. CONFIGURE_BACKING_FILE=${CONFIGURE_BACKING_FILE:-"True"}
  135. MANILA_LVM_SHARE_EXPORT_IPS=${MANILA_LVM_SHARE_EXPORT_IPS:-$HOST_IP}
  136. # Options for replication
  137. MANILA_REPLICA_STATE_UPDATE_INTERVAL=${MANILA_REPLICA_STATE_UPDATE_INTERVAL:-300}
  138. # Options for configuration of ZFSonLinux driver
  139. # 'MANILA_ZFSONLINUX_ZPOOL_SIZE' defines size of each zpool. That value
  140. # will be used for creation of sparse files.
  141. MANILA_ZFSONLINUX_ZPOOL_SIZE=${MANILA_ZFSONLINUX_ZPOOL_SIZE:-"30G"}
  142. MANILA_ZFSONLINUX_BACKEND_FILES_CONTAINER_DIR=${MANILA_ZFSONLINUX_BACKEND_FILES_CONTAINER_DIR:-"/opt/stack/data/manila/zfsonlinux"}
  143. MANILA_ZFSONLINUX_SHARE_EXPORT_IP=${MANILA_ZFSONLINUX_SHARE_EXPORT_IP:-$HOST_IP}
  144. MANILA_ZFSONLINUX_SERVICE_IP=${MANILA_ZFSONLINUX_SERVICE_IP:-$HOST_IP}
  145. MANILA_ZFSONLINUX_DATASET_CREATION_OPTIONS=${MANILA_ZFSONLINUX_DATASET_CREATION_OPTIONS:-"compression=gzip"}
  146. MANILA_ZFSONLINUX_USE_SSH=${MANILA_ZFSONLINUX_USE_SSH:-"False"}
  147. MANILA_ZFSONLINUX_SSH_USERNAME=${MANILA_ZFSONLINUX_SSH_USERNAME:-$STACK_USER}
  148. # If MANILA_ZFSONLINUX_REPLICATION_DOMAIN is set to empty value then
  149. # Manila will consider replication feature as disabled for ZFSonLinux share driver.
  150. MANILA_ZFSONLINUX_REPLICATION_DOMAIN=${MANILA_ZFSONLINUX_REPLICATION_DOMAIN:-"ZFSonLinux"}
  151. # Container Driver
  152. MANILA_CONTAINER_DRIVER=${MANILA_CONTAINER_DRIVER:-"manila.share.drivers.container.driver.ContainerShareDriver"}
  153. MANILA_DOCKER_IMAGE_ALIAS=${MANILA_DOCKER_IMAGE_ALIAS:-"manila_docker_image"}
  154. MANILA_CONTAINER_VOLUME_GROUP_NAME=${MANILA_CONTAINER_VOLUME_GROUP_NAME:-"manila_docker_volumes"}
  155. # (aovchinnikov): This location is temporary and will be changed to a
  156. # permanent one as soon as possible.
  157. MANILA_DOCKER_IMAGE_URL=${MANILA_DOCKER_IMAGE_URL:-"https://github.com/a-ovchinnikov/manila-image-elements-lxd-images/releases/download/0.1.0/manila-docker-container.tar.gz"}
  158. # Network Plugin
  159. MANILA_NETWORK_API_CLASS=${MANILA_NETWORK_API_CLASS:-"manila.network.neutron.neutron_network_plugin.NeutronBindNetworkPlugin"}
  160. MANILA_NEUTRON_VNIC_TYPE=${MANILA_NEUTRON_VNIC_TYPE:-"normal"}
  161. # Admin Network setup
  162. MANILA_ADMIN_NET_RANGE=${MANILA_ADMIN_NET_RANGE:=10.2.5.0/24}
  163. # Data Service IP configuration
  164. MANILA_DATA_NODE_IP=${MANILA_DATA_NODE_IP:=$MANILA_ADMIN_NET_RANGE}
  165. # Data Service copy validation
  166. MANILA_DATA_COPY_CHECK_HASH=${MANILA_DATA_COPY_CHECK_HASH:=True}
  167. # Manila IPv6 Setup flag
  168. MANILA_SETUP_IPV6=${MANILA_SETUP_IPV6:=False}
  169. # Enable manila services
  170. # ----------------------
  171. # We have to add Manila to enabled services for screen_it to work
  172. # It consists of 4 parts: m-api (API), m-shr (Share), m-sch (Scheduler)
  173. # and m-dat (Data).
  174. enable_service manila
  175. enable_service m-api
  176. enable_service m-shr
  177. enable_service m-sch
  178. enable_service m-dat