Jump to: navigation, search

Cue

Revision as of 23:10, 14 November 2014 by Dagnello (talk | contribs) (API)

Cue

Mission Statement

The OpenStack Message Broker Provisioning as a Service Mission: To provide scalable and reliable Message Broker provisioning functionality for off the shelf messaging technologies, as well as to provide advanced management, tuning, and administration of underlying message brokers.

Description

Cue is a Message Broker provisioning service for Openstack. Its goal is to simplify and automate the complex tasks of provisioning, management, and administration of message brokers. Users of the service can create and manage multiple clusters of Message brokers, of various types as needed. The service will provide resource isolation at the VM level, and does not attempt to implement multi-tenancy at the message broker layer.

Why

Messaging is a common development pattern for building loosely coupled distributed systems. Messaging systems also act as glue between independent applications. Several off-the-shelf products exist that implement messaging and queuing semantics.

Provisioning and supporting Messaging systems for an individual application can be a time consuming and painful experience. This product aims to simplify the provisioning and management of messaging systems, providing High Availability and auto-healing capabilities to the end user, while providing tenant-level isolation.

The main goal of this service is to simplify the end user Application development lifecycle and allow the developer to focus on their application, instead of the backend middleware services.

Goals

  1. Produce a Message Broker Provisioning Service for Openstack
  2. Protocol Agnostic
  3. Support multiple Broker backends
  4. Provide HA and Fault Tolerance by leveraging underlying Broker Cluster capabilities
  5. Provide tuned and properly configured Message Brokers on-demand
  6. Support Broker management operations such as Backup of Configuration, Scale Up, Scale Down

Non-Goals

  1. Data plane API
  2. Multi-tenancy at the Message Broker layer

Brokers

Cue will support the following brokers (in order of priority):

  1. RabbitMQ
  2. qpid
  3. Kafka
  4. .. others?

API

API documentation is located here: | Cue API Documentation

Code

We've started building the project, it now lives on Stackforge.

https://github.com/stackforge/cue