cephadm: add nfs-ganesha deployment#33064
Conversation
|
Do not merge, still WIP |
18454f0 to
b75df8e
Compare
|
We might need to make the systemd unit a bit more intelligent: https://github.com/nfs-ganesha/nfs-ganesha/blob/499c9c57e134767e2d2f664893896cb15d593923/src/scripts/systemd/nfs-ganesha.service.el7 |
cfabbb2 to
824ed69
Compare
123a241 to
171305f
Compare
1aa41ae to
e820916
Compare
src/cephadm/cephadm
Outdated
| url += self.get_ganesha_config_object() | ||
| return url | ||
|
|
||
| def get_ganesha_config(self): |
There was a problem hiding this comment.
IMO this should live in mgr/cephadm/module.py, not here, and be passed through as a file to simply write out... just like the monitoring components work. With that change, I wonder if this NFSGanesha class is needed, since most of this logic would exist in mgr/cephadm instead.
There was a problem hiding this comment.
👍 I'll rework this PR to move the ganesha config into the json file
There was a problem hiding this comment.
Reworked to pass ganesha.conf (and any other additional /etc/ganesha/ conf file) via the files dict of the config-json
e820916 to
0e2bc10
Compare
0e2bc10 to
f49f9c5
Compare
|
needs rebase |
Signed-off-by: Michael Fritch <mfritch@suse.com>
Signed-off-by: Michael Fritch <mfritch@suse.com>
Signed-off-by: Michael Fritch <mfritch@suse.com>
also allows for any arbitrary nfs conf to be deployed by adding items to the `files` dict of the config-json Signed-off-by: Michael Fritch <mfritch@suse.com>
Signed-off-by: Michael Fritch <mfritch@suse.com>
Signed-off-by: Michael Fritch <mfritch@suse.com>
container unit pre-start/post-stop for ganesha grace db Signed-off-by: Michael Fritch <mfritch@suse.com>
Signed-off-by: Michael Fritch <mfritch@suse.com>
Signed-off-by: Michael Fritch <mfritch@suse.com>
allow rados obj. create to succeed during a single node test Signed-off-by: Michael Fritch <mfritch@suse.com>
stop any running nfs servers before attempting a deploy of nfs-ganesha Signed-off-by: Michael Fritch <mfritch@suse.com>
we only need to specify the rados pool and config object url Signed-off-by: Michael Fritch <mfritch@suse.com>
Signed-off-by: Michael Fritch <mfritch@suse.com>
Signed-off-by: Michael Fritch <mfritch@suse.com>
Signed-off-by: Michael Fritch <mfritch@suse.com>
the service might be enabled, but not running Signed-off-by: Michael Fritch <mfritch@suse.com>
fixes mypy errors: cephadm:1682: error: Incompatible types in assignment (expression has type "str", variable has type "int") cephadm:1683: error: List item 3 has incompatible type "int"; expected "str" cephadm:1686: error: List item 3 has incompatible type "int"; expected "str" Found 3 errors in 1 file (checked 1 source file) Signed-off-by: Michael Fritch <mfritch@suse.com>
Signed-off-by: Michael Fritch <mfritch@suse.com>
eceb7b9 to
d02bfa3
Compare
Add support for
nfs-ganeshacontainers manged bybin/cephadmRADOS pool config is stored in a json file:
The
nfs-ganeshacontainer can be deployed viacephadm:Signed-off-by: Michael Fritch mfritch@suse.com
Checklist
Show available Jenkins commands
jenkins retest this pleasejenkins test crimson perfjenkins test signedjenkins test make checkjenkins test make check arm64jenkins test submodulesjenkins test dashboardjenkins test dashboard backendjenkins test docsjenkins render docsjenkins test ceph-volume alljenkins test ceph-volume tox