OpenStack Messaging (Zaqar)
Go to file
Alejandro Cabrera 4f5de4b23f feat: add catalogue storage driver for queues
The upcoming sharding feature requires a catalogue storage driver very
similar to that used by the proxy. This patch ports the proxy
catalogue storage driver to the queues storage space and updates the
semantics accordingly. Specifically, the queues catalogue maintains a
mapping from project/queue to shard identifier.

Unit tests and helpers have been updated accordingly. The sqlite
portion of this is still to be done, and is reserved for a future
patch.

The faulty storage drivers has been given the appropriate
catalogue_controller impls.

Furthermore, minor py3k updates were added: metaclass using
six.add_metaclass.

Change-Id: I380d028520e9a712064810a15e2c6576de67e485
Partially-implements: blueprint storage-sharding
Closes-Bug: #1241686
2013-10-30 11:27:44 -04:00
etc feat: split queues API into public/admin 2013-10-21 14:32:52 -04:00
marconi feat: add catalogue storage driver for queues 2013-10-30 11:27:44 -04:00
tests feat: add catalogue storage driver for queues 2013-10-30 11:27:44 -04:00
.coveragerc Suppress some Coverage report output 2013-03-29 16:07:20 -04:00
.gitignore Ignore *.egg dirs 2013-08-14 16:10:08 -05:00
.gitreview Update .gitreview for incubation org move 2013-09-14 17:44:26 +00:00
AUTHORS.rst refactor: Rename AUTHORS so that it doesn't keep getting overwritten 2013-03-19 16:33:43 -04:00
HACKING.rst Update HACKING file with the new structure 2013-09-18 13:53:27 +02:00
MANIFEST.in Initial import. 2012-11-01 09:52:20 +01:00
openstack-common.conf chore: Update openstack.common, add lockutils 2013-08-29 14:49:36 -05:00
README.rst Update the Marconi readme with more detailed installation instructions 2013-10-25 10:47:04 -05:00
requirements.txt feat (proxy/admin): allow partition modifications 2013-10-02 10:54:30 -04:00
setup.cfg feat: shards mongodb driver + tests 2013-10-28 11:18:15 -04:00
setup.py Update pbr and requirements to be current 2013-09-18 07:55:39 -07:00
test-requirements.txt feat: split proxy API into admin and public apps 2013-10-01 17:31:40 -04:00
tox.ini Update pbr and requirements to be current 2013-09-18 07:55:39 -07:00

Marconi

Message queuing service for OpenStack

Running a local Marconi server with MongoDB

Note: These instructions are for running a local instance of Marconi and not all of these steps are required. It is assumed you have MongoDB installed and running.

  1. From your home folder create the ~/.marconi folder and clone the repo:

    $ cd
    $ mkdir .marconi
    $ git clone https://github.com/openstack/marconi.git
  2. Copy the Marconi config files to the directory ~/.marconi:

    $ cp marconi/etc/marconi-proxy.conf-sample ~/.marconi/marconi-proxy.conf
    $ cp marconi/etc/marconi-queues.conf-sample ~/.marconi/marconi-queues.conf
    $ cp marconi/etc/logging.conf-sample ~/.marconi/logging.conf
  3. Find the [drivers:storage:mongodb] section in ~/.marconi/marconi-queues.conf and modify the URI to point to your local mongod instance:

    uri = mongodb://$MONGODB_HOST:$MONGODB_PORT
  4. For logging, find the [DEFAULT] section in ~/.marconi/marconi-queues.conf and modify as desired:

    log_file = server.log
  5. Change directories back to your local copy of the repo:

    $ cd marconi
  6. Run the following so you can see the results of any changes you make to the code without having to reinstall the package each time:

    $ pip install -e .
  7. Start the Marconi server:

    $ marconi-server
  8. Test out that Marconi is working by creating a queue:

    $ curl -i -X PUT http://127.0.0.1:8888/v1/queues/samplequeue -H
    "Content-type: application/json" -d '{"metadata": "Sample Queue"}'

You should get an HTTP 201 along with some headers that will look similar to this:

HTTP/1.0 201 Created
Date: Fri, 25 Oct 2013 15:34:37 GMT
Server: WSGIServer/0.1 Python/2.7.3
Content-Length: 0
Location: /v1/queues/samplequeue