-
Notifications
You must be signed in to change notification settings - Fork 85
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Improved API and clush Worker selection #421
Comments
Also related to #291 |
I think that most end users (those who invoke clush directly) only care about what the last worker (distant worker) actually is. That is, I might like to say |
That's a very interesting comment. We don't have enough feedback on that part as I was always working in environment where I can understand that some other environments/clusters uses |
No, but that's not really what I'm talking about. The fact that tree mode is implemented as a worker is an implementation detail that is not obvious/relevant for the casual end-user. The questions "should I use gateway nodes" and "what protocol do I use to talk to the end node" don't necessarily need to be related.
This doesn't seem obvious to me. I think that something like |
There is likely room for improvements in this area. That's not easy to manage all possible use cases and keep that simple enough for sysadmins. Your case is even adding a new use case where you want to control the worker selection on the final gateways. |
Currently, there is a mismatch between the API (eg. local/distant worker selection) and the options offered by clush. It's not great. The API could be improved for a better worker selection: at the moment
task.shell()
offers options liketree=None|False|True
andremote=False|True
but not a direct worker selection, so it's not easy forclush
itself simply to control the worker selection in command line.From an end-user point of view, it would be great to allow something as simple as this:
clush --worker=tree
clush --worker=ssh
clush --worker=exec
But it's not that simple. First, note that
--worker=tree
is not recognized at the moment. Also the Tree worker is used only if topology.conf is available (otherwise, it's useless). Then, there is a notion of local and distant worker that can be used by the tree worker (depending onremote=yes|no
).Note that
clush --worker=ssh
should definitely be a way to disable the tree mode, but this doesn't work, so I'm going to submit a patch for this.The text was updated successfully, but these errors were encountered: