Before this update, deploying Red Hat Ceph Storage (RHCS) with the `--crush-hierachy` parameter failed with an 'assimilate.conf not found' error when setting crush rules.
+
With this update, the RHCS CLI does not bind mount `assimilate.conf` and RHCS sets crush rules successfully.
Description of problem:
When using deployed-ceph with `--crush-hierarchy` parameter to the ceph deploy command, a file has to exist but should not be needed by default.
Version-Release number of selected component (if applicable):
RHOS-17.1-RHEL-9-20230525.n.1
How reproducible:
Deploy ceph with `--crush-hierarchy` parameter and without `--config` nor pre-created ceph.conf.
Actual results:
The ceph deployment will fail:
2023-05-29 14:59:42,544 p=165056 u=stack n=ansible | 2023-05-29 14:59:42.544281 | fa163e4e-4a57-698b-b613-0000000000d7 | FATAL | insert new default crush rule into daemon to prevent restart | controller-0 -> 172.16.200.13 | item=controller-2 | error={"ansible_loop_var": "item", "changed": false, "cmd": ["podman", "run", "--rm", "--net=host", "--ipc=host", "--volume", "/var/lib/ceph/305f99dc-9741-55f8-879a-82b88672831a/config/:/etc/ceph:z", "--volume", "/home/ceph-admin/assimilate_ceph.conf:/home/assimilate_ceph.conf:z", "--volume", "/var/run/ceph/305f99dc-9741-55f8-879a-82b88672831a:/var/run/ceph:z", "--entrypoint", "ceph", "registry-proxy.engineering.redhat.com/rh-osbs/rhceph:6-115", "--admin-daemon", "/var/run/ceph/ceph-mon.controller-2.shiftstack.test.asok", "config", "set", "osd_pool_default_crush_rule", "3"], "delta": "0:00:00.048437", "end": "2023-05-29 18:59:42.521240", "item": "controller-2", "msg": "non-zero return code", "rc": 125, "start": "2023-05-29 18:59:42.472803", "stderr": "Error: statfs /home/ceph-admin/assimilate_ceph.conf: no such file or directory", "stderr_lines": ["Error: statfs /home/ceph-admin/assimilate_ceph.conf: no such file or directory"], "stdout": "", "stdout_lines": []}
2023-05-29 14:59:42,545 p=165056 u=stack n=ansible | [WARNING]: ('controller-0 -> 172.16.200.13',
'fa163e4e-4a57-698b-b613-0000000000d7') missing from stats
Expected results:
ceph.conf is not required if I don't want to provide one, so ceph-cli should not try to bind mount /home/ceph-admin/assimilate_ceph.conf which doesn't exist.
Also weird:
```
[root@controller-0 ~]# file /home/ceph-admin/assimilate_ceph.conf
/home/ceph-admin/assimilate_ceph.conf: ASCII text
```
The file exists...
1. assimilate_ceph.conf is an argument passed to the cephadm bootstrap command.
2. cephadm boostrap is only run on one node (the first controller node by default)
3. Thus, it's expected that it not be present on the other two controllers
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 (Red Hat OpenStack Platform 17.1.2 bug fix and enhancement advisory), 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/RHBA-2024:0209
Description of problem: When using deployed-ceph with `--crush-hierarchy` parameter to the ceph deploy command, a file has to exist but should not be needed by default. Version-Release number of selected component (if applicable): RHOS-17.1-RHEL-9-20230525.n.1 How reproducible: Deploy ceph with `--crush-hierarchy` parameter and without `--config` nor pre-created ceph.conf. Actual results: The ceph deployment will fail: 2023-05-29 14:59:42,544 p=165056 u=stack n=ansible | 2023-05-29 14:59:42.544281 | fa163e4e-4a57-698b-b613-0000000000d7 | FATAL | insert new default crush rule into daemon to prevent restart | controller-0 -> 172.16.200.13 | item=controller-2 | error={"ansible_loop_var": "item", "changed": false, "cmd": ["podman", "run", "--rm", "--net=host", "--ipc=host", "--volume", "/var/lib/ceph/305f99dc-9741-55f8-879a-82b88672831a/config/:/etc/ceph:z", "--volume", "/home/ceph-admin/assimilate_ceph.conf:/home/assimilate_ceph.conf:z", "--volume", "/var/run/ceph/305f99dc-9741-55f8-879a-82b88672831a:/var/run/ceph:z", "--entrypoint", "ceph", "registry-proxy.engineering.redhat.com/rh-osbs/rhceph:6-115", "--admin-daemon", "/var/run/ceph/ceph-mon.controller-2.shiftstack.test.asok", "config", "set", "osd_pool_default_crush_rule", "3"], "delta": "0:00:00.048437", "end": "2023-05-29 18:59:42.521240", "item": "controller-2", "msg": "non-zero return code", "rc": 125, "start": "2023-05-29 18:59:42.472803", "stderr": "Error: statfs /home/ceph-admin/assimilate_ceph.conf: no such file or directory", "stderr_lines": ["Error: statfs /home/ceph-admin/assimilate_ceph.conf: no such file or directory"], "stdout": "", "stdout_lines": []} 2023-05-29 14:59:42,545 p=165056 u=stack n=ansible | [WARNING]: ('controller-0 -> 172.16.200.13', 'fa163e4e-4a57-698b-b613-0000000000d7') missing from stats Expected results: ceph.conf is not required if I don't want to provide one, so ceph-cli should not try to bind mount /home/ceph-admin/assimilate_ceph.conf which doesn't exist.