# Additional options

These options can also be set in the `manila.conf` file.

Description of Certificate Authority configuration options
Configuration option = Default value | Description
--- | ---
[DEFAULT] |
`osapi_share_use_ssl` = `False` | (Boolean) Wraps the socket in a SSL context if True is set.

Description of Common configuration options
Configuration option = Default value | Description
--- | ---
[DEFAULT] |
`check_hash` = `False` | (Boolean) Chooses whether hash of each file should be checked on data copying.
`client_socket_timeout` = `900` | (Integer) Timeout for client connections socket operations. If an incoming connection is idle for this number of seconds it will be closed. A value of ‘0’ means wait forever.
`compute_api_class` = `manila.compute.nova.API` | (String) The full class name of the Compute API class to use.
`data_access_wait_access_rules_timeout` = `180` | (Integer) Time to wait for access rules to be allowed/denied on backends when migrating a share (seconds).
`data_manager` = `manila.data.manager.DataManager` | (String) Full class name for the data manager.
`data_node_access_admin_user` = `None` | (String) The admin user name registered in the security service in order to allow access to user authentication-based shares.
`data_node_access_cert` = `None` | (String) The certificate installed in the data node in order to allow access to certificate authentication-based shares.
`data_node_access_ips` = `None` | (String) A list of the IPs of the node interface connected to the admin network. Used for allowing access to the mounting shares. Default is [].
`data_node_mount_options` = `{}` | (Dict) Mount options to be included in the mount command for share protocols. Use dictionary format, example: {‘nfs’: ‘-o nfsvers=3’, ‘cifs’: ‘-o user=foo,pass=bar’}
`data_topic` = `manila-data` | (String) The topic data nodes listen on.
`enable_new_services` = `True` | (Boolean) Services to be added to the available pool on create.
`fatal_exception_format_errors` = `False` | (Boolean) Whether to make exception message format errors fatal.
`filter_function` = `None` | (String) String representation for an equation that will be used to filter hosts.
`host` = `<your_hostname>` | (String) Name of this node. This can be an opaque identifier. It is not necessarily a hostname, FQDN, or IP address.

`max_over_subscription_ratio` = `20.0`

(Floating point) Float representation of the over subscription ratio when thin provisioning is involved. Default ratio is 20.0, meaning provisioned capacity can be 20 times the total physical capacity. If the ratio is 10.5, it means provisioned capacity can be 10.5 times the total physical capacity. A ratio of 1.0 means provisioned capacity cannot exceed the total physical capacity. A ratio lower than 1.0 is invalid.

`memcached_servers` = `None` | (List) Memcached servers or None for in process cache.
`monkey_patch` = `False` | (Boolean) Whether to log monkey patching.
`monkey_patch_modules` = | (List) List of modules or decorators to monkey patch.
`mount_tmp_location` = `/tmp/` | (String) Temporary path to create and mount shares during migration.
`my_ip` = `<your_ip>` | (String) IP address of this host.
`num_shell_tries` = `3` | (Integer) Number of times to attempt to run flakey shell commands.
`periodic_fuzzy_delay` = `60` | (Integer) Range of seconds to randomly delay when starting the periodic task scheduler to reduce stampeding. (Disable by setting to 0)
`periodic_hooks_interval` = `300.0` | (Floating point) Interval in seconds between execution of periodic hooks. Used when option ‘enable_periodic_hooks’ is set to True. Default is 300.
`periodic_interval` = `60` | (Integer) Seconds between running periodic tasks.
`replica_state_update_interval` = `300` | (Integer) This value, specified in seconds, determines how often the share manager will poll for the health (replica_state) of each replica instance.
`replication_domain` = `None` | (String) A string specifying the replication domain that the backend belongs to. This option needs to be specified the same in the configuration sections of all backends that support replication between each other. If this option is not specified in the group, it means that replication is not enabled on the backend.
`report_interval` = `10` | (Integer) Seconds between nodes reporting state to datastore.
`reserved_share_percentage` = `0` | (Integer) The percentage of backend capacity reserved.
`rootwrap_config` = `None` | (String) Path to the rootwrap configuration file to use for running commands as root.
`service_down_time` = `60` | (Integer) Maximum time since last check-in for up service.
`smb_template_config_path` = `$state_path/smb.conf` | (String) Path to smb config.
`sql_idle_timeout` = `3600` | (Integer) Timeout before idle SQL connections are reaped.
`sql_max_retries` = `10` | (Integer) Maximum database connection retries during startup. (setting -1 implies an infinite retry count).
`sql_retry_interval` = `10` | (Integer) Interval between retries of opening a SQL connection.
`sqlite_clean_db` = `clean.sqlite` | (String) File name of clean sqlite database.
`sqlite_db` = `manila.sqlite` | (String) The filename to use with sqlite.
`sqlite_synchronous` = `True` | (Boolean) If passed, use synchronous mode for sqlite.
`state_path` = `/var/lib/manila` | (String) Top-level directory for maintaining manila’s state.
`storage_availability_zone` = `nova` | (String) Availability zone of this node.
`tcp_keepalive` = `True` | (Boolean) Sets the value of TCP_KEEPALIVE (True/False) for each server socket.
`tcp_keepalive_count` = `None` | (Integer) Sets the value of TCP_KEEPCNT for each server socket. Not supported on OS X.
`tcp_keepalive_interval` = `None` | (Integer) Sets the value of TCP_KEEPINTVL in seconds for each server socket. Not supported on OS X.
`tcp_keepidle` = `600` | (Integer) Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not supported on OS X.
`until_refresh` = `0` | (Integer) Count of reservations until usage is refreshed.
`use_forwarded_for` = `False` | (Boolean) Treat X-Forwarded-For as the canonical remote address. Only enable this if you have a sanitizing proxy.
`wsgi_keep_alive` = `True` | (Boolean) If False, closes the client socket connection explicitly. Setting it to True to maintain backward compatibility. Recommended setting is set it to False.
`admin_only_metadata` = `__affinity_same_host,__affinity_different_host` | (List) The affinity keys are default to ensure backwards compatibility. Update the list with metadata items that should only be manipulated by people allowed by the “update_admin_only_metadata” policy.
`driver_updatable_metadata` = `None` | (List) Metadata keys that will decide which share metadata can be passed to share drivers as part of metadata create/update operations.
`driver_updatable_subnet_metadata` = `None` | (List) Metadata keys that will decide which share network_subnet_metadata can be passed to share drivers as part of metadata create/update operations.
[coordination] |
`backend_url` = `file://$state_path` | (String) The back end URL to use for distributed coordination.
[healthcheck] |
`backends` = | (List) Additional backends that can perform health checks and report that information back as part of a request.
`detailed` = `False` | (Boolean) Show more detailed information as part of the response
`disable_by_file_path` = `None` | (String) Check the presence of a file to determine if an application is running on a port. Used by DisableByFileHealthcheck plugin.
`disable_by_file_paths` = | (List) Check the presence of a file based on a port to determine if an application is running on a port. Expects a “port:path” list of strings. Used by DisableByFilesPortsHealthcheck plugin.
`path` = `/healthcheck` | (String) DEPRECATED: The path to respond to healtcheck requests on.
`update_shares_status_on_ensure` = `True` | (Boolean) Defines whether Manila should update the status of the shares when ensuring shares or not.

Description of Compute configuration options
Configuration option = Default value | Description
--- | ---
[nova] |
`api_microversion` = `2.10` | (String) Version of Nova API to be used.
`endpoint_type` = `publicURL` | (String) Endpoint type to be used with nova client calls.
`region_name` = `None` | (String) Region name for connecting to nova.

Description of Ganesha configuration options
Configuration option = Default value | Description
--- | ---
[DEFAULT] |
`ganesha_config_dir` = `/etc/ganesha` | (String) Directory where Ganesha config files are stored.
`ganesha_config_path` = `$ganesha_config_dir/ganesha.conf` | (String) Path to main Ganesha config file.
`ganesha_db_path` = `$state_path/manila-ganesha.db` | (String) Location of Ganesha database file. (Ganesha module only.)
`ganesha_export_dir` = `$ganesha_config_dir/export.d` | (String) Path to directory containing Ganesha export configuration. (Ganesha module only.)
`ganesha_export_template_dir` = `/etc/manila/ganesha-export-templ.d` | (String) Path to directory containing Ganesha export block templates. (Ganesha module only.)
`ganesha_service_name` = `ganesha.nfsd` | (String) Name of the ganesha nfs service.

Description of hnas configuration options
Configuration option = Default value | Description
--- | ---
[DEFAULT] |
`hitachi_hnas_driver_helper` = `manila.share.drivers.hitachi.hnas.ssh.HNASSSHBackend` | (String) Python class to be used for driver helper.

Description of Quota configuration options
Configuration option = Default value | Description
--- | ---
[quota] |
`max_age` = `0` | (Integer) Number of seconds between subsequent usage refreshes.
`max_gigabytes` = `10000` | (Integer) Maximum number of volume gigabytes to allow per host.
`driver` = `manila.quota.DbQuotaDriver` | (String) Default driver to use for quota checks.
`gigabytes` = `1000` | (Integer) Number of share gigabytes allowed per project.
`share_networks` = `10` | (Integer) Number of share-networks allowed per project.
`shares` = `50` | (Integer) Number of shares allowed per project.
`snapshot_gigabytes` = `1000` | (Integer) Number of snapshot gigabytes allowed per project.
`snapshots` = `50` | (Integer) Number of share snapshots allowed per project.
`share_groups` = `50` | (Integer) Number of share groups allowed.
`share_group_snapshots` = `50` | (Integer) Number of share group snapshots allowed.
`reservation_expire` = `86400` | (Integer) Number of seconds until a reservation expires.
`backups` = `10` | (Integer) Number of share backups allowed per project.
`backup_gigabytes` = `1000` | (Integer) Total amount of storage, in gigabytes, allowed for backups per project.
`per_share_gigabytes` = `-1` | (Integer) Max size allowed per share, in gigabytes.
`replica_gigabytes` = `1000` | (Integer) Number of replica gigabytes allowed per project.
`share_replicas` = `100` | (Integer) Number of share-replicas allowed per project.

Description of Redis configuration options
Configuration option = Default value | Description
--- | ---
[matchmaker_redis] |
`check_timeout` = `20000` | (Integer) Time in ms to wait before the transaction is killed.
`host` = `127.0.0.1` | (String) DEPRECATED: Host to locate redis. Replaced by [DEFAULT]/transport_url
`password` = | (String) DEPRECATED: Password for Redis server (optional). Replaced by [DEFAULT]/transport_url
`port` = `6379` | (Port number) DEPRECATED: Use this port to connect to redis host. Replaced by [DEFAULT]/transport_url
`sentinel_group_name` = `oslo-messaging-zeromq` | (String) Redis replica set name.
`sentinel_hosts` = | (List) DEPRECATED: List of Redis Sentinel hosts (fault tolerance mode), e.g., [host:port, host1:port … ] Replaced by [DEFAULT]/transport_url
`socket_timeout` = `10000` | (Integer) Timeout in ms on blocking socket operations.
`wait_timeout` = `2000` | (Integer) Time in ms to wait between connection attempts.

Description of SAN configuration options
Configuration option = Default value | Description
--- | ---
[DEFAULT] |
`ssh_conn_timeout` = `60` | (Integer) Backend server SSH connection timeout.
`ssh_max_pool_conn` = `10` | (Integer) Maximum number of connections in the SSH pool.
`ssh_min_pool_conn` = `1` | (Integer) Minimum number of connections in the SSH pool.

Description of Scheduler configuration options
Configuration option = Default value | Description
--- | ---
[DEFAULT] |
`capacity_weight_multiplier` = `1.0` | (Floating point) Multiplier used for weighing share capacity. Negative numbers mean to stack vs spread.
`pool_weight_multiplier` = `1.0` | (Floating point) Multiplier used for weighing pools which have existing share servers. Negative numbers mean to spread vs stack.
`scheduler_default_filters` = `AvailabilityZoneFilter, CapacityFilter, CapabilitiesFilter, DriverFilter, ShareReplicationFilter` | (List) Which filter class names to use for filtering hosts when not specified in the request.
`scheduler_default_weighers` = `CapacityWeigher, GoodnessWeigher` | (List) Which weigher class names to use for weighing hosts.
`scheduler_driver` = `manila.scheduler.drivers.filter.FilterScheduler` | (String) Default scheduler driver to use.
`scheduler_host_manager` = `manila.scheduler.host_manager.HostManager` | (String) The scheduler host manager class to use.
`scheduler_json_config_location` = | (String) Absolute path to scheduler configuration JSON file.
`scheduler_manager` = `manila.scheduler.manager.SchedulerManager` | (String) Full class name for the scheduler manager.
`scheduler_max_attempts` = `3` | (Integer) Maximum number of attempts to schedule a share.
`scheduler_topic` = `manila-scheduler` | (String) The topic scheduler nodes listen on.

Description of Share configuration options
Configuration option = Default value | Description
--- | ---
[DEFAULT] |
`automatic_share_server_cleanup` = `True` | (Boolean) If set to True, then Manila will delete all share servers which were unused more than specified time .If set to False - automatic deletion of share servers will be disabled.
`backlog` = `4096` | (Integer) Number of backlog requests to configure the socket with.
`default_share_group_type` = `None` | (String) Default share group type to use.
`default_share_type` = `None` | (String) Default share type to use.
`delete_share_server_with_last_share` = `False` | (Boolean) Whether share servers will be deleted on deletion of the last share.

`driver_handles_share_servers` = `None`

(Boolean) There are two possible approaches for share drivers in Manila. First is when share driver is able to handle share-servers and second when not. Drivers can support either both or only one of these approaches. So, set this opt to True if share driver is able to handle share servers and it is desired mode else set False. It is set to None by default to make this choice intentional.

`enable_periodic_hooks` = `False` | (Boolean) Whether to enable periodic hooks or not.
`enable_post_hooks` = `False` | (Boolean) Whether to enable post hooks or not.
`enable_pre_hooks` = `False` | (Boolean) Whether to enable pre hooks or not.
`enabled_share_backends` = `None` | (List) A list of share backend names to use. These backend names should be backed by a unique [CONFIG] group with its options.
`enabled_share_protocols` = `NFS, CIFS` | (List) Specify list of protocols to be allowed for share creation. Available values are ‘(‘NFS’, ‘CIFS’, ‘GLUSTERFS’, ‘HDFS’, ‘CEPHFS’, ‘MAPRFS’)’
`executor_thread_pool_size` = `64` | (Integer) Size of executor thread pool.
`hook_drivers` = | (List) Driver(s) to perform some additional actions before and after share driver actions and on a periodic basis. Default is [].
`migration_create_delete_share_timeout` = `300` | (Integer) Timeout for creating and deleting share instances when performing share migration (seconds).
`migration_driver_continue_update_interval` = `60` | (Integer) This value, specified in seconds, determines how often the share manager will poll the driver to perform the next step of migration in the storage backend, for a migrating share.
`migration_ignore_files` = `lost+found` | (List) List of files and folders to be ignored when migrating shares. Items should be names (not including any path).
`migration_readonly_rules_support` = `True` | (Boolean) DEPRECATED: Specify whether read only access rule mode is supported in this backend. Obsolete. All drivers are now required to support read-only access rules.
`migration_wait_access_rules_timeout` = `180` | (Integer) Time to wait for access rules to be allowed/denied on backends when migrating shares using generic approach (seconds).
`network_config_group` = `None` | (String) Name of the configuration group in the Manila conf file to look for network config options.If not set, the share backend’s config group will be used.If an option is not found within provided group, then’DEFAULT’ group will be used for search of option.
`share_manager` = `manila.share.manager.ShareManager` | (String) Full class name for the share manager.
`share_name_template` = `share-%s` | (String) Template string to be used to generate share names.
`share_snapshot_name_template` = `share-snapshot-%s` | (String) Template string to be used to generate share snapshot names.
`share_topic` = `manila-share` | (String) The topic share nodes listen on.
`suppress_post_hooks_errors` = `False` | (Boolean) Whether to suppress post hook errors (allow driver’s results to pass through) or not.
`suppress_pre_hooks_errors` = `False` | (Boolean) Whether to suppress pre hook errors (allow driver perform actions) or not.
`unmanage_remove_access_rules` = `False` | (Boolean) If set to True, then manila will deny access and remove all access rules on share unmanage.If set to False - nothing will be changed.

`unused_share_server_cleanup_interval` = `10`

(Integer) Unallocated share servers reclamation time interval (minutes). Minimum value is 10 minutes, maximum is 60 minutes. The reclamation function is run every 10 minutes and delete share servers which were unused more than unused_share_server_cleanup_interval option defines. This value reflects the shortest time Manila will wait for a share server to go unutilized before deleting it.

`use_scheduler_creating_share_from_snapshot` = `False` | (Boolean) If set to False, then share creation from snapshot will be performed on the same host. If set to True, then scheduling step will be used.

Description of Tegile share driver configuration options
Configuration option = Default value | Description
--- | ---
[DEFAULT] |
`tegile_default_project` = `None` | (String) Create shares in this project
`tegile_nas_login` = `None` | (String) User name for the Tegile NAS server.
`tegile_nas_password` = `None` | (String) Password for the Tegile NAS server.
`tegile_nas_server` = `None` | (String) Tegile NAS server hostname or IP address.

Description of WinRM configuration options
Configuration option = Default value | Description
--- | ---
[DEFAULT] |
`winrm_cert_key_pem_path` = `~/.ssl/key.pem` | (String) Path to the x509 certificate key.
`winrm_cert_pem_path` = `~/.ssl/cert.pem` | (String) Path to the x509 certificate used for accessing the serviceinstance.
`winrm_conn_timeout` = `60` | (Integer) WinRM connection timeout.
`winrm_operation_timeout` = `60` | (Integer) WinRM operation timeout.
`winrm_retry_count` = `3` | (Integer) WinRM retry count.
`winrm_retry_interval` = `5` | (Integer) WinRM retry interval in seconds
`winrm_use_cert_based_auth` = `False` | (Boolean) Use x509 certificates in order to authenticate to theservice instance.

this page last updated: 2026-03-20 00:30:00

Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.

found an error? report a bug