Description of problem: Manila's CephFS drivers have the ability to take snapshots, but not create shares from them. This ability was turned off by default because CephFS snapshots were considered experimental and unstable in RHCS3.x (Ceph Luminous) [1]. To enable them on RHCS3/Luminous ceph clusters, you had to execute with admin caps: ceph mds set allow_new_snaps true --yes-i-really-mean-it Due to this limitation, snapshots are disabled by default even in the manila driver [2]. To create CephFS snapshots in manila, apart from setting the above option on ceph, you will also need to do the following: 1. In `/etc/manila/manila.conf`, set "cephfs_enable_snapshots=True" in the ceph backend section This can be done with TripleO using the THT option ``ManilaCephFSCephFSEnableSnapshots: true`` This allows the driver to report "snapshot_support=True" to the manila scheduler, allowing manila to schedule shares that can be snapshotted on this backend/driver. 2. Set "snapshot_support=True" in the share type # a new share type: manila type-create cephfstype False --snapshot-support True # an existing share type: manila type-key cephfstype set snapshot_support='<is> True' # or just True, but you're not being fancy 3. Use the share type to create shares, and create snapshots: manila create nfs 1 --share-type cephfstype --name my-test-share manila snapshot-create my-test-share --name my-test-snapshot With OSP 16 and 16.1, we support RHCS4.x (Ceph Nautilus) and snapshots are supported in this release [3]. Snapshots are disabled by default only on existing filesystems, and they can be enabled using: ceph fs set <fs_name> allow_new_snaps true However, on green field deployments, where the underlying filesystem used by manila is brand new on RHCS4, this step is not required. You can now create cephfs snapshots by performing steps (1)(2)(3) on OSP. We need to test this feature and remove our own documentation warning from the CephFS-via-NFS guide [4] and the CephFS-native guide [5]. Version-Release number of selected component (if applicable): 16+ Additional info: [1] https://access.redhat.com/documentation/en-us/red_hat_ceph_storage/3/html-single/ceph_file_system_guide/index#cephfs-limitations [2] https://opendev.org/openstack/manila/src/commit/fbcabd2c03985000bd9b4d4d9a4478bc0b784efa/manila/share/drivers/cephfs/driver.py#L70-L73 [3] https://access.redhat.com/documentation/en-us/red_hat_ceph_storage/4/html/file_system_guide/introduction-to-the-ceph-file-system#cephfs-limitations [4] https://access.redhat.com/documentation/en-us/red_hat_openstack_platform/16.0/html/cephfs_via_nfs_back_end_guide_for_the_shared_file_system_service/assembly_cephfs-install#proc-deploy-env_CephFS-install (contains a warning regarding parameter: ManilaCephFSCephFSEnableSnapshots) [5] https://access.redhat.com/documentation/en-us/red_hat_openstack_platform/16.0/html/cephfs_back_end_guide_for_the_shared_file_system_service/edit-env-file (does not contain any warnings, but this documentation is being rewritten as part of https://bugzilla.redhat.com/show_bug.cgi?id=1812694)
Changed Doc Contact to default email list.
Flagged as a key feature for 16.2, please add a target milestone of Beta.
Tested using: openstack-manila-9.1.6-2.20210603154809.479a8a7.el8ost.1.noarch (overcloud) [stack@undercloud-0 ~]$ manila type-list +--------------------------------------+---------+------------+------------+--------------------------------------+-------------------------+-------------+ | ID | Name | visibility | is_default | required_extra_specs | optional_extra_specs | Description | +--------------------------------------+---------+------------+------------+--------------------------------------+-------------------------+-------------+ | 696582a3-a297-493e-b44c-4aa8d7e9d6ca | default | public | YES | driver_handles_share_servers : False | snapshot_support : True | None | +--------------------------------------+---------+------------+------------+--------------------------------------+-------------------------+-------------+ (overcloud) [stack@undercloud-0 ~]$ manila create cephfs 1 +---------------------------------------+--------------------------------------+ | Property | Value | +---------------------------------------+--------------------------------------+ | id | 5b73c382-c04f-43c6-887d-62c3c8ded537 | | size | 1 | | availability_zone | None | | created_at | 2021-08-12T07:31:18.000000 | | status | creating | | name | None | | description | None | | project_id | 4351959361dc43e7902899eaa6f66730 | | snapshot_id | None | | share_network_id | None | | share_proto | CEPHFS | | metadata | {} | | share_type | 696582a3-a297-493e-b44c-4aa8d7e9d6ca | | is_public | False | | snapshot_support | True | | task_state | None | | share_type_name | default | | access_rules_status | active | | replication_type | None | | has_replicas | False | | user_id | c51b7eb2e2f8481095a35169afc500f4 | | create_share_from_snapshot_support | False | | revert_to_snapshot_support | False | | share_group_id | None | | source_share_group_snapshot_member_id | None | | mount_snapshot_support | False | | share_server_id | None | | host | | +---------------------------------------+--------------------------------------+ (overcloud) [stack@undercloud-0 ~]$ manila list +--------------------------------------+------+------+-------------+-----------+-----------+-----------------+-------------------------+-------------------+ | ID | Name | Size | Share Proto | Status | Is Public | Share Type Name | Host | Availability Zone | +--------------------------------------+------+------+-------------+-----------+-----------+-----------------+-------------------------+-------------------+ | 5b73c382-c04f-43c6-887d-62c3c8ded537 | None | 1 | CEPHFS | available | False | default | hostgroup@cephfs#cephfs | nova | +--------------------------------------+------+------+-------------+-----------+-----------+-----------------+-------------------------+-------------------+ (overcloud) [stack@undercloud-0 ~]$ manila snapshot-create 5b73c382-c04f-43c6-887d-62c3c8ded537 +-------------------+--------------------------------------+ | Property | Value | +-------------------+--------------------------------------+ | id | f5b59f44-023e-4ed4-a205-147e782097ae | | share_id | 5b73c382-c04f-43c6-887d-62c3c8ded537 | | share_size | 1 | | created_at | 2021-08-12T07:32:02.755926 | | status | creating | | name | None | | description | None | | size | 1 | | share_proto | CEPHFS | | provider_location | None | | user_id | c51b7eb2e2f8481095a35169afc500f4 | | project_id | 4351959361dc43e7902899eaa6f66730 | +-------------------+--------------------------------------+ (overcloud) [stack@undercloud-0 ~]$ manila snapshot-list +--------------------------------------+--------------------------------------+-----------+------+------------+ | ID | Share ID | Status | Name | Share Size | +--------------------------------------+--------------------------------------+-----------+------+------------+ | f5b59f44-023e-4ed4-a205-147e782097ae | 5b73c382-c04f-43c6-887d-62c3c8ded537 | available | None | 1 | +--------------------------------------+--------------------------------------+-----------+------+------------+
According to our records, this should be resolved by openstack-manila-9.1.6-2.20210603154809.479a8a7.el8ost.1. This build is available now.