To quote:

“This functionality isn't supported, and while it may be technically feasible 
to implement I'm not sure how much sense it makes overall.”

On 27 Mar 2023, at 19:16, Justin Bertram <jbert...@apache.org> wrote:

I'm not sure where I may have indicated that either one of those things
isn't supported.

In any case, you can do either.


Justin

On Mon, Mar 27, 2023 at 1:07 PM Roy Cohen <roy_co...@hotmail.com> wrote:

> Just to be clear: When you say “isn’t supported” do you mean a third
> broker or co located backups when running each broker on its own VM ?
> 
>> On 27 Mar 2023, at 19:04, Roy Cohen <roy_co...@hotmail.com> wrote:
>> 
>> Will do Justin and many thanks for all the additional details which I
> will certainly bring forward internally, much appreciated
>> 
>> On 27 Mar 2023, at 18:58, Justin Bertram <jbert...@apache.org> wrote:
>> 
>> I recently added a new section to the clustering documentation regarding
>> things to keep in mind regarding performance [1].
>> 
>> Also, it's worth noting that often the bottleneck in messaging is not the
>> broker itself but rather the consumer(s). It might be worth ensuring that
>> the bottleneck really is the broker. As noted in the new documentation
> [1],
>> adding brokers to a cluster can actually *reduce* throughput in certain
>> circumstances.
>> 
>> Let me know if using group-name works for you.
>> 
>> 
>> Justin
>> 
>> [1]
>> 
> https://github.com/apache/activemq-artemis/blob/main/docs/user-manual/en/clusters.md#performance-considerations
>> 
>> On Mon, Mar 27, 2023 at 12:44 PM Roy Cohen <roy_co...@hotmail.com>
> wrote:
>> 
>>> I haven’t tried he group-name yet.
>>> 
>>> With regards to the third broker: The architects believe it’ll improve
>>> performance given the amount of messages the brokers need to process (in
>>> other words “throw more resources at it…”)
>>> 
>>> 
>>>> On 27 Mar 2023, at 18:28, Justin Bertram <jbert...@apache.org> wrote:
>>>> 
>>>>> What would you suggest is to do ?
>>>> 
>>>> Did you try my previous suggestion already (i.e. using the "group-name"
>>>> element in the "master" or "slave" element of "colocated")?
>>>> 
>>>> Aside from that, do you know why you were asked to add another broker?
>>>> Depending on the reason it may not be a good solution.
>>>> 
>>>> 
>>>> Justin
>>>> 
>>>> On Mon, Mar 27, 2023 at 12:07 PM Roy Cohen <roy_co...@hotmail.com>
>>> wrote:
>>>> 
>>>>> Hi Justin
>>>>> 
>>>>> It is a good question I honestly don’t have the answer for. I
> inherited
>>>>> this configuration and was asked to add a third broker and to ensure
>>> the co
>>>>> located backups are being done in such a way that each broker points
> on
>>>>> another. Perhaps those who asked for it don’t fully understand Artemis
>>> ! :)
>>>>> 
>>>>> That said, those co located backup on the existing setup with two
>>> brokers
>>>>> do work as we have been enabled to recover lost messages in the past.
> So
>>>>> even not optimal, technically it does work ?
>>>>> 
>>>>> I can only imagine that those who initially designed it about 5 years
>>> ago
>>>>> did not use a shared storage to avoid latency.
>>>>> 
>>>>> What would you suggest is to do ?
>>>>> 
>>>>> On 27 Mar 2023, at 18:00, Justin Bertram <jbert...@apache.org> wrote:
>>>>> 
>>>>> Your screenshot didn't come through the list.
>>>>> 
>>>>> In any case, I'm pretty confused at this point. You're clearly using a
>>>>> colocated configuration that will request a backup from another broker
>>> in
>>>>> the cluster, but you say you're not running multiple brokers in the
> same
>>>>> JVM. If you aren't running multiple brokers in the same JVM then what
>>> are
>>>>> you using the colocated configuration for? The whole point of the
>>> colocated
>>>>> configuration is to run multiple brokers in the same JVM (i.e. a
> primary
>>>>> broker and also a backup broker for another primary in the cluster).
>>>>> 
>>>>> 
>>>>> Justin
>>>>> 
>>>>> On Mon, Mar 27, 2023 at 11:42 AM Roy Cohen <roy_co...@hotmail.com>
>>> wrote:
>>>>> 
>>>>>> I don’t believe we are.
>>>>>> 
>>>>>> So assume three Virtual Machines on Azure.
>>>>>> 
>>>>>> Each VM runs one Artemis broker
>>>>>> 
>>>>>> 
>>>>>> All of their ha policy section on all three brokers look like that:
>>>>>> 
>>>>>> <ha-policy>
>>>>>>    <replication>
>>>>>>      <colocated>
>>>>>>        <max-backups>1</max-backups>
>>>>>>        <request-backup>true</request-backup>
>>>>>> 
>>>>>> <backup-request-retry-interval>1000</backup-request-retry-interval>
>>>>>>        <excludes>
>>>>>>          <connector-ref>my-connector</connector-ref>
>>>>>>          <connector-ref>thishostname.mydomain</connector-ref>
>>>>>>        </excludes>
>>>>>>        <master>
>>>>>>          <check-for-live-server>true</check-for-live-server>
>>>>>>        </master>
>>>>>>        <slave>
>>>>>>          <allow-failback>true</allow-failback>
>>>>>>          <restart-backup>true</restart-backup>
>>>>>>          <scale-down/>
>>>>>>        </slave>
>>>>>>      </colocated>
>>>>>>    </replication>
>>>>>>  </ha-policy>
>>>>>> 
>>>>>> 
>>>>>> 
>>>>>> 
>>>>>> On 27 Mar 2023, at 17:26, Justin Bertram <jbert...@apache.org>
> wrote:
>>>>>> 
>>>>>> We are not running multiple brokers on the same JVM but a single
>>> instance
>>>>>> 
>>>>>> per VM, so each one has a dedicated JVM and VM
>>>>>> 
>>>>>> Based on your previous message I was under the impression you were
>>> using
>>>>>> the "colocated" feature. *If* you're using this then you definitely
> are
>>>>>> running multiple brokers in the same JVM because that's precisely
> what
>>>>> that
>>>>>> feature does. It runs a primary and a backup broker in the *same
> JVM*.
>>> If
>>>>>> you aren't using a "colocated" configuration then I'm not sure what
> the
>>>>>> original question is about. Can you clarify?
>>>>>> 
>>>>>> 
>>>>>> Justin
>>>>>> 
>>>>>> On Mon, Mar 27, 2023 at 11:07 AM Roy Cohen <roy_co...@hotmail.com>
>>>>> wrote:
>>>>>> 
>>>>>> Hi Justin
>>>>>> 
>>>>>> Thank you for your input.
>>>>>> 
>>>>>> Sorry, should have been clearer on our setup - We are not running
>>>>> multiple
>>>>>> brokers on the same JVM but a single instance per VM, so each one
> has a
>>>>>> dedicated JVM and VM
>>>>>> 
>>>>>> Thanks
>>>>>> Roy
>>>>>> 
>>>>>> 
>>>>>> On 27 Mar 2023, at 16:59, Justin Bertram <jbert...@apache.org>
> wrote:
>>>>>> 
>>>>>> I'm not entirely sure if the configuration you want is possible. You
>>>>>> 
>>>>>> might
>>>>>> 
>>>>>> try using the "group-name" element in the "master" or "slave" element
>>> of
>>>>>> "colocated." Only servers with the same group-name will pair
> together.
>>>>>> 
>>>>>> Aside from that I would actually recommend against using colocated
>>>>>> 
>>>>>> brokers.
>>>>>> 
>>>>>> The original use-case for this functionality was very early cloud
>>>>>> infrastructure where durable, attached storage was not readily
>>> available.
>>>>>> However, since then most (if not all) cloud environments support
>>> durable
>>>>>> storage separate from the broker so that if the broker goes down a
> new,
>>>>>> identical broker can be spun-up relatively quickly and attached to
> the
>>>>>> 
>>>>>> same
>>>>>> 
>>>>>> storage. This provides functional high availability without the need
>>> for
>>>>>> any idle backups or replication of any kind which functionally
>>> nullifies
>>>>>> this feature.
>>>>>> 
>>>>>> Additionally, it turns out that (surprise!) configuring & running
>>>>>> 
>>>>>> multiple
>>>>>> 
>>>>>> brokers in the same JVM is difficult and error-prone not to mention
> the
>>>>>> complication of dynamically coordinating the acquisition of backups
> in
>>> a
>>>>>> running cluster and protecting against split-brain.
>>>>>> 
>>>>>> 
>>>>>> Justin
>>>>>> 
>>>>>> On Thu, Mar 23, 2023 at 7:37 AM Roy Cohen <roy_co...@hotmail.com>
>>> wrote:
>>>>>> 
>>>>>> Hello everyone
>>>>>> 
>>>>>> We have a setup of three Artemis brokers (very old version don’t ask
>>> :))
>>>>>> 
>>>>>> We would like to configure the co located backups such that the
> backups
>>>>>> are sent in this order:
>>>>>> 
>>>>>> Broker01 -> Broker02
>>>>>> Broker02 -> Broker03
>>>>>> Broker03 -> Broker01
>>>>>> 
>>>>>> 
>>>>>> I was reading on co located backups here:
>>>>>> 
>>>>>> 
>>>>> 
>>> 
> https://activemq.apache.org/components/artemis/documentation/1.0.0/ha.html
>>>>>> 
>>>>>> however not sure I fully understand how to configure the xml section
> to
>>>>>> achieve that.
>>>>>> 
>>>>>> Shall I add excludes in each broker, i.e.
>>>>>> 
>>>>>> <colocated>
>>>>>>   <excludes>
>>>>>>      <connector-ref>...</connector-ref>
>>>>>>   </excludes>
>>>>>> 
>>>>>> Any help would be appreciated.
>>>>>> 
>>>>>> Many thanks in advance !
>>>>>> 
>>>>>> 
>>>>>> 
>>>>>> 
>>>>>> 
>>>>>> 
>>>>>> 
>>>>> 
>>> 
>>> 
> 
> 

Reply via email to