SUSE / DeepSea

A collection of Salt files for deploying, managing and automating Ceph.
GNU General Public License v3.0
161 stars 75 forks source link

runners/upgrade: Add ceph_salt_config function #1840

Closed tserong closed 4 years ago

tserong commented 4 years ago

This adds minimal JSON config generation suitable for import into ceph-salt when switching from DeepSea to cephadm, so the admin doesn't have to manually re-add all the minions. To use:

The admin still needs to use ceph-salt config to generate ssh keys, set the container image, and set time server subnet and external servers.

Signed-off-by: Tim Serong tserong@suse.com

tserong commented 4 years ago

If someone can come up with a better name for this function, I welcome it, hence the DNM label :-)

swiftgist commented 4 years ago

I think the bootstrap_mon shouldn't have to be worked around, but I understand that's the case currently.

Generally, it's fine. When or how would this get called?

tserong commented 4 years ago

When or how would this get called?

The admin would need to run it per the instructions in the commit message, before removing DeepSea and installing ceph-salt.

Martin-Weiss commented 4 years ago

In my setup I have "time_init: disabled" in /srv/pillar/ceph/stack/global.yml however the json has this:

"time_server": {
    "enabled": true,
    "external_time_servers": [
        "pool.ntp.org"
    ],
    "server_host": "",
    "subnet": null
}

I assume this this wrong? I would have expected that if I have time_init disabled it will create a json for ceph-salt that has the same config?

tserong commented 4 years ago

Closing in favour of #1852 - sorry to break the flow of comments like that, but the new PR adds a whole bunch of other stuff too.

I didn't add tuned/latency and tuned/throughput roles, as I couldn't see a way of deciding what minions to apply those to, based on DS config.