Artemis Failback

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

Artemis Failback

Gift sefako
Hi all,

- Ideal Use Case
    We'd like to ensure high availability using failover, and then
normalization of the environment using failback once the server which was
shut down is back up.

- Context and Environment
    * We have two brokers running on two seperate servers, set up in a
cluster with static connectors.
    * Both brokers are able to handle their own load just fine.
    * We create a situation where one of the broker shuts down, and all of
its clients failover to the other broker and we're still able to process
messages just fine.

- Reproduction
    Node 1:
    * ./artemis create --nio --clustered --cluster-user artemis
--cluster-password artemis --name broker1 --user artemis --password artemis
--allow-anonymous Y broker1
    * add to connectors :    <connector
name="secondBroker">tcp://secondhost:61616</connector>
    * reference secondBroker as static connector
    * ./broker1/bin/artemis run


    Node 2:
    * ./artemis create --nio --clustered --cluster-user artemis
--cluster-password artemis --name broker2 --user artemis --password artemis
--allow-anonymous Y broker2
    * add to connectors :    <connector
name="firstBroker">tcp://firsthost:61616</connector>
    * reference firstBroker as static connector
    * ./broker1/bin/artemis run

    - start clients
        + they all connect to broker1
    - stop broker1
    - client connects to broker2 successfully
    - start broker1
        + expect to see client failback to broker1, but this does not happen

- Issues
    ** Failback does not happen after a failover occurs.


- Client-side configuration
     +
(tcp://firsthost:61616,tcp://secondhost:61616)?ha=true&randomize=false&retryInterval=1000&reconnectAttempts=1

    - Notes on reconnectAttempts:
        if -1 -> do not attempt to fail-over
        if >= 0 -> fail over, but no fail-back
Reply | Threaded
Open this post in threaded view
|

Re: Artemis Failback

jbertram
If you want true fail-over and fail-back then you actually have to
configure HA on the brokers.  You've only configured clustering.


Justin

On Wed, Oct 17, 2018 at 4:32 AM Gift sefako <[hidden email]> wrote:

> Hi all,
>
> - Ideal Use Case
>     We'd like to ensure high availability using failover, and then
> normalization of the environment using failback once the server which was
> shut down is back up.
>
> - Context and Environment
>     * We have two brokers running on two seperate servers, set up in a
> cluster with static connectors.
>     * Both brokers are able to handle their own load just fine.
>     * We create a situation where one of the broker shuts down, and all of
> its clients failover to the other broker and we're still able to process
> messages just fine.
>
> - Reproduction
>     Node 1:
>     * ./artemis create --nio --clustered --cluster-user artemis
> --cluster-password artemis --name broker1 --user artemis --password artemis
> --allow-anonymous Y broker1
>     * add to connectors :    <connector
> name="secondBroker">tcp://secondhost:61616</connector>
>     * reference secondBroker as static connector
>     * ./broker1/bin/artemis run
>
>
>     Node 2:
>     * ./artemis create --nio --clustered --cluster-user artemis
> --cluster-password artemis --name broker2 --user artemis --password artemis
> --allow-anonymous Y broker2
>     * add to connectors :    <connector
> name="firstBroker">tcp://firsthost:61616</connector>
>     * reference firstBroker as static connector
>     * ./broker1/bin/artemis run
>
>     - start clients
>         + they all connect to broker1
>     - stop broker1
>     - client connects to broker2 successfully
>     - start broker1
>         + expect to see client failback to broker1, but this does not
> happen
>
> - Issues
>     ** Failback does not happen after a failover occurs.
>
>
> - Client-side configuration
>      +
>
> (tcp://firsthost:61616,tcp://secondhost:61616)?ha=true&randomize=false&retryInterval=1000&reconnectAttempts=1
>
>     - Notes on reconnectAttempts:
>         if -1 -> do not attempt to fail-over
>         if >= 0 -> fail over, but no fail-back
>