Reconnecting JVB after JMS failover with different IP

Questions:

  1. Is it possible to reload config of JVB for one shard without affecting participants on the same JVB from another shard?
  2. What’s the “proper” way to reconnect JVBs when JMS instance fails and is replaced by another? Would JVB just do the right thing if new JMS instance has same DNS name (but different IP)?

Background: I’m planning a scalable setup where JVBs connect to multiple shards. In the event that a JMS fails, meetings on it would restart in the other JMS’s. When the failed JMS instance is replaced, it should go back into service and all JVBs would reconnect to new instance.

Architecture_3_-Backend-_Confluence

This appears straightforward if replacement JMS has same IP since JVB will keep retrying and eventually reconnect when the configured JMS is back online. However, I’m considering solutions for case where it is not possible to keep the same IP.

The two options I’m considering (hence the two questions at the start of this post):

  1. Update JVB configs so it references new IP and somehow reload without affecting existing calls.
  2. Have DNS records for each JMS with short TTL, and update record to new IP on failover.

Is there a more sensible approach?

(P.S. Option 1 also opens up possibility of dynamically scaling out JMS, which would be cool but not a priority at the moment)

You can dynamically change the shards, delete one and add a new one:

Splendid! Thanks.