On Fri, 20 Mar 2020, Jeff Layton wrote:
On Fri, 2020-03-20 at 15:04 +0000, Sage Weil wrote:
On Fri, 20 Mar 2020, Jeff Layton wrote:
I've had this PR sitting around for a while:
https://github.com/ceph/ceph/pull/31885
It's bitrotted a bit, and I'll clean that up soon, but after looking over cephadm, I wonder if it would make sense to also extend it to do these actions on machines that are just intended to be kcephfs or krbd clients.
If you could just adjust this PR to update doc/cephadm/client-setup.rst or similar instead, that would be great. We plan to delete the ceph-deploy section of the docs entirely Real Soon Now.
Done. Still waiting on the doc render though to make sure it looks ok.
Thanks!
We typically don't need to do a full-blown install on the clients, so being able to install just the minimum packages needed and do a minimal conf/keyring setup would be nice.
Does this make sense? I'll open a tracker if the principal cephadm devs are OK with it.
With cephadm, you can do this with
# curl .... # sudo ./cephadm add-repo --release octopus # sudo ./cephadm install ceph-common
without having to think about which distro you're using.
Eventually we might want to teach cephadm how to manage the host-side packages on certain hosts so that it keeps ceph.conf and client package(s) up to date, but that needs some design thinking first... until then, having simple docs would be great!
I'm mostly interested in making it super easy to set up a new client machine to do a mount or krbd setup. Keeping it all updated would be bonus of course, but the initial setup is the real pain point I think.
For that, it would be really nice to be able to just run "cephadm client-setup" and have it do everything needed. Should we be looking to cephadm for that or is it sort of out of scope of that project since it's really geared toward managing the server-side cluster?
I think it has to remain multiple steps right now, since 1- the 'ceph config generate-minimal-conf' needs to be run somewhere where the CLI is working--so not on the client host. and then written to /etc/ceph, so you need mkdir -p /etc/ceph cat > /etc/ceph/ceph.conf ... ditto for the keyring 2- cephadm has to be downloaded/installed, so there is the obligatory curl or install step 3- the only thing left is # sudo ./cephadm add-repo --release octopus # sudo ./cephadm install ceph-common and i'm not sure that it is helpful to combine those. What probably *would* make sense at some point is a command you run on a remote (ceph) host that's like ceph cephadm setup-client-host <hostname> [<ip>] but that would require setup of an ssh key. Or a script that interactively lets you authenticate and then performs all needed steps, similar to ssh-copy-id. But that needs some more thought around how it should work. sage