Skip to content

Add filesystems docs #710

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: main
Choose a base branch
from
Open

Add filesystems docs #710

wants to merge 1 commit into from

Conversation

MoteHue
Copy link
Contributor

@MoteHue MoteHue commented Jun 23, 2025

No description provided.

@MoteHue MoteHue requested a review from a team as a code owner June 23, 2025 13:04
@@ -0,0 +1,77 @@
# Overview

The Slurm appliance supports mounting shared filesystems using [CephFS](https://docs.ceph.com/en/latest/cephfs/) via [OpenStack Manila](https://wiki.openstack.org/wiki/Manila). These docs explain:
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I usually link to docs rather than the Wiki which tends to be unmaintained.

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


- How to configure the Slurm Appliance to mount these Manila shares.

- How to disable use Manila shares for a shared home directory.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"use of" or "using"?

If this is the first time Manila is being used on the system, a CephFS share type will need to be created. You will need admin credentials to do this.

```bash
openstack share type create cephfs-type false --extra-specs storage_protocol=CEPHFS, vendor_name=Ceph
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I guess you need quotes around the extra-specs argument, or to remove the space after the comma?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I actually found it didn't work the same when wrapping these in quotes, it would include the second option as part of the first extra spec.
This does annoyingly mean it only worked when --extra-specs was the last argument.

openstack share type create cephfs-type-2 false --extra-specs 'storage_protocol=CEPHFS, vendor_name=Ceph'
openstack share type list
+--------------------------------------+---------------+------------+------------+--------------------------------------+---------------------------------------------+-------------+
| ID                                   | Name          | Visibility | Is Default | Required Extra Specs                 | Optional Extra Specs                        | Description |
+--------------------------------------+---------------+------------+------------+--------------------------------------+---------------------------------------------+-------------+
| c3937c6d-bbca-4d8c-b4b4-3fcf1afc89e6 | cephfs-type   | public     | False      | driver_handles_share_servers : False | vendor_name : Ceph                          | None        |
|                                      |               |            |            |                                      | storage_protocol : CEPHFS                   |             |
| 00f9c0b6-8bb4-4ce4-915c-590caee3b696 | cephfs-type-2 | public     | False      | driver_handles_share_servers : False | storage_protocol : CEPHFS, vendor_name=Ceph | None        |
+--------------------------------------+---------------+------------+------------+--------------------------------------+---------------------------------------------+-------------+

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Turns out that wasn't working, I actually needed to drop the comma

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The help command says:

  --extra-specs [<key=value> ...]
                        Extra specs key and value of share type that will be used for share type creation. OPTIONAL: Default=None. example --extra-specs thin_provisioning='<is> True', replication_type=readable.

Is the help text wrong?


## Configuring the Slurm Appliance for Manila

To mount shares onto hosts in a group, add the to the `manila` group.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
To mount shares onto hosts in a group, add the to the `manila` group.
To mount shares onto hosts in a group, add them to the `manila` group.


The Slurm appliance supports mounting shared filesystems using [CephFS](https://docs.ceph.com/en/latest/cephfs/) via [OpenStack Manila](https://wiki.openstack.org/wiki/Manila). These docs explain:

- How to create the shares in OpenStack Manilla
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- How to create the shares in OpenStack Manilla
- How to create the shares in OpenStack Manila

openstack share type create cephfs-type false --extra-specs storage_protocol=CEPHFS, vendor_name=Ceph
```

Once this exists, create a share using credentials for the Slurm project. An access rule also needs to be created, where the “access_to” argument (`openstack share access create <share> <access_type> <access_to>`) is a user that will be created in Ceph. This needs to be globally unique in Ceph, so needs to be different for each OpenStack project.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Once this exists, create a share using credentials for the Slurm project. An access rule also needs to be created, where the access_to argument (`openstack share access create <share> <access_type> <access_to>`) is a user that will be created in Ceph. This needs to be globally unique in Ceph, so needs to be different for each OpenStack project.
Once this exists, create a share using credentials for the Slurm project. An access rule also needs to be created, where the `access_to` argument (`openstack share access create <share> <access_type> <access_to>`) is a user that will be created in Ceph. This needs to be globally unique in Ceph, so needs to be different for each OpenStack project.


Set the Tofu variable `home_volume_size = 0` to stop Tofu from creating a new home volume. NB: If the control node has already been deployed, re-running Tofu will delete the home volume and delete/recreate the control node.

Finally, add the home directory to the list of shares (the share should be created already in OpenStack).
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Finally, add the home directory to the list of shares (the share should be created already in OpenStack).
Finally, add the home directory to the list of shares (the share should already be created in OpenStack).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants