File Storage Service - Getting started (Beta)

Objective

OVHcloud provides a File Storage Service powered by OpenStack Manila. This service offers managed NFS shares on private networks, supporting ReadWriteMany (RWX) access across multiple instances or Kubernetes pods.

It can be accessed via OVHcloud API, OpenStack CLI and API, Manila CSI, and Terraform.

Warning

This service is currently in Beta, available only in the SBG5, DE1 and GRA regions. Features and availability may change.

During the Beta phase, the allowed share size ranges from 150 GiB to 10 TiB.

Requirements

Instructions

Info

Currently, the File Storage Service can only be accessed and managed via OVHcloud API, OpenStack CLI with the Manila plugin and Terraform. Other interfaces will be supported in the future.

Via the OVHcloud API
Via the OpenStack CLI with the Manila plugin
Via Manila CSI in Kubernetes environment
Via Terraform

1. Create a share

Identify your private network and subnet

Before creating or attaching a File Storage service, you must identify the target private network.

Retrieve the network ID:

Example output:

[
  {
    "id": "581fad02-158d-4dc6-81f0-c1ec2794bbec",
    "name": "Ext-Net",
    "visibility": "public",
    "vlanId": null
  },
  {
    "id": "[NETWORK_ID]",
    "name": "<my-network-name>",
    "visibility": "private",
    "vlanId": 2701
  }
]
Info

NOTE: Only select a private network.

Retrieve the subnet ID using the network ID:

Example output:

[
  {
    "id": "[SUBNET_ID]",
    "name": "subnet-name",
    "cidr": "10.1.0.0/24",
    "ipVersion": 4,
    "dhcpEnabled": true,
    "gatewayIp": "10.1.0.1",
    "allocationPools": [
      {
        "start": "10.1.0.2",
        "end": "10.1.0.254"
      }
    ],
    "hostRoutes": [],
    "dnsNameServers": [
      "1.1.1.1"
    ]
  }
]

Both the network ID and subnet ID should have the format: abc12345-def6-4abc-8def-123456abcdef.

Create a 150 GiB NFS share attached to your private network:

Info

NOTE: Replace <my-share-name> with your chosen share name.

List your shares and wait until the newly created one appears with status available:

Example output:

{
  "capabilities": [
    {
      ...
    }
  ],
  "createdAt": "2026-01-14T08:23:30.079Z",
  "description": "<my-share-description>",
  "exportLocations": [
    {
      "id": "string",
      "path": "string"
    }
  ],
  "id": "[SHARE_ID]",
  "isPublic": false,
  "name": "<my-share-name>",
  "protocol": "NFS",
  "region": "[REGION]",
  "size": 150,
  "status": "available",
  "type": "standard-1az",
  "updatedAt": "2026-01-14T08:23:30.079Z"
}
Info

NOTE: The share ID should have the format abc12345-def6-4abc-8def-123456abcdef.

Retrieve the share details using the share ID:

Example output:

{
  "capabilities": [
    {
      "enabled": true,
      "name": "<my-share-name>"
    }
  ],
  "createdAt": "2026-01-14T08:23:30.079Z",
  "description": "<my-share-description>",
  "exportLocations": [
    {
      "id": "string",
      "path": "10.1.0.12:/shares/share-abc12345-def6-4abc-8def-123456abcdef"
    }
  ],
  "id": "abc12345-def6-4abc-8def-123456abcdef",
  "isPublic": false,
  "name": "string",
  "protocol": "NFS",
  "region": "string",
  "size": 150,
  "status": "available",
  "type": "standard-1az",
  "updatedAt": "2026-01-14T08:23:30.079Z"
}

2. Authorize a client VM

Ensure the client VM is on the same private network as the share.

Retrieve the VM’s private IP address.

Grant access to the share using the VM’s private IP (e.g., 10.1.0.123) via ACL management:

Example output:

{
  "accessLevel": "rw",
  "accessTo": "10.1.0.123",
  "createdAt": "2026-01-14T10:26:14.446Z",
  "id": "[ACL_ID]",
  "status": "active",
  "updatedAt": "2026-01-14T10:26:14.446Z"
}

Verify access to the NFS share from the authorized client VM:

3. Mount the share on your client VM

Connect to your client VM and install the NFS utilities required to mount the share:

sudo apt update && sudo apt install -y nfs-common

Create a mount point and mount the share:

sudo mkdir -p /mnt/share && sudo mount -t nfs4 10.1.0.12:/shares/share-abc12345-def6-4abc-8def-123456abcdef /mnt/share

Verify the mount:

df -h /mnt/share

Make the mount persistent across reboots:

echo "<NFS_EXPORT_PATH> /mnt/share nfs nfsvers=4 defaults,noauto 0 0" | sudo tee -a /etc/fstab

This ensures the NFS share is automatically remounted after the VM restarts.

4. Check capacity and usage

Once the NFS share is mounted, verify its available space and usage:

df -h /mnt/share

Example output:

Filesystem                          Size  Used  Avail Use% Mounted on
10.1.0.12:/shares/share-abc1...     150G  100M   150G   1% /mnt/share

Note: This allows you to monitor the storage capacity and usage of your NFS share.

Go further

Join our community of users.

Czy ta strona była pomocna?