Closed swiftgist closed 4 years ago
@bk201
I tested two cases:
cephfs_data
pool are migrated to ganesha_config
pool and the dashboard config is correct. But the Ganesha daemons are not restarted (it's an existing issue, not caused by this PR). I have to restart them manually so they can load the new generated ganesha.conf
file.
An error occurred when rendering one of the following states:
- ceph.ganesha.pool (/srv/salt/ceph/ganesha/pool)
Error description:
Rendering SLS 'base:ceph.ganesha.pool.default' failed: Jinja error: must be str, not NoneType Traceback (most recent call last): File "/usr/lib/python3.6/site-packages/salt/utils/templates.py", line 394, in render_jinja_tmpl output = template.render(*decoded_context) File "/usr/lib/python3.6/site-packages/jinja2/asyncsupport.py", line 76, in render return original_render(self, args, **kwargs) File "/usr/lib/python3.6/site-packages/jinja2/environment.py", line 1008, in render return self.environment.handle_exception(exc_info, True) File "/usr/lib/python3.6/site-packages/jinja2/environment.py", line 780, in handle_exception reraise(exc_type, exc_value, tb) File "/usr/lib/python3.6/site-packages/jinja2/_compat.py", line 37, in reraise raise value.with_traceback(tb) File "", line 11, in top-level template code TypeError: must be str, not NoneType
; line 11
[...]
{# Reconfigure Ganesha to use dedicated pool #}
{% set nfs_pool = salt['deepsea.find_pool'](['cephfs', 'rgw']) %} {% set files = salt['cmd.run']('rados -p ' + nfs_pool + ' -N ganesha ls') %} <======================
{% if files != "" %}
{% set tmpdir = salt['cmd.run']("mktemp -d") %}
Besides my own cluster, I have also verified this on a cluster from support. With respect to the fresh install, did you not have CephFS or RGW already included as roles? Or did you only have Ganesha assigned?
When I attempt to install ganesha without cephfs or rgw, I get a validation error:
# salt-run state.orch ceph.stage.3
firewall : disabled
apparmor : disabled
fsid : valid
public_network : valid
public_interface : valid
cluster_network : valid
cluster_interface : valid
ip_version : valid
monitors : valid
subvolume : valid
mgrs : valid
storage : valid
storage_role : valid
rgw : valid
master_role : valid
time_server : valid
fqdn : valid
ganesha : Ganesha requires either mds or rgw node in cluster.
So, I don't know what circumstance that find_pool
would return None unless the Ceph cluster was configured manually.
@susebot run teuthology
Commit 21c273bdc2d495a98eef3989d0fadcc7319f2b8b is NOT OK for suite deepsea:tier2. Check tests results in the Jenkins job: https://storage-ci.suse.de/job/pr-deepsea/459/
@susebot run teuthology
Commit 21c273bdc2d495a98eef3989d0fadcc7319f2b8b is NOT OK for suite deepsea:tier2. Check tests results in the Jenkins job: https://storage-ci.suse.de/job/pr-deepsea/460/
@susebot run teuthology
Commit bb1cecaa1c1c3cb9c71ff9e09166bfbcd2d434d6 is NOT OK for suite deepsea:tier2. Check tests results in the Jenkins job: https://storage-ci.suse.de/job/pr-deepsea/462/
@susebot run teuthology
Commit b693c9e96ae561d15e111dc7918bc7938674a1e1 is NOT OK for suite deepsea:tier2. Check tests results in the Jenkins job: https://storage-ci.suse.de/job/pr-deepsea/463/
Commit $ghprbActualCommit is NOT OK for suite deepsea:tier2. Check tests results in the Jenkins job: https://storage-ci.suse.de/job/pr-deepsea/464/
@susebot run teuthology
Commit b693c9e96ae561d15e111dc7918bc7938674a1e1 is NOT OK for suite deepsea:tier2. Check tests results in the Jenkins job: https://storage-ci.suse.de/job/pr-deepsea/465/
@susebot run teuthology
Commit b693c9e96ae561d15e111dc7918bc7938674a1e1 is NOT OK for suite deepsea:tier2. Check tests results in the Jenkins job: https://storage-ci.suse.de/job/pr-deepsea/466/
Stage.4 fails, this is not a CI issue @swiftgist
2020-08-31T14:24:34.921 INFO:teuthology.orchestra.run.target-ses-060.stdout: |_ target-ses-099.ecp.suse.de: enable and start nfs-ganesha(nfs-ganesha) fail
@susebot run teuthology
Commit b693c9e96ae561d15e111dc7918bc7938674a1e1 is NOT OK for suite deepsea:tier2. Check tests results in the Jenkins job: https://storage-ci.suse.de/job/pr-deepsea/468/
@susebot run teuthology
Commit b693c9e96ae561d15e111dc7918bc7938674a1e1 is NOT OK for suite deepsea:tier2. Check tests results in the Jenkins job: https://storage-ci.suse.de/job/pr-deepsea/469/
@susebot run teuthology
Commit ab69a1e3d922bddf2ec2878975bd6aceb2b09049 is NOT OK for suite deepsea:tier2. Check tests results in the Jenkins job: https://storage-ci.suse.de/job/pr-deepsea/470/
@susebot run teuthology
@susebot run teuthology suse/tier2/functional-1node
Commit 6bc84ecfa4d98df42f39d29eddac470f0e5477be is OK for suite suse/tier2/functional-1node. Check tests results in the Jenkins job: https://storage-ci.suse.de/job/pr-deepsea/471/
@susebot run teuthology
Commit 6bc84ecfa4d98df42f39d29eddac470f0e5477be is OK for suite deepsea:tier2. Check tests results in the Jenkins job: https://storage-ci.suse.de/job/pr-deepsea/472/
cool, you consider this done @swiftgist @shyukri ?
IMHO, it should be fine now
With a sufficient number of objects in a pool, the
rados -p POOL -N ganesha ls
command can take several minutes to complete. The side effect is the dashboard can timeout. Do not use cephfs_data nor rgw for storing ganesha configurations.Signed-off-by: Eric Jackson ejackson@suse.com bnc: 1172689
Checklist: