<div dir="ltr"><div style>Maybe I'm misunderstanding how this is meant to work - I have 3 RabbitMQs:</div><div><br></div><div>Cloud (10.9.0.1)</div><div>London (10.9.0.2)</div><div>Moscow (10.9.0.3)</div><div><br></div>
<div style>I want to federate messages from London and Moscow to Cloud. I create 2 username/passwords on the "Cloud" rabbitmq (with appropriate permissions):</div><div style><br></div><div style>london:password1</div>
<div style>moscow:password2</div><div><br><div style>I then add 1 upstream for the London and 1 upstream for the Moscow RabbitMQ:</div><div style><br></div><div style>London: amqp://<a href="http://london:password1@10.9.0.1/oracle">london:password1@10.9.0.1/oracle</a></div>
<div style>Moscow: amqp://<a href="http://moscow:password1@10.9.0.1/oracle">moscow:password1@10.9.0.1/oracle</a></div><div style><br></div><div style>The upstreams point to the Cloud RabbitMQ IP which has the appropriate usernames/passwords and permissions.</div>
<div style><br></div></div><div style>Now when I crate a federate-me policy, I get an error "{error,user_does_not_exist}" unless I set a local-username on the Cloud RabbitMQ with:</div><div style><br></div><div style>
rabbitmqctl -p oracle set_parameter federation local-username '"London"'<br></div><div style><br></div><div style>Then the London RabbitMQ is able to connect, but Moscow still says user_does_not_exist. My question is why is this and how do I accept both usernames?</div>
<div style><br></div><div style>Roman</div><div class="gmail_extra"><br><br><div class="gmail_quote">On 14 May 2013 11:11, Simon MacMullen <span dir="ltr"><<a href="mailto:simon@rabbitmq.com" target="_blank">simon@rabbitmq.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div class=""><div class="h5">On 13/05/13 18:18, Roman Gaufman wrote:<br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
I want to have 20 or so clients reading/writing to a local rabbitmq<br>
which will federate to a central server (in both directions). Each<br>
client has a separate username, password and permissions.<br>
<br>
Reason it is done this way is the servers are on very unstable<br>
connections on the move.<br>
<br>
Right now, when I try to connect more than 1 federation upstream, I<br>
get: ** {error,user_does_not_exist}<br>
<br>
It seems all of these servers need to be forced to use the same<br>
username? - Why is this? - Is there any way not to have a<br>
"local-username" but rather to accept all usernames?<br>
</blockquote>
<br></div></div>
I am not sure I understand what you are saying. The "local-username" parameter is used by the federation mechanism as the local user as which to publish messages which have been received over federation. It doesn't have anything to do with the remote user (which is encoded in the upstream URL).<br>
<br>
Cheers, Simon<span class=""><font color="#888888"><br>
<br>
-- <br>
Simon MacMullen<br>
RabbitMQ, Pivotal<br>
</font></span></blockquote></div><br></div></div>