geronimo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From David Jencks <>
Subject Re: GShell Update
Date Sat, 29 Nov 2008 18:45:07 GMT
Hi Jason,

This sounds very cool but I don't understand exactly what the ssh  
functionality gets us or what your vision of shared commands between  
the web console and gshell looks like.

IIUC right now communication between gshell and a geronimo server is  
via jmx, which optionally can be using ssl.  Again IIUC there's no  
requirement that the geronimo server be on the same machine as  
gshell.  We don't have the ability to start a geronimo instance on  
another machine at the moment, but once one is started I don't quite  
understand what ssh adds to the picture.  With the ssh stuff can you  
start a gshell + g. server on a remote machine?  How is this different  
from just ssh-ing into the machine from a normal terminal session and  
running gshell?

As for commands, my view is that both gshell commands and web console  
portlet code consist of collecting the information needed for calls to  
gbean operations.  While the portlet code is generally horrendously  
complicated and difficult to understand I don't really see how more of  
this data-collection-from-the-user code could be shared between the  
web console and gshell. Do you have a simple illustration in mind?

Many thanks!
david jencks

On Nov 28, 2008, at 5:44 PM, Jason Dillon wrote:

> Its been a while, I have been in a lillte bit of a slump.  But, some  
> really cool things have happened in the past weeks which gave me a  
> nice kick in the ass to move forward.
> Thanks to Guillaume Nodet (aka gnodet) GShell now has... SSH  
> support!  Yes you can now use your native/local sshd client to make  
> a connect to a remote gshell server... which means that if an admin  
> starts a sshd command on a Geronimo server, then one can ssh into  
> Geronimo and execute commands.
> This is really the basic vision behind gshell... and well, it here  
> now... an industry accepted secure method to run textual commands on  
> a remote system!  As a previous unix system administrator, I can  
> tell you... this feature is very powerful... certainly a leg up on  
> any other app server on the market.
> BUT...
> To really make it successful... we need more commands.  IMO it would  
> be good if we can find a way to implement web-console and gshell- 
> console functionality with a common code-base.  Most functionality  
> implemented via the web-based console can easily represented via  
> gshell, though granted some more thought needs to be applied to deal  
> with the interface limitations.  For example, one can render a page  
> to collect several inputs at once where a gshell command needs to  
> prompt for each item in sequence.
> I think we can invent some api to allow a gui or tui to be used...  
> not sure what that is yet, but my guy tells me its going to be  
> possible.
> (A) Web is powerful... (b) Text (ssh) is also powerful.  Some  
> consumers prefer A others do more with B.  The current webconsole,  
> which IMO is quite simple to use provides *A* to folks, but in my  
> experience more advanced users tend to automated/script in which *B*  
> is the preferred method.
> With GShell I think we are in a very unique position to provide the  
> *best* ssh/cli administration interface to our application server.   
> Actually the functionality has been there for a while, though the  
> new gshell code does simplify things and add some nice new feautres.
> To be clear, this is an enterprise feature, as casual users want gui  
> things, so like an installer, then app icons to run the app, run the  
> console, etc...   But IMO the powerusers who run their enterprise  
> applications on Geronimo... they might have 100-1k geronimos nodes  
> and shell-based admin scripting is the only way to operate,... short  
> of writing custom GUI muck to manage all those systems and their  
> data... its custom.  But by adopting the unix culture which so many  
> admins are already familiar really opens the door to the use of G in  
> these sophisticated environments.
> * * *
> Anyways back to the update.  We have SSH/SSHD support!  The other  
> RSH/RSHD stuff is done. cause the new bits are so much better. .   
> GShell has very rich VFS support, you can cd,ls,pwd,cp all based on  
> Apache Commons VFS.  This means that you can use these commands to  
> easily transfer configuration files to remote systems (ie. use cp  
> from a supported filesystem)
> Logging configuration can also be updated via the shell now too.   
> You can set the level of a logger, or add context to thre NDC or  
> MDC... or reconfigure everything from a new log4j configuration file.
> Some other new commands include:
>    hostname
>    grep
>    find
> There is still work which is planned for the shell parser to make  
> better use of command execution results, loop and other common  
> things which a script might do.
> This release of Ghell has knowledge of an artifact repository, and  
> provides commands to install new plugins dynamically.  Installation  
> will download new artifacts to the repository and load them from  
> there,  The plugin system is still in the works, but right now you  
> can install new plugins and list those already installed.  More work  
> on the plugin framework is going on, so expect more changes here.
> * * *
> Nothing is ever perfect... but we try to get close.  In that process  
> along the lines we wan to release the codebase when its relatively  
> stable/usable.  GShell is once again to that point.  Short of a few  
> SNAPSHOT dependencies we are very close to a release.
> On the repo issue, I had switched to Apache Ivy.  It was smaller and  
> faster, but it didn't allow the local ache to be m2 compatible, so I  
> abstracted the artifact resolution stuff to allow Ivy, Maven or  
> Mercury to be used.  Using Maven for now, until Mercury is released,  
> though from all accounts it looks like the Ivy impl is the fastest  
> and slimmest impl, users need to describe what they need.
> * * *
> Short of it all is... a new GShell is on the horizon. look for it  
> and vote.
> I'm working on integration into the latest server tree... maybe  
> more ;-)
> --jason

View raw message