Search code examples
kuberneteshigh-availabilityactivemq-artemis

Is HA really useful if ActiveMQ Artemis cluster is a Kubernetes StatefulSet?


If for any reason a live-node (pod) goes down Kubernetes will create another one in place of it. This would definitely cause intermittent issues at the clients' end, but the client should start working once live-node (pod) is back up. On the other hand, if HA was in place I am unsure how quick the movement of clients (connections/subscriptions/sessions) from live-node to backup-node and back to live-node (i.e. fail-over and fail-back) would work.

I think only if all the backup-nodes are in another data-center they would be useful for disaster recovery. However, I am unable to think of a scenario where the backup-nodes would be useful if they exist in the same data-center as the live-nodes. I may be missing something, please advise on an ideal approach here.


Solution

  • If Kubernetes is managing a broker and will restart it if it fails then configuring brokers as active/passive for HA fail-over is not really useful. This, of course, assumes that all the relevant persistent data (e.g. the data directory) is safe from loss (e.g. on another pod).