You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@activemq.apache.org by "Steigerwald, Aaron" <as...@brandesassociates.com.INVALID> on 2022/03/27 00:48:12 UTC

Artemis client multi-cluster failover

Hello,

Is there a way to configure an Artemis client to failover to another cluster? For example, say you have 3 datacenters- DC1, DC2, and DC3. DC1 and DC2 are connected by high speed low latency networks. DC3 is connected via a low latency network. Cluster 1 (C1) is made up of nodes in DC1 and DC2. Cluster 2 (C2) is made up of nodes that only exist in DC3. The nodes in C1 have been configured to asynchronously mirror messages to C2. How can clients be configured to connect to C1 but failover to C2 if C1 (DC1 and DC2) become unavailable?

One additional question about asynchronously mirroring- can two or more nodes from C1 mirror to the same node in C2?

Thank you,
Aaron Steigerwald

Re: Artemis client multi-cluster failover

Posted by Justin Bertram <jb...@apache.org>.
Failover is only supported between a live broker and its backup. The
use-case you're talking about is usually referred to as "disaster recovery"
and it's complicated by the fact that you never want to connect to the DR
site until everything in the main site fails. You may be able to facilitate
this with a connection router [1] or perhaps DNS updates.


Justin

[1]
https://activemq.apache.org/components/artemis/documentation/latest/connection-routers.html

On Sat, Mar 26, 2022 at 7:48 PM Steigerwald, Aaron
<as...@brandesassociates.com.invalid> wrote:

> Hello,
>
> Is there a way to configure an Artemis client to failover to another
> cluster? For example, say you have 3 datacenters- DC1, DC2, and DC3. DC1
> and DC2 are connected by high speed low latency networks. DC3 is connected
> via a low latency network. Cluster 1 (C1) is made up of nodes in DC1 and
> DC2. Cluster 2 (C2) is made up of nodes that only exist in DC3. The nodes
> in C1 have been configured to asynchronously mirror messages to C2. How can
> clients be configured to connect to C1 but failover to C2 if C1 (DC1 and
> DC2) become unavailable?
>
> One additional question about asynchronously mirroring- can two or more
> nodes from C1 mirror to the same node in C2?
>
> Thank you,
> Aaron Steigerwald
>