Jump to: navigation, search

Difference between revisions of "QpidSupport"

Line 1: Line 1:
 
__NOTOC__
 
__NOTOC__
 +
Table of contents:
 +
<<[[TableOfContents]]()>>
 +
 
= Qpid Support =
 
= Qpid Support =
 
This page discusses how to use [http://qpid.apache.org Apache Qpid] as the messaging backend for Nova.  Using Qpid with Nova would be in place of using RabbitMQ.  Qpid support will be first introduced in the Essex release, assuming that [https://review.openstack.org/#change,2982 this patch] goes in.
 
This page discusses how to use [http://qpid.apache.org Apache Qpid] as the messaging backend for Nova.  Using Qpid with Nova would be in place of using RabbitMQ.  Qpid support will be first introduced in the Essex release, assuming that [https://review.openstack.org/#change,2982 this patch] goes in.
  
== Dependency Installation ==
+
= Dependency Installation =
 
For Nova to use Qpid, you must install a couple of things.  You need Qpid's Python client library on any machine running Nova services.  You also need at least one instance of the Qpid broker running somewhere.
 
For Nova to use Qpid, you must install a couple of things.  You need Qpid's Python client library on any machine running Nova services.  You also need at least one instance of the Qpid broker running somewhere.
  
=== Fedora ===
+
== Fedora ==
 
To install the Qpid Python client library:
 
To install the Qpid Python client library:
  
Line 23: Line 26:
 
`    # chkconfig qpidd on`
 
`    # chkconfig qpidd on`
  
=== Ubuntu ===
+
== Ubuntu ==
 
Qpid has just recently made it into Ubuntu.  It will be in Ubuntu Precise (12.4).
 
Qpid has just recently made it into Ubuntu.  It will be in Ubuntu Precise (12.4).
  
== Nova Configuration ==
+
= Nova Configuration =
  
 
All of the options discussed in this section should be set in the `/etc/nova/nova.conf` file.
 
All of the options discussed in this section should be set in the `/etc/nova/nova.conf` file.
  
=== Options You Will Use ===
+
== Options You Will Use ==
  
 
The current default for Nova (as of Diablo and Essex, at least) is to use the backend that utilizes RabbitMQ as the message broker.  You must modify the Nova configuration to tell it to use the Qpid backend.  To do this, add the following line to `nova.conf`:
 
The current default for Nova (as of Diablo and Essex, at least) is to use the backend that utilizes RabbitMQ as the message broker.  You must modify the Nova configuration to tell it to use the Qpid backend.  To do this, add the following line to `nova.conf`:
Line 40: Line 43:
 
`    --qpid_hostname=hostname.example.com`
 
`    --qpid_hostname=hostname.example.com`
  
=== Options You Might Use ===
+
== Options You Might Use ==
  
 
If the Qpid broker is listening on a port other than the AMQP default of `5672`, you will need to set this option:
 
If the Qpid broker is listening on a port other than the AMQP default of `5672`, you will need to set this option:
Line 56: Line 59:
 
`    --qpid_protocol=ssl`
 
`    --qpid_protocol=ssl`
  
=== Options You Probably Won't Use ===
+
== Options You Probably Won't Use ==
  
 
The following table lists options that are available but are less commonly used than the options discussed above.
 
The following table lists options that are available but are less commonly used than the options discussed above.

Revision as of 18:01, 18 January 2012

Table of contents: <<TableOfContents()>>

Qpid Support

This page discusses how to use Apache Qpid as the messaging backend for Nova. Using Qpid with Nova would be in place of using RabbitMQ. Qpid support will be first introduced in the Essex release, assuming that this patch goes in.

Dependency Installation

For Nova to use Qpid, you must install a couple of things. You need Qpid's Python client library on any machine running Nova services. You also need at least one instance of the Qpid broker running somewhere.

Fedora

To install the Qpid Python client library:

` # yum install python-qpid`

To install the Qpid broker:

` # yum install qpid-cpp-server`

To start the Qpid broker:

` # systemctl start qpidd.service`

To have the Qpid broker started at boot time:

` # chkconfig qpidd on`

Ubuntu

Qpid has just recently made it into Ubuntu. It will be in Ubuntu Precise (12.4).

Nova Configuration

All of the options discussed in this section should be set in the `/etc/nova/nova.conf` file.

Options You Will Use

The current default for Nova (as of Diablo and Essex, at least) is to use the backend that utilizes RabbitMQ as the message broker. You must modify the Nova configuration to tell it to use the Qpid backend. To do this, add the following line to `nova.conf`:

` --rpc_backend=nova.rpc.impl_qpid`

By default, the nova services will attempt to connect to the broker on `localhost`. If you would like to change the Qpid broker host, use the following option:

` --qpid_hostname=hostname.example.com`

Options You Might Use

If the Qpid broker is listening on a port other than the AMQP default of `5672`, you will need to set this option:

` --qpid_port=12345`

If you configure the Qpid broker to require authentication, you will need to add a username and password to the configuration.

` --qpid_username=username`

` --qpid_password=password`

By default, TCP is used as the transport. If you would like to enable SSL, set the following option:

` --qpid_protocol=ssl`

Options You Probably Won't Use

The following table lists options that are available but are less commonly used than the options discussed above.

Option Default
`--qpid_sasl_mechanisms`
`--qpid_reconnect` True
`--qpid_reconnect_timeout` 0
`--qpid_reconnect_limit` 0
`--qpid_reconnect_interval_min` 0
`--qpid_reconnect_interval_max` 0
`--qpid_reconnect_interval` 0
`--qpid_heartbeat` 5
`--qpid_tcp_nodelay` True