[Gluster-devel] Gluster Coreutils
Jeff Darcy
jdarcy at redhat.com
Mon Jun 15 19:46:02 UTC 2015
> I'm Craig's manager for the duration of his internship @ FB, so I thought I'd
> better chime in here :). As Craig mentioned, our project plan is to
> implement C-based CLI utilities similar to what we have for NFS CLI
> utilities (we'll be open sourcing this in the coming days so you can see
> what we have there). Our time to completion is very aggressive for a
> project coded in C (~10 weeks or less), so we need to keep our project goals
> very focused (feature creep, architecture rabbit holes etc) to keep it on
> schedule and come out with a working "product" that scales to our use-cases.
>
> As such, rather than have "too many cook in the kitchen", I'd propose the
> initial implementation of ls/tail/cat/put/mkdir/rm/stat/cp be implemented by
> Craig, and we'll put the code up on the public repo as early as possible for
> public review and comment. We've definitely heard some great ideas from the
> list, and we've changed our approach to include:
>
> 1. Shell based interaction
> 2. Single binary (behavior changes based on symlink; any cons to this?)
> 3. Separate code repo/packaging (we'll probably go C99 because of this since
> we are no longer bound by the legacy C89 standards of the GFS repo).
>
> On the language debate (Python vs Go vs C), rather than get into this debate
> (which has good arguments on all sides) I'd simply encourage anyone who
> feels strongly about implementing the CLI in a different language to simply
> do so! More choice and competition among tools is never a bad thing, as it
> will only make them both better. Suffice it to say though, we feel strongly
> about the C based implementation so we are taking it on to provide parity
> with our NFS CLI utilities (which I'm working to get open-sourced in the
> coming weeks).
>
> And finally, with respect to scaling: we feel reasonably confident we can
> scale the tools without any sort of proxy to work on the order of 100's of
> simultaneous CLI clients hitting a cluster. We are going to experiment with
> some "proxy" approaches others to try to scale this to 1000's of CLI clients
> into a single cluster. Though, the proxy will be optional as we feel the
> simplicity/reliability of a standalone client (hitting a standard
> load-balanced or DNS RR end point) will work well for vast majority of users
> (envision a "-p <proxy>" option in the tools for those who need to really
> scale them).
Thanks for this. I was getting tempted to jump in and address some of the
"feature creep" myself, but it's a lot better for you to have done it. :)
The point about "just do it" and choice/competition is IMO particularly
important with this crowd.
More information about the Gluster-devel
mailing list