irods / irods_rule_engine_plugin_audit_amqp

BSD 3-Clause "New" or "Revised" License
2 stars 13 forks source link

HA rabbit #106

Open HelenCousins opened 1 year ago

HelenCousins commented 1 year ago

Hi, we have an HA rabbit setup (3 nodes) and want to know how to put in that to this plug in. We have irods 4.2.7.2

trel commented 1 year ago

Hi @HelenCousins - Do you have other clients that send messages to this HA rabbit setup?

We would like to learn from others - we're not sure if there's anything else we need to provide ... different from our standard configuration parameters.

kript commented 1 year ago

As I've got in earlier than Helen, we dont have anything that makes use of HA RabbitMQ yet, this will be the first.

I think its more we want to know how the plugin passes the connection variables through to the underlying code. For example, the RabbitmQ docs have examples on how to use multiple servers in the exactly the way we want, but we dont know how to put that in the server_config.json.

Happy to feed back our experiences/discoveries, though.

SwooshyCueb commented 1 year ago

At present, this is not supported, but if my understanding of how it's meant to work is correct, it shouldn't be too difficult to implement. I'm working on a major refactor currently (#105), but it looks like there might be some further refactoring in store anyway for our usage of AMQP/Proton within the plugin (#107). I'm nearing the finish line for #105 and am hesitant to throw more onto the pile there, so this might be implemented in a separate PR or as part of work on #107.

trel commented 1 year ago

Yes, definitely a separate bit of work.

kript commented 1 year ago

Fair enough for a second piece of work. Any estimate when?

What do you expect to happen if the rabbit server goes away? Will IRODS continue to function or will it block?

if we can’t add HA for a bit we don’t want to make rabbitmq the SPOF…

trel commented 1 year ago

Fair enough for a second piece of work. Any estimate when?

not yet

What do you expect to happen if the rabbit server goes away? Will IRODS continue to function or will it block?

I believe this is currently a shortcoming of our implementation. I seem to remember that if iRODS cannot connect to the AMQP endpoint, the server is very unhappy. Seems this could be mitigated by the discussion at #107 as well.

if we can’t add HA for a bit we don’t want to make rabbitmq the SPOF…

load balancer? DNS roundrobin?