Difference between revisions of "QpidSupport"
Line 9: | Line 9: | ||
To install the Qpid Python client library: | To install the Qpid Python client library: | ||
− | ` | + | ` # yum install python-qpid` |
To install the Qpid broker: | 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 === | === Ubuntu === | ||
Line 19: | Line 27: | ||
== Nova Configuration == | == Nova Configuration == | ||
+ | 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, edit `/etc/nova/nova.conf` and add the following line: | ||
+ | |||
+ | ` --rpc_backend=nova.rpc.impl_qpid` | ||
+ | |||
+ | By default, the nova services will attempt to connect to the broker on `localhost` using the default AMQP port number, `5672`. If you would like to change either of these values, use the following options: | ||
+ | |||
+ | ` --qpid_hostname=hostname.example.com` | ||
+ | |||
+ | ` --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` | ||
+ | |||
+ | The following table lists options that are available but are less commonly used than the options discussed above. | ||
+ | |||
+ | {| border="1" cellpadding="2" cellspacing="0" | ||
+ | | '''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 |
Revision as of 16:45, 18 January 2012
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.
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
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, edit `/etc/nova/nova.conf` and add the following line:
` --rpc_backend=nova.rpc.impl_qpid`
By default, the nova services will attempt to connect to the broker on `localhost` using the default AMQP port number, `5672`. If you would like to change either of these values, use the following options:
` --qpid_hostname=hostname.example.com`
` --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`
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 |