[xen-tools] Re: Argo reworking ..
Neil Wilson
neil at aldur.co.uk
Mon Mar 5 14:20:54 CET 2007
You may want to look at the implementation of Amazon EC2 tools which
uses Xen as a launch platform for its EC2 machines. EC2 machines are
just domU instances. See
http://developer.amazonwebservices.com/connect/entry.jspa?categoryID=87&externalID=610
Also there is www.aws-console.com which is a graphical launch manager
for starting and monitoring EC2 instances.
It may give you some suggestions as to what others are doing if nothing else.
Rgs
NeilW
On 3/5/07, Steve Kemp <steve at steve.org.uk> wrote:
>
>
> Over the past few months I've made various comments about Argo
> being dead, and depreciated pending a redesign/rewrite.
>
> Now its time to start working upon it in a serious manner.
> Here are my current thoughts, prior to writing any code. Here
> is a good time to:
>
> - Tell me to use another list.
> - Help me pick a name.
> - Offer suggestions, criticisms, or other comments.
> - Volunteer to write some/all/part of the code.
>
>
>
> Goal
> ----
>
> The goal of a Xen monitoring and admin solution is for an
> administrator to be able to gain a global view of a number of
> Xen hosts (dom0), and manipulate the Xen guests (domU) running
> upon them.
>
> The individual guests should allow basic actions to be
> carried out upon them:
>
> - starting, stopping, rebooting.
> - uptime reporting, traffic reporting, disk size reporting.
>
> More primitives could be added such as "migration", "remote consoles",
> etc. However I can live without them initially/indefinitely.
>
> The key thing is that there should either be a graphical "admin console"
> or a web interface which may be executed anywhere within the LAN
> talking to the Xen hosts.
>
>
> Considerations
> --------------
>
> The system must be able to control multiple dom0 so there must
> be some form of communication between the control panel and the
> actual servers.
>
> There are two ways this could work:
>
> a) Each dom0 is contacted individually by the control panel/software.
> Pros: Conceptually simple.
> Cons: Could be hard to implement.
>
> b) Each dom0 broadcasts to a "master server", which
> is in turn controlled by the control panel/software.
> Pros: Each dom0 would be "registered" and lack of "pings" mean it is dead.
> Pros: The control panel doesn't have to link to N hosts, just one.
> Cons: Additional complexity.
>
> I think I'm sold on "b".
>
>
> Security
> --------
>
>
> Previously Argo used plain-text logins and a simple "plaintext"
> protocol for communication between a single dom0 and a console /
> GUI / PHP client.
>
> This was flawed. Few people commented on implementation, however
> everybody that did do so complained about plain-text passwords.
> (I guess some might have been happy with MD5(passwd) but clearly
> security is important.)
>
> Since my current plan involves three pieces of software it is
> good to get the design right. I see the following components
> communicating with each other:
>
> dom0 <-> central-server <-> control panel/software.
>
> That is:
>
> - Each dom0 will talk to the central server, giving status
> information and executing commands.
>
> - The central server will be the single point of contact for
> any graphical control applications, or a web GUI.
>
> I figure that two-way key exchange between the central server and
> the dom0 agents will be required.
>
> I also assume that the communication between the central server,
> and the control GUI will be SSL wrapped.
>
>
> Implementation
> --------------
>
>
> We require three things:
>
> 1. A piece of software upon each dom0 which will respond to commands
> from the central server. Such as:
> - start domU foo
> - list domU
> - stop all domU
>
> 2. The central server itself. This will respond to commands from the
> control panel such as:
> - list *all* domU, regardless of host.
> - list all domU on host bar.
>
> 3. The control panel / graphical management software.
> - login to the central server and do things.
>
> The first two pieces I'm expecting to implement as *tiny* Ruby
> daemons. Almost certainly sending and receiving their commands
> over XML::RPC (+SSL).
>
> The control panel could be implemented in anything, but my preference
> would be perl + gtk, or something else "fast" and graphical. A web
> control panel might be released as a proof of concept, but I am
> personally uninterested in its development.
>
>
> Steve
> --
> http://www.steve.org.uk/
>
>
>
More information about the xen-tools-discuss
mailing list