AppSuite:Scality File Store
Overview
Besides ordinary local- or NFS-filesystem-based filestores, OX may also be used with a Scality storage solution offering the sproxyd HTTP/REST interface. The required functionality is added with the package open-xchange-filestore-sproxyd.
Installation & Configuration
This chapter shows which components need to be installed and where configuration is done.
Install on OX App Suite
Debian GNU/Linux 11.0
Add the following entry to /etc/apt/sources.list.d/open-xchange.list if not already present:
deb https://software.open-xchange.com/products/appsuite/stable/backend/DebianBullseye/ /
# if you have a valid maintenance subscription, please uncomment the
# following and add the ldb account data to the url so that the most recent
# packages get installed
# deb https://[CUSTOMERID:PASSWORD]@software.open-xchange.com/products/appsuite/stable/backend/updates/DebianBullseye/ /
and run
$ apt-get update $ apt-get install open-xchange-filestore-sproxyd
Debian GNU/Linux 12.0
Add the following entry to /etc/apt/sources.list.d/open-xchange.list if not already present:
deb https://software.open-xchange.com/products/appsuite/stable/backend/DebianBookworm/ /
# if you have a valid maintenance subscription, please uncomment the
# following and add the ldb account data to the url so that the most recent
# packages get installed
# deb https://[CUSTOMERID:PASSWORD]@software.open-xchange.com/products/appsuite/stable/backend/updates/DebianBookworm/ /
and run
$ apt-get update $ apt-get install open-xchange-filestore-sproxyd
Configuration
Scality sproxyd filestores can be configured in the configuration file filestore-sproxyd.properties once they have been registered on the server with the registerfilestore command.
Register an sproxyd filestore
Similarly to local- or NFS-filesystem-based filestores, sproxyd filestores need to be registered using the commandline tool registerfilestore before they can be used. The scheme-part of the filestore URI must be set to sproxyd in this case. Besides the common sproxyd:// prefix of such filestore URIs, the remaining authority component of the URI specifies an identifier of the filestore that will be used to refer to this filestore registration in the configuration file. It's recommended to use the Scality RING key here, for example:
root@ox01:/opt/open-xchange/sbin# ./registerfilestore -A oxadminmaster -P secret -t sproxyd://ring43 -s 1048576000 -x 5000 filestore 18 registered
Configure the filestore
Additional configuration for each registered filestore is done in the configuration file filestore-sproxyd.properties. To map configuration properties to specific filestore registrations, the filestore identifier corresponding to the defined authority part of the filestore URI is used in the property names. Please refer to the inline documentation or the examples below for details.
Note: In most cases, you want to use the same configuration throughout the whole ox cluster, so you should make sure to use the same filestore-sproxyd.properties configuration file on all nodes.
Step-by-step guide to setup a Scality sproxyd storage
The following walktrough outlines all steps necessary to complete the setup of a Scality filestore accessed via the sproxyd interface.
Prerequisites
- Installed open-xchange-filestore-sproxyd package
- Access to the sproxyd HTTP/REST interface of the Scality storage
Register the filestore
- Open a terminal on a running backend server of your OX cluster
- Navigate to the directory where the commandline utilities are installed, usually at /opt/open-xchange/sbin
- Run the registerfilestore tool using a storepath URL starting with the sproxyd scheme (use sproxyd:// as prefix literally) followed by the filestore ID (the RING key seems most appropriate here, however, you can still use a different name), e.g.:
./registerfilestore -A oxadminmaster -P secret -t sproxyd://ring43 -s 1048576000 -x 5000
(execute "./registerfilestore -h" for more information regarding possible commandline arguments)
- The internal ID of the new filestore is printed out
Configure the filestore
- Open the configuration file filestore-sproxyd.properties in your favourite editor
- Insert a new set of properties using the filestore ID assigned during registration of the filestore in the previous step, e.g. ring43:
com.openexchange.filestore.sproxyd.ring43.baseUrl=
- Specify the sproxyd endpoint to use depending on the Scality configuration, e.g.:
com.openexchange.filestore.sproxyd.ring43.baseUrl=http://ring43.example.com:81/proxy/ox/
Create contexts using the filestore
- New contexts that should use the configured filestore can be created by suppliying the ID of the registered filestore in the createcontext commandline tool. Use the internal ID returned by the previously used registerfilestore command executed above, e.g., assuming the ID returned from the registerfilestore command was 18:
./createcontext -A oxadminmaster -P secret -u oxadmin -d "Context Admin" -g Admin -s User -p secret -e oxadmin@example.com -q 1000 -L example.com --access-combination-name=all -F 18
Check the configuration
- Login to the App Suite webinterface with a user from a context using the sproxyd filestore
- Upload a new file in the Drive module and download it again to verify basic functionality
- Check the Scality storage to verify the creation of the new file