Bug 2259938
Summary: | [RFE] [NFS-Ganesha] Implement prerequisite in the ceph codebase itself to enable the NFS v3 mount on linux or windows client | ||
---|---|---|---|
Product: | [Red Hat Storage] Red Hat Ceph Storage | Reporter: | Manisha Saini <msaini> |
Component: | Cephadm | Assignee: | Adam King <adking> |
Status: | CLOSED ERRATA | QA Contact: | Manisha Saini <msaini> |
Severity: | high | Docs Contact: | Akash Raj <akraj> |
Priority: | unspecified | ||
Version: | 7.1 | CC: | adking, akraj, cephqe-warriors, gouthamr, kkeithle, tserlin, vdas |
Target Milestone: | --- | Keywords: | FutureFeature |
Target Release: | 7.1 | ||
Hardware: | Unspecified | ||
OS: | Unspecified | ||
Whiteboard: | |||
Fixed In Version: | ceph-18.2.1-63.el9cp | Doc Type: | No Doc Update |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2024-06-13 14:25:02 UTC | Type: | Bug |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: | |||
Bug Depends On: | |||
Bug Blocks: | 2267614, 2298578, 2298579 |
Description
Manisha Saini
2024-01-23 21:44:45 UTC
ganesha.conf and export.conf are created by cephadm and/or ceph dashboard. will clone to ceph dashboard as necessary. Hi Adam, Given that RHCS 7.1 is going to support the NFS v3 protocol, when can we expect the fix for this BZ? This BZ is important in terms of user usability. Else documentation BZ will be required to have all the changes needed to enable v3 support in the documentation guides. Verified BZ with # ceph --version ceph version 18.2.1-67.el9cp (e63e407e02b2616a7b4504a4f7c5a76f89aad3ce) reef (stable) # ceph versions { "mon": { "ceph version 18.2.1-67.el9cp (e63e407e02b2616a7b4504a4f7c5a76f89aad3ce) reef (stable)": 3 }, "mgr": { "ceph version 18.2.1-67.el9cp (e63e407e02b2616a7b4504a4f7c5a76f89aad3ce) reef (stable)": 2 }, "osd": { "ceph version 18.2.1-67.el9cp (e63e407e02b2616a7b4504a4f7c5a76f89aad3ce) reef (stable)": 18 }, "mds": { "ceph version 18.2.1-67.el9cp (e63e407e02b2616a7b4504a4f7c5a76f89aad3ce) reef (stable)": 2 }, "rgw": { "ceph version 18.2.1-67.el9cp (e63e407e02b2616a7b4504a4f7c5a76f89aad3ce) reef (stable)": 2 }, "overall": { "ceph version 18.2.1-67.el9cp (e63e407e02b2616a7b4504a4f7c5a76f89aad3ce) reef (stable)": 27 } } 1. Created ganesha cluster [ceph: root@ceph-mani-l5tjk3-node1-installer /]# ceph nfs cluster ls [] [ceph: root@ceph-mani-l5tjk3-node1-installer /]# ceph nfs cluster create nfsganesha "ceph-mani-l5tjk3-node1-installer ceph-mani-l5tjk3-node2" [ceph: root@ceph-mani-l5tjk3-node1-installer /]# ceph nfs cluster ls [ "nfsganesha" ] 2. Validate the default ganesha.conf file ===> It contains the v3 protocol enable params by default [ceph: root@ceph-mani-l5tjk3-node1-installer /]# cat /usr/share/ceph/mgr/cephadm/templates/services/nfs/ganesha.conf.j2 # {{ cephadm_managed }} NFS_CORE_PARAM { Enable_NLM = false; Enable_RQUOTA = false; Protocols = 3, 4; ====> Added by default in ganesha.conf file mount_path_pseudo = true; NFS_Port = {{ port }}; {% if bind_addr %} Bind_addr = {{ bind_addr }}; {% endif %} {% if haproxy_hosts %} HAProxy_Hosts = {{ haproxy_hosts|join(", ") }}; {% endif %} } NFSv4 { Delegations = false; RecoveryBackend = 'rados_cluster'; Minor_Versions = 1, 2; } RADOS_KV { UserId = "{{ user }}"; nodeid = "{{ nodeid }}"; pool = "{{ pool }}"; namespace = "{{ namespace }}"; } RADOS_URLS { UserId = "{{ user }}"; watch_url = "{{ url }}"; } RGW { cluster = "ceph"; name = "client.{{ rgw_user }}"; } %url {{ url }} 3. Create ganesha export [ceph: root@ceph-mani-l5tjk3-node1-installer /]# ceph nfs export create cephfs nfsganesha /ganesha1 cephfs --path=/ { "bind": "/ganesha1", "cluster": "nfsganesha", "fs": "cephfs", "mode": "RW", "path": "/" } [ceph: root@ceph-mani-l5tjk3-node1-installer /]# ceph nfs export info nfsganesha /ganesha1 { "access_type": "RW", "clients": [], "cluster_id": "nfsganesha", "export_id": 1, "fsal": { "cmount_path": "/", "fs_name": "cephfs", "name": "CEPH", "user_id": "nfs.nfsganesha.cephfs" }, "path": "/", "protocols": [ 3, =========> v3 protocol added by default at the time of export creation 4 ], "pseudo": "/ganesha1", "security_label": true, "squash": "none", "transports": [ "TCP" ] } 4. Mount the export on client via v3 protocol [root@ceph-mani-l5tjk3-node7 ~]# cd /mnt/ [root@ceph-mani-l5tjk3-node7 mnt]# ls [root@ceph-mani-l5tjk3-node7 mnt]# mkdir ganesha [root@ceph-mani-l5tjk3-node7 mnt]# mount -t nfs -o vers=3 10.0.206.62:/ganesha1 /mnt/ganesha/ Created symlink /run/systemd/system/remote-fs.target.wants/rpc-statd.service → /usr/lib/systemd/system/rpc-statd.service. [root@ceph-mani-l5tjk3-node7 mnt]# cd /mnt/ganesha/ [root@ceph-mani-l5tjk3-node7 ganesha]# touch f1 10.0.206.62:/ganesha1 on /mnt/ganesha type nfs (rw,relatime,vers=3,rsize=1048576,wsize=1048576,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,mountaddr=10.0.206.62,mountvers=3,mountport=46348,mountproto=udp,local_lock=none,addr=10.0.206.62) Mount for v3 works as expect without modifying the ganesha.conf file and export file.Moving this BZ to verified state. Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory (Critical: Red Hat Ceph Storage 7.1 security, enhancements, and bug fix update), and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHSA-2024:3925 |