GlusterFS Native driver uses GlusterFS, an open source distributed file system, as the storage backend for serving file shares to Manila clients.
A Manila share is a GlusterFS volume. This driver uses flat-network (share-server-less) model. Instances directly talk with the GlusterFS backend storage pool. The instances use ‘glusterfs’ protocol to mount the GlusterFS shares. Access to each share is allowed via TLS Certificates. Only the instance which has the TLS trust established with the GlusterFS backend can mount and hence use the share. Currently only ‘rw’ access is supported.
L3 connectivity between the storage backend and the host running the Manila share service should exist.
The driver does not support network segmented multi-tenancy model. Instead multi-tenancy is supported using tenant specific TLS certificates.
The following parameters in Manila’s configuration file need to be set:
manila.share.drivers.glusterfs_native.GlusterfsNativeShareDriver
that can be used to create shares. The servers are expected to be of distinct Gluster clusters (ie. should not be gluster peers). Each server should be of the form [<remoteuser>@]<glustervolserver>.
The optional <remoteuser>@ part of the server URI indicates SSH access for cluster management (see related optional parameters below). If it is not given, direct command line management is performed (ie. Manila host is assumed to be part of the GlusterFS cluster the server belongs to).
used to filter GlusterFS volumes for share creation. The regex template can contain the #{size} parameter which matches a number (sequence of digits) and the value shall be intepreted as size of the volume in GB. Examples: manila-share-volume-\d+$, manila-share-volume-#{size}G-\d+$; with matching volume names, respectively: manila-share-volume-12, manila-share-volume-3G-13”. In latter example, the number that matches #{size}, that is, 3, is an indication that the size of volume is 3G.
The following configuration parameters are optional:
Manila host>
glusterfs_path_to_private_key = <path to Manila host’s private key file>
glusterfs_server_password = <password of remote GlusterFS server machine>