Provisioning RabbitMQ#
Ametnes-managed RabbitMQ is a private message broker. The management console is served over HTTPS, and AMQP clients connect over AMQPS on port 5671.
Prerequisites#
- A service location (see Service Location).
Networking is automatic by default
Creating a network access resource is optional. If you do not create one, Ametnes manages network access for the location and your service attaches to it automatically. Create your own only if you want to control exposure (see Network Access Resources).
Create the RabbitMQ service#
Kinds: service/rabbitmq:4.3 and service/rabbitmq:4.2. The administrator
credentials are required.
- Navigate to Services and click New Service.
- Name it (for example
RabbitMQService). - Kind: RabbitMQ 4.3 Message Broker.
- Location: your data service location. Leave Network unset to let Ametnes manage it.
- Architecture: Starter for evaluation, Basic+ for a clustered, highly available broker.
- Set Admin User (lowercase, 5+ characters, e.g.
admin) and Admin Password. - Click Create Service and wait for
ready.
Connect#
The service publishes two connections:
| Connection | Port | Use |
|---|---|---|
https |
443 | Management console / HTTP API. |
amqps |
5671 | AMQP clients. |
Connect with amqps://:
import pika
params = pika.URLParameters("amqps://admin:<password>@<host>:<port>/")
pika.BlockingConnection(params)
The federation and shovel plugins (used by disaster recovery) ship with the broker and are enabled by default, so either cluster can join a DR link.
Queue type
Queues default to quorum (default_queue_type = quorum), so a clustered
tier replicates them across its nodes automatically. Clients can still pin a
type per queue with arguments={"x-queue-type": "quorum"} (or classic);
the type is immutable once the queue is declared.
Next#
- Disaster recovery — link a secondary cluster with federation and fail over.
- Scaling — tiers, cluster size and version upgrades.