[rabbitmq-discuss] Multi tenancy

Simon MacMullen simon at rabbitmq.com
Tue Dec 14 14:05:15 GMT 2010

On 14/12/10 11:09, Mark Hudson wrote:
> My client wants to rent their application to multiple customers - multi
> tenancy. I'm currently thinking to use a RabbitMQ virtual host per
> company, so each company is separated with  their own queues, allowing
> me to throttle, turn on/off consumers on a per company basis, and to
> scale out a companies brokers if need be. Does this sound ok ?

That sounds fairly reasonable, but be aware that there's no quotas or 
any similar mechanism to prevent a greedy user from swamping the machine.

> I also propose to create accounts for the different consumers/producers
> in the system, this would have to be multiplied by the number of
> companies, so I could imagine the administration of all those users,
> permissions and nodes might be a bit time consuming. Has anybody done
> something like this, or is there a better approach ?

It shouldn't be too painful as long as you keep each user confined to 
its own vhost. I would write a script that used rabbitmqctl or 
rabbitmqadmin to read a list of companies and make sure all the needed 
users / vhosts / permissions exist (and raise an alarm if extra 
permissions exist).

In the future, pluggable authentication backends might help solve some 
of your problem.

Cheers, Simon
Simon MacMullen
Staff Engineer, RabbitMQ
SpringSource, a division of VMware

More information about the rabbitmq-discuss mailing list