Documentation: Table of Contents
This page summarises the available RabbitMQ documentation for the latest patch release.
Installation
See the Downloads and Installation page for information on the most recent release and how to install it.
Tutorials
See the Get Started page for our tutorials for various programming languages.
The tutorials offer a gentle introduction to messaging, one of the protocols RabbitMQ supports, key messaging features, and some common usage scenarios.
AMQP 0-9-1 Overview provides a brief overview for the original RabbitMQ protocol.
Server and Key Plugins
RabbitMQ server documentation is organised in a number of guides:
Installation and Provisioning
- Packages and repositories
- Kubernetes Operator
- Provisioning Tools (Docker image, Chef cookbook, Puppet module, etc)
- Package Signatures
- Supported Erlang/OTP Versions
- Supported RabbitMQ Versions
- Changelog
- Snapshot (Nightly) Builds
Operating Systems and Platforms
- Kubernetes
- Debian and Ubuntu
- Red Hat Enterprise Linux, CentOS, Fedora
- Windows Installer, Windows-specific Issues
- Generic UNIX Binary Build
- MacOS via Homebrew
- Amazon EC2
- Solaris
Upgrading
CLI tools
- RabbitMQ CLI Tools: general installation and usage topics
- rabbitmqctl: primary RabbitMQ CLI tool
- rabbitmq-diagnostics: monitoring, health checking, observability tooling
- rabbitmq-plugins: plugin management
- rabbitmq-queues: operations on quorum queues
- rabbitmq-streams: operations on streams
- rabbitmq-upgrade: operations related to upgrades
- rabbitmqadmin (HTTP API-based zero dependency management tool)
- man pages
Configuration
- Configuration
- File and Directory Locations
- Logging
- Policies and Runtime Parameters
- Schema Definitions
- Per Virtual Host Limits
- Client Connection Heartbeats
- Inter-node Connection Heartbeats
- Runtime Tuning
- Queue and Message TTL
Authentication and authorisation:
- Access Control: main authentication and authorisation guide
- AMQP 0-9-1 Authentication Mechanisms
- Virtual Hosts
- Credentials and Passwords
- x509 (TLS) Certificate-based client authentication
- OAuth 2 Support
- OAuth 2 Examples for common identity providers
- LDAP
- Validated User ID
- Authentication Failure Notifications
Networking and TLS
- Client Connections
- Networking
- Inter-protocol Conversions
- Troubleshooting Network Connectivity
- Using TLS for Client Connections
- Using TLS for Inter-node Traffic
- Troubleshooting TLS
Monitoring, Audit, Application Troubleshooting:
- Management UI and HTTP API
- Monitoring, metrics and health checks
- Troubleshooting guidance
- rabbitmqadmin, an HTTP API command line tool
- Client Connections
- AMQP 0-9-1 Channels
- Inter-protocol Conversions
- Internal Event Exchange
- Per Virtual Host Limits
- Per User Limits
- Message Tracing
- Capturing Traffic with Wireshark
Clustering
Replicated Queue Types, Streams, High Availability
- Quorum Queues: a modern highly available replicated queue type
- Migrating Mirrored Classic Queues to Quorum Queues
- Streams: a messaging abstraction that allows for repeatable consumption
- RabbitMQ Stream plugin: the plugin and binary protocol behind RabbitMQ streams
Distributed RabbitMQ
- Replication and Distributed Feature Overview
- Reliability of distributed deployments, publishers and consumers
- Federation
- Shovel
Guidance
- Monitoring
- Production Checklist
- Backup and Restore
- Troubleshooting guidance
- Reliable Message Delivery
Message Store and Resource Management
- Memory Usage Analysis
- Memory Management
- Resource Alarms
- Free Disk Space Alarms
- Runtime Tuning
- Flow Control
- Message Store Configuration
- Queue and Message TTL
- Queue Length Limits
- Lazy Queues
Queue and Consumer Features
- Queues guide
- Consumers guide
- Queue and Message TTL
- Queue Length Limits
- Lazy Queues
- Dead Lettering
- Priority Queues
- Consumer Cancellation Notifications
- Consumer Prefetch
- Consumer Priorities
- Streams
Publisher Features
STOMP, MQTT, WebSockets
Man Pages
Client Libraries and Features
RabbitMQ clients documentation is organised in a number of guides and API references. A separate set of tutorials for many popular programming languages are also available, as is an AMQP 0-9-1 Overview.
Client Documentation Guides
Client-Driven Features
- Client Connections
- Consumers
- Publishers
- Channels
- Publisher Confirms and Consumer Acknowledgements
- Queue and Message TTL
- Queue Length Limits
- Lazy Queues
- Exchange-to-Exchange Bindings
- Sender-Selected Distribution
- Priority Queues
- Consumer Cancellation Notifications
- Consumer Prefetch
- Consumer Priorities
- Dead Lettering
- Alternate Exchanges
- Message Tracing
- Capturing Traffic with Wireshark
References
See Clients and Developer Tools for community client libraries.
Plugins
Popular tier 1 (built-in) plugins:
- Management
- STOMP
- MQTT
- STOMP over WebSockets
- MQTT over WebSockets
- Federation
- Shovel
- Internal Event Exchange
See Community Plugins, RabbitMQ GitHub repositories and the Plugins Guide for more information about plugins.
Development
- RabbitMQ GitHub repositories
- Contributor Code of Conduct
- How to build RabbitMQ from source, or
- from GitHub.