File Systems
File Systems
A volume is raw storage — before it can serve NAS shares (SMB/NFS) or object storage, it needs a file system on it. Creating a file system is the step that turns a bare volume into something that can be shared out; it's the file/object counterpart to mapping a block volume to a host. A volume is used one way or the other, never both — a volume that already has a file system can't also be mapped to a host, and vice versa.
Creating a file system
You can put a file system on one or more volumes in an application at once. If you don't name specific volumes, StorONE creates one on every volume in the application that isn't already connected as block storage or file/object storage.
Two file-system profiles are available:
- Ordered (the default) — the standard, better-performing choice for most workloads.
- Journal — additionally journals file data itself, not just metadata, trading some performance for extra crash protection.
Two optional add-ons:
- SnapONE lets users browse and restore earlier versions of individual files and folders straight from the share, without an administrator needing to restore a whole volume snapshot.
- Quota support lets you enforce per-user/per-directory space quotas on the file system once it exists.
If you're planning to replicate this file system's volume later, add continuous replication metadata now — doing it later requires temporarily disrupting the volume, whereas creating it up front doesn't.
Using the web interface
- Open Application Volumes > Applications, select the application, and choose to create a file system (or open Application Volumes > File Systems > Create).
- Under Volume Selection, choose the application and the volume(s) to create a file system on — leave volumes unselected to cover every eligible volume in the application.
- Choose the profile (Ordered or Journal), and optionally enable SnapONE, quota support, or continuous replication metadata.
- Confirm to create the file system(s).
Using the CLI
applications filesystems add --application=<name> [--volumes=<name...>] [--profile=<name>] [--addContinuousReplicationMetadata] [--enableSnapone] [--enableQuotaSupport] [--force]
| Option | Description |
|---|---|
--application=<name> |
The name of the application. |
--volumes=<name...> |
The volumes to create a file system on. If omitted, every eligible volume in the application is used. |
--profile=<name> |
The file-system profile: Journal or Ordered (default: Ordered). |
--addContinuousReplicationMetadata |
Add replication metadata to the file system, so starting replication later will not be disruptive. |
--enableSnapone |
Enable SnapONE on this file system. |
--enableQuotaSupport |
Enable quota support for this file system. |
--force |
Skip the confirmation prompt. |
Examples
Create a file system on a specific volume:
applications filesystems add --application marketing --volumes assets
Create file systems on every eligible volume in an application, with SnapONE and quota support enabled:
applications filesystems add --application marketing --enableSnapone --enableQuotaSupport
Create a Journal-profile file system, pre-adding replication metadata since this volume will be replicated soon:
applications filesystems add --application marketing --volumes assets --profile Journal --addContinuousReplicationMetadata
Editing a file system
Once a file system exists, you can turn SnapONE and continuous replication metadata on or off. Removing continuous replication metadata (or adding it after the fact) temporarily disrupts the volume's activity, so you'll be asked to confirm.
Using the web interface
- Open Application Volumes > File Systems, select the volume, and click Edit.
- Toggle SnapONE and/or continuous replication metadata as needed.
- Confirm the change.
Using the CLI
applications filesystems edit --application=<name> --volume=<name> [--addContinuousReplicationMetadata|--removeContinuousReplicationMetadata] [--enableSnapone|--disableSnapone] [--force]
| Option | Description |
|---|---|
--application=<name> |
The name of the application. |
--volume=<name> |
The volume to edit. |
--addContinuousReplicationMetadata |
Add replication metadata to the file system, so starting replication later will not be disruptive. |
--removeContinuousReplicationMetadata |
Remove replication metadata from the file system. Without it, starting replication will be disruptive. |
--enableSnapone |
Enable SnapONE on this file system. |
--disableSnapone |
Disable SnapONE on this file system. |
--force |
Skip the confirmation prompt. |
Examples
Turn on SnapONE for an existing file system:
applications filesystems edit --application marketing --volume assets --enableSnapone
Add continuous replication metadata ahead of setting up replication (disruptive — confirmation required):
applications filesystems edit --application marketing --volume assets --addContinuousReplicationMetadata
Mounting file systems
A file system can end up unmounted — for example, after certain maintenance operations. This command (re)mounts any unmounted file system matching the filter you give it.
Using the web interface
- Open Application Volumes > File Systems.
- Select the unmounted volume(s) and click Mount.
Using the CLI
applications filesystems mount [--application=<name> --volume=<name>]
| Option | Description |
|---|---|
--application=<name> |
Filter by application name. |
--volume=<name> |
Filter by volume name. |
Examples
Mount every unmounted file system in the system:
applications filesystems mount
Mount only the unmounted file systems in the marketing application:
applications filesystems mount --application marketing
Listing file-system assignments
Using the web interface
Open Application Volumes > File Systems. Use the toolbar to filter by application/volume.
Using the CLI
applications filesystems list [--application=<name> --volume=<name>]
| Option | Description |
|---|---|
--application=<name> |
Filter by application name. |
--volume=<name> |
Filter by volume name. |
Example
applications filesystems list --application marketing
Reclaiming space (fstrim)
Volumes normally reclaim freed space automatically as the host reports blocks as free (UNMAP). If a volume was created with space reclamation disabled, or you just want to reclaim space on demand, run fstrim against its file system — this asks the file system to report every block it currently considers free back to the pool.
Running fstrim
Using the web interface
- Open Application Volumes > File Systems, select the volume, and click Trim.
Using the CLI
applications filesystems fstrim run --application=<name> --volume=<name>
| Option | Description |
|---|---|
--application=<name> |
The application the volume belongs to. |
--volume=<name> |
The volume to run fstrim on (must have a file system). |
Example
applications filesystems fstrim run --application marketing --volume assets
Checking fstrim status
Using the web interface
Open Application Volumes > File Systems. Volumes currently running fstrim are shown as such in the list.
Using the CLI
applications filesystems fstrim status [--application=<name> --volume=<name>]
| Option | Description |
|---|---|
--application=<name> |
Filter by application name. |
--volume=<name> |
Filter by volume name. |
Example
applications filesystems fstrim status --application marketing
See also: Volumes · Mappings (the equivalent step for block volumes)