Last Updated: January 21, 2026
Complete reference for all configuration parameters in the RabbitMQ Queue Migration Plugin.
All parameters are configured in rabbitmq.conf using the queue_migration. prefix.
Example:
queue_migration.worker_pool_max = 24
queue_migration.shovel_prefetch_count = 256Type: Positive integer
Default: 32
Range: 1-32
Description: Maximum number of concurrent queue migrations per node
Note: The default value is optimized for typical production workloads. Actual pool size is min(schedulers, worker_pool_max).
Type: Float
Default: 5.0
Range: 0.0-100.0
Description: Percentage tolerance for extra messages in destination queue
Usage:
queue_migration.message_count_over_tolerance_percent = 10.0Example:
- Source: 1000 messages
- Tolerance: 5.0%
- Acceptable range: 1000-1050 messages
Type: Float
Default: 0.0
Range: 0.0-100.0
Description: Percentage tolerance for missing messages in destination queue
Usage:
queue_migration.message_count_under_tolerance_percent = 2.0Example:
- Source: 1000 messages
- Tolerance: 2.0%
- Acceptable range: 980-1000 messages
Warning: Non-zero under-tolerance may mask message loss. Use with caution.
Type: Positive integer
Default: 128
Description: Number of messages to prefetch during shovel transfer
Usage:
queue_migration.shovel_prefetch_count = 256Note: The default value is optimized for typical production workloads.
Type: Positive integer (bytes)
Default: 524288000 (500 MB)
Description: Minimum free disk space buffer required for migration
Type: Float
Default: 2.0
Range: >= 1.5
Description: Multiplier for estimating peak disk usage during migration
Usage:
queue_migration.disk_usage_peak_multiplier = 3.0Calculation:
Required space = (concurrent_workers × avg_queue_size × multiplier) + buffer
Type: Integer
Default: 40
Range: 1-100
Description: Maximum memory usage percentage allowed for migration to start
Usage:
queue_migration.max_memory_usage_percent = 50Type: Positive integer
Default: 10000
Description: Maximum number of queues allowed in a single migration
Usage:
queue_migration.max_queues_for_migration = 5000Note: Use batch_size parameter to migrate in smaller batches.
Type: Positive integer (milliseconds)
Default: 2700000 (45 minutes)
Description: Maximum duration for entire migration process
Usage:
queue_migration.max_migration_duration_ms = 3600000 % 1 hourType: Positive integer
Default: 10
Range: 1-4096
Description: Number of messages between progress updates
Usage:
queue_migration.progress_update_frequency = 100Note: The default value provides good balance between update frequency and overhead.
Type: Atom
Default: ebs
Options: tar, ebs, none
Description: Snapshot creation method
Usage:
queue_migration.snapshot_mode = tarOptions:
ebs- Create EBS snapshots (AWS only, requires IAM permissions)tar- Create tar archive snapshotsnone- Skip snapshot creation
Type: Boolean
Default: true
Description: Whether to delete snapshots after successful migration
Usage:
queue_migration.cleanup_snapshots_on_success = falseType: String
Default: "/dev/sdh"
Description: EBS volume device path for RabbitMQ data
Usage:
queue_migration.ebs_volume_device = "/dev/nvme1n1"Note: Only used when snapshot_mode = ebs
Type: Float
Default: 1.6
Description: Maximum allowed ratio between most and least loaded nodes
Note: Not configurable via rabbitmq.conf (hardcoded constant)
Type: Integer
Default: 10
Description: Minimum number of queues required to perform balance check
Note: Not configurable via rabbitmq.conf (hardcoded constant)
- Troubleshooting Guide: TROUBLESHOOTING.md
- HTTP API Reference: HTTP_API.md