anskiy | I've deploy Ceph via ceph-ansible intergration and everytime I run playbooks like this: `ceph-ansible` -> `os-nova-install` -> `ceph-ansible` I get all my OSDs restarted. That happens because ceph-ansible renders ceph.conf on OSDs from variables whilst os-nova-install slurps ceph.conf from mon host. | 07:42 |
---|---|---|
anskiy | The difference between the two is in absence of `mon initial members = oscp99` and `osd pool default crush rule = -1` on OSD host. I was thinking about using `ceph_client_ceph_conf_overrides` (`ceph_client` variable to add something to `ceph.conf` via config-template) like this: https://paste.opendev.org/show/bfWm5UnkCmHTygg9iRmE/. | 07:42 |
anskiy | And here is the actual question: in config-template there is an `ignore_none_type` attribute which defaults to True and I was assuming that if the value of variable in overrides is None (null in case of YAML) it would just remove it from configuration file, but it doesn't work that way: https://opendev.org/openstack/ansible-config_template/src/branch/master/plugins/action/config_template.py#L220-L228. Is this intended? | 07:42 |
anskiy | good morning. | 07:42 |
anskiy | I can probably go the other way around and set `mon initial members` and `osd pool default crush rule` via `ceph_client_ceph_conf_overrides` to the same values as on mon host, if this specific thing I'm asking about is not doable... | 07:45 |
noonedeadpunk | mornings | 08:42 |
noonedeadpunk | anskiy: I do recall a way to remove an option from the config... But on the other hand - ceph-ansible also uses our config-tempalte module, so maybe its easier to add something there rather then remove it? | 08:44 |
noonedeadpunk | Also, for ceph_cleint role in OSA you can supply static ceph.conf, which would disable fetching it from mons | 08:44 |
noonedeadpunk | anskiy: regarding param removal - you have tried this path, right? https://opendev.org/openstack/ansible-config_template/commit/2ccc59fa13c9834344d9c040cfa818b7d16f6800 | 08:46 |
noonedeadpunk | so it should be not `null` but `{}` | 08:46 |
noonedeadpunk | as `{}` represents null actually | 08:46 |
anskiy | noonedeadpunk: nope, I didn't, but I see, that with supplying `null` I get `None` in the code. Gonna try it, thanks. | 08:52 |
anskiy | noonedeadpunk: yeah, sure, I can work around it like that :) | 08:52 |
anskiy | about supplying static ceph.conf -- it's not gonna be "static", as I would have to parametrize it with variables from other places in `openstack_user_config`/`user_variables`, but this approach is doable too, yes. | 08:54 |
opendevreview | Dmitriy Rabotyagov proposed openstack/openstack-ansible-plugins master: Add openstack_resources role skeleton https://review.opendev.org/c/openstack/openstack-ansible-plugins/+/878794 | 10:17 |
opendevreview | Dmitriy Rabotyagov proposed openstack/openstack-ansible-plugins master: Allow to define cloud name for service_setup https://review.opendev.org/c/openstack/openstack-ansible-plugins/+/889167 | 10:17 |
opendevreview | Dmitriy Rabotyagov proposed openstack/openstack-ansible-plugins master: Allow to define cloud name for service_setup https://review.opendev.org/c/openstack/openstack-ansible-plugins/+/889167 | 10:17 |
anskiy | noonedeadpunk: removing via `{}` almost does the trick (https://paste.opendev.org/show/baWDkAxOwTRGXthK9Lq1/). Addint doesn't help, as order of options still changes. | 11:52 |
noonedeadpunk | ah, yes, it gets sorted.... | 12:15 |
*** melwitt is now known as jgwentworth | 18:26 |
Generated by irclog2html.py 2.17.3 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!