Project

General

Profile

Bug #50577

cephadm ganesha config breaks backward compatibility with ceph-ansible

Added by Francesco Pantano 18 days ago. Updated 9 days ago.

Status:
Triaged
Priority:
Urgent
Assignee:
Category:
-
Target version:
% Done:

0%

Source:
Community (user)
Tags:
Backport:
pacific
Regression:
No
Severity:
2 - major
Reviewed:
Affected Versions:
ceph-qa-suite:
Component(FS):
mgr/nfs
Labels (FS):
Pull request ID:
Crash signature (v1):
Crash signature (v2):

Description

The cephadm generated ganesha.conf differs from what manila uses because there's no flexibility in configuring different options other than [1].
The Openstack ganesha config used for manila was generated by ceph-ansible through [2].
The ganesha config produced by the nfs cephadm deployed daemon breaks the backward compatibility with the ceph-ansible generated one.
For this reason, even though issue [3] is solved, we won't still be able to properly configure the Manila project with Ceph.

Here an example of the config produced by ceph-ansible:

NFS_Core_Param
{
Bind_Addr={{ IP_ADDRESS }};
}
EXPORT_DEFAULTS {
Attr_Expiration_Time = 0;
}
CACHEINODE {
Dir_Chunk = 0;
NParts = 1;
Cache_Size = 1;
}
RADOS_URLS {
ceph_conf = '/etc/ceph/ceph.conf';
userid = "manila";
}
%url rados://manila_data/ganesha-export-index
NFSv4 {
RecoveryBackend = 'rados_kv';
}
RADOS_KV {
ceph_conf = '/etc/ceph/ceph.conf';
userid = "manila";
pool = "manila_data";
}
LOG {
Facility {
name = FILE;
destination = "/var/log/ganesha/ganesha.log";
enable = active;
}
}

[1] https://github.com/ceph/ceph/blob/master/src/pybind/mgr/cephadm/templates/services/nfs/ganesha.conf.j2
[2] https://github.com/ceph/ceph-ansible/blob/master/roles/ceph-nfs/templates/ganesha.conf.j2
[3] https://tracker.ceph.com/issues/50360


Related issues

Related to Orchestrator - Feature #50360: Configure the IP address for Ganesha New
Related to Orchestrator - Bug #46493: cephadm: need the feature to migrate NFS ganesha daemons from nautilus to octopus Rejected

History

#1 Updated by Ilya Dryomov 14 days ago

  • Project changed from rbd to CephFS

This is between cephadm and CephFS, moving to CephFS for now.

#2 Updated by Patrick Donnelly 14 days ago

  • Related to Feature #50360: Configure the IP address for Ganesha added

#3 Updated by Patrick Donnelly 14 days ago

  • Target version changed from v16.2.2 to v17.0.0
  • Source set to Community (user)
  • Backport set to pacific
  • Component(FS) mgr/nfs added

#4 Updated by Patrick Donnelly 13 days ago

  • Status changed from New to Triaged
  • Assignee set to Varsha Rao

#5 Updated by Varsha Rao 13 days ago

Francesco Pantano wrote:

The cephadm generated ganesha.conf differs from what manila uses because there's no flexibility in configuring different options other than [1].
The Openstack ganesha config used for manila was generated by ceph-ansible through [2].
The ganesha config produced by the nfs cephadm deployed daemon breaks the backward compatibility with the ceph-ansible generated one.
For this reason, even though issue [3] is solved, we won't still be able to properly configure the Manila project with Ceph.

You can use `ceph nfs cluster config set <clusterid> -i <config_file>` command to add different configuration options. This command works only with nfs-ganesha daemons deployed through `mgr/nfs` interface. As it uses specific pool and namespace.

https://docs.ceph.com/en/latest/cephfs/fs-nfs-exports/#set-customized-nfs-ganesha-configuration

#6 Updated by Sebastian Wagner 12 days ago

  • Related to Bug #46493: cephadm: need the feature to migrate NFS ganesha daemons from nautilus to octopus added

#7 Updated by Sage Weil 9 days ago

  • Priority changed from Normal to Urgent

Also available in: Atom PDF