Slashdot Mirror


Open Source Distributed Shell Tools?

ColonelForbin74 asks: "While some may assume that most larger server clusters run advanced / custom software(i.e. Beowulf, cfengine, OSCAR), many of those stuck in the not-research-this-site-runs-production world know this simply isn't the case. Many people like myself are working with medium-to-large scale clusters with little help other than shell for() loops and some SSH trusted keys. What application-level tools are out there that might help SysAdmin / AppSupport types like myself run commands across a given cluster, push files out, etc? In my desperation to have some sort of tool in my toolbox, I've actually created one. However, I have a hard time believing this is the best thing out there, and would appreciate all the ideas and links I can get!"

2 of 31 comments (clear)

  1. Re:heh... funny you should mention this.... by babbage · · Score: 2, Funny
    Interestingly, that sort of thing seems to be what Python was invented for: it was the control language for the Amoeba distributed OS, as described by Guido van Rossum himself:
    Guido van Rossum: In 1986 I moved to a different project at CWI, the Amoeba project. Amoeba was a distributed operating system. By the late 1980s we found we needed a scripting language. I had a large degree of freedom on that project to start my own mini project within the scope of what we were doing.
    I don't know if you knew about this stuff in advance, but working on distributed code was apparently a great way to play into Python's strengths-by-design. Amoeba has long been one of those neat little esoteric systems that I've wanted to play with (also including Plan9/Inferno), but have never had the chance to. I wonder if it ever got any traction outside of research circles...
  2. Re:heh... funny you should mention this.... by costas · · Score: 2, Funny

    Sounds very interesting... are you by any chance using IPython as the shell? if not, it might worth a look, it basically makes the Python CLI a super-shell, so it sounds like you could insert your distributed code under the IPython layer and get a distributed super-shell :-)