Jump to: navigation, search

Difference between revisions of "Cue"

(Cue)
(API)
Line 45: Line 45:
  
 
== API ==  
 
== API ==  
API documentation is located here:  [https://wiki.openstack.org/wiki/Cue/api Cue API Documentation]
+
API documentation is located here:   
 +
[https://wiki.openstack.org/wiki/Cue/api Cue API Approach 1]
 +
[https://wiki.openstack.org/wiki/Cue/api_2 Cue API Approach 2]
  
 
== Code ==
 
== Code ==

Revision as of 21:43, 12 December 2014

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.

Use Cases (in-work)

Macro

  1. IT teams providing managed, highly available message brokers to their app development teams, on private clouds they own and operate.
  2. OpenStack service providers seeking to provide a managed, highly available messaging service with multiple backends such as RabbitMQ and Kafka to their end users.

Micro

  1. Distributing work between micro-services deployed on top of OpenStack via PaaS offerings like Cloud Foundry.
  2. Sending messages between legacy systems and cloud native applications.

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 Approach 1 Cue API Approach 2

Code

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

https://github.com/stackforge/cue

Find Us

Come talk to us on #openstack-cue on Freenode.