[FFE] Image Store UI in Eucalyptus needs local proxy

Bug #423865 reported by Gustavo Niemeyer
10
This bug affects 1 person
Affects Status Importance Assigned to Milestone
eucalyptus (Ubuntu)
Fix Released
High
Mathias Gug

Bug Description

The newly introduced Image Store UI in Eucalyptus relies on a local proxy in order to perform searches, queries, and to emit commands for image downloading and installation.

The estimated availability time for the proxy code is on September 14th.

A first implementation of the proxy code is available from https://code.launchpad.net/image-store-proxy.

Here is an overview taken from the README file:

How it works
------------

The Image Store Proxy sits in the middle of three entities: the
Eucalyptus Image Store UI, the Eucalyptus S3 and EC2 APIs, and
the upstream Canonical Image Store API:

                Canonical Image Store API
                -------------------------
                           ^
                           |
                           |
                 ---------------------
                 | Image Store Proxy |
                 ---------------------
                   ^ |
                   | |
                   | v
    ------------------ -----------------
    | Eucalyptus | | Eucalyptus |
    | Image Store UI | | S3 & EC2 APIs |
    ------------------ -----------------

The Eucalyptus UI talks to the proxy to obtain information about
which images are available, and also to do requests for installing
images, canceling previously requested actions, and obtaining
progress information about on going requests.

The Image Store Proxy talks to the upstream Canonical Image Store API
to satisfy information requests done by the Eucalyptus UI, and once
requested to install an image, will download the necessary files to
the local file system using information provided by the upstream
Canonical API, and then use the euca2ools suite to bundle, upload and
register images in Eucalyptus through the EC2 and S3 APIs.

System requirements
-------------------

For the proxy to fully work, it needs the following dependencies
available:

- Python (tested with 2.6).

- Python sqlite3 module (included in Python 2.6 itself)

- Python Twisted modules

- Python pycurl module

- A working Eucalyptus installation in the same machine as the
  proxy is installed.

- euca_conf with support for the --get-credentials option, installed
  in <eucalyptus prefix>/usr/sbin.

- Be installed and running as the same user that Eucalyptus is running,
  so that it has access to the necessary information for obtaining
  credentials for signing outgoing requests and validating incoming
  request signatures.

- A working external connection with the Canonical Image Store API

Changed in eucalyptus (Ubuntu):
assignee: nobody → Gustavo Niemeyer (niemeyer)
status: New → In Progress
Revision history for this message
Martin Pitt (pitti) wrote :

Sorry, this has still way too little data to judge about the impact.

Mathias Gug (mathiaz)
description: updated
Revision history for this message
Steve Langasek (vorlon) wrote :

More information:

<niemeyer> slangasek: This is a new feature being introduced to add support in Eucalyptus to download and register images automatically through the Eucalyptus admin interface itself
<niemeyer> slangasek: A bad scenario for this feature is to not work at all, but this won't mean that other parts of the system would stop working
<slangasek> niemeyer: well, which parts are new? The bug description talks a lot about "system requirements", but I'm pretty sure most of these are already present by default?
<niemeyer> slangasek: So the risk is self-contained, IMO
<niemeyer> slangasek: Right.. the only new part is the image-store-proxy itself
<slangasek> niemeyer: and that's going to be shipping where? in the server images?
<niemeyer> slangasek: Right, next to Eucalyptus
<niemeyer> slangasek: For the Image Store UI that is now in Eucalyptus to work at all, this proxy is needed
<niemeyer> slangasek: So there should be a mutual dependency between them

Revision history for this message
Steve Langasek (vorlon) wrote :

<slangasek> niemeyer: which twisted modules are used, specifically?
<niemeyer> slangasek: twisted.web, twisted.internet.defer, twisted.internet.threads, twisted.python.failure, twisted.internet.address, twisted.trial.unittest
<niemeyer> I believe that's it

FFe granted.

Mathias Gug (mathiaz)
Changed in eucalyptus (Ubuntu):
assignee: Gustavo Niemeyer (niemeyer) → Mathias Gug (mathiaz)
importance: Undecided → High
Revision history for this message
Mathias Gug (mathiaz) wrote :

Package uploaded and published in karmic.

Changed in eucalyptus (Ubuntu):
status: In Progress → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.