The Nectar shared filesystem service is powered by the Manila OpenStack project. Manila provides a simple interface for managing shared filesystems that hides the underlying infrastructure for configuring and running them. The Nectar shared filesystem service allows you to use either the Manila APIs or the Nectar Dashboard to do tasks like creating and restoring snapshots, adding and removing access and more.

The Nectar Shared filesystem service offers:

  • NFS mounts from Queensland
  • CephFS mounts from Monash

There is one important restriction to bear in mind, a Nectar shared file system is only accessible from Instances in the same availability zone. This restriction is for both security and performance reasons.

Glossary

  • Share – Think of a share as an NFS or CIFS server with its own mount location.

How is Nectar's Shared Filesystem service different to Volume Storage

Nectar's shared filesystem service allows a filesystem to be simultaneously shared to multiple Instances within a Project, hence the storage is accessible across Instances. This presentation of a filesystem to multiple Instances at the same time sets it apart from Volume Storage, which can only be attached to a single Instance at any point in time.

Shared Filesystem service quota

Access to the Nectar shared filesystem service is governed by its own type of quota, which you must apply for, through an allocation request form (either as part of a new request or by amending an existing request). To enter the values for your requested quota, you will need to toggle the On/Off button for the Shared File System Service to On.

The allocation form allows you to request quota for the total amount of storage you will require

  • Shares - The number of shares you can create
  • Storage - The amount of storage (in gigabytes) you can use across all your shares
  • Snapshots - The number of snapshots you can create across all your shares
  • Snapshot storage - The amount of storage (in gigabytes) you can use for snapshots across all your shares

Creating a Shared Filesystem: Dashboard

To create a Nectar shared filesystem from the dashboard, select the Shares option underneath the Compute menu item from the left-hand panel, and click the Create Share button in the top right of the screen.

You will be presented with a Create Share wizard to guide you through the options. Complete the fields within the form and click the Create button.

With respect to the options, you need to ensure that the Share Protocol and Share Type are appropriate for the specific Availability Zone that is selected, as per the following table:

Availability Zone
Share Protocol
Share Type
QRIScloud
NFS
QRIScloud-GPFS
monash-02-cephfs
CephFS
monash-02-cephfs


Once your file share has been created, it will appear as an item in the list of shares.

Currently, you can ignore the Share Networks and Security Services tabs as these features are not enabled. 

The next step is to create rules for your fileshare. Rules define which Instances your fileshare can be mounted to. You will require the IP address for each Instance that you intend to share the file share with. To create a Rule, select the drop-down menu for the specific Share in the item list and choose Manage Rules.

On choosing Manage Rules, you will be presented with a list of Rules, which will initially be empty. 

To add a new Rule, click the Add Rule button, which will launch an Add Rule wizard to create a new rule. The Access Type should be left as ip and the Access Level should be left as read-write. The Access To field is where you provide the IP address of an Instance to share the fileshare with. Once the form is complete, click the Add button.

Repeat the step to add rules for each Instance that you are sharing the fileshare with.

The choice of the Instance's IP address to use may depend on the networks available within the specific Availability Zone, as per the following table:

Availability Zone
Network to use for the IP address
QRIScloud
qld-data

With your rules defined, you can return to the list of Shares to then display the details of the Share which will be needed to physically mount the share to your Instance. Click on the Share Name link to display the Share Overview.

The information that is required to mount the Share to your Instance is contained in the Path field. You will need to copy this and use this within your Instance to mount the fileshare. As the root user on your Instance, you can execute a command such as the following to mount the fileshare:

$> mount -t nfs <value of the Path field> /mnt

You will need to do this on each Instance that the file share has been shared to through Rules.

Further reading

https://docs.openstack.org/manila/latest/