You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@ignite.apache.org by Naveen <na...@gmail.com> on 2020/12/06 11:46:52 UTC

Implementing HA among Ignite Clusters

Hi All

We have 2 clusters (Primary and secondary)  running and both are always in
sync from data perspective. 
Always consumers are using Primary only, but when primary is not reachable,
it should get redirected to secondary cluster How can this be achieved ?

1. Can we do anything on the cluster side which will take care of this, like
with config changes on the primary cluster like changing the connecton
string etc.
Like some of the messaging products uses connection URLs like
tcp://server1||tco://server2
something like this, if server1 is not reachable, it will get routed to
server2.
Somehing like this can be done here ?
2. DOing this from consumer side only, as and when they get exceptions like
disconnect etc, try connecting it to secondary and vice versa

What are the options we have for this scenario

Thanks
Naveen



--
Sent from: http://apache-ignite-users.70518.x6.nabble.com/

RE: Implementing HA among Ignite Clusters

Posted by Naveen <na...@gmail.com>.
HI 
We have no issue with the data replication, we do have feeder services
feeding data into multiple clusters real time. 
And, we are going to have active active set up only, but secondary is only
used in case primary has any issues. 
At the moment, consumers use the full connection string like
CL1-1:p1,CL1-2:p1,CL1-3:p1 (CL1 for cluster) for primary and 
CL2-1:p1,CL2-2:p1, CL2-3:p1 for secondary. 
Dynamic DNS may work well for single server like you configure
my.cluster.com to resolve  CL1-1 when everything is fine and then to CL2-1
if CL1-1 is not reachable. But this might cause an issue, if server CL1-1 
node is down, but the cluster is still up and running, but still requests
are getting routed to secondary right. DNS only resolve for single IP right,
not the whole cluster connection string. 
Am I making sense here, hope I am making it clear.

Any, well known load balancers used here for achieving HA between the
clusters in active active setup.

Thanks
Naveen



--
Sent from: http://apache-ignite-users.70518.x6.nabble.com/

Re: Implementing HA among Ignite Clusters

Posted by Denis Magda <dm...@apache.org>.
This DR feature is what you are looking for, complete solution:
https://www.gridgain.com/docs/latest/administrators-guide/data-center-replication/introduction

On Sunday, December 6, 2020, Alexandr Shapkin <le...@gmail.com> wrote:

> Hi,
>
>
>
> I don’t think that ignite support this out of the box, cause data
> replication is something beyond the default distribution. The usage depends
> on how your data is replicated, whether you want active-active
> synchronization, and so on.
>
>
>
> But if it’s about switching from one cluster to another, and always using
> a single cluster at a time, something like dynamic DNS
>
> or a custom load balancer should work here. I.e. you can configure your
> consumers to access domain *my.cluster.com <http://my.cluster.com> *that
> resolves to the primary cluster, IP=192.168.1.1. When you want to switch
> the load, you can adjust your DNS to resolve the name
>
> to, say, IP=192.168.1.13 which means the secondary one. This approach has
> some drawbacks but is quite simple to use and straightforward.
>
>
>
> *From: *Naveen <na...@gmail.com>
> *Sent: *Sunday, December 6, 2020 2:47 PM
> *To: *user@ignite.apache.org
> *Subject: *Implementing HA among Ignite Clusters
>
>
>
> Hi All
>
>
>
> We have 2 clusters (Primary and secondary)  running and both are always in
>
> sync from data perspective.
>
> Always consumers are using Primary only, but when primary is not reachable,
>
> it should get redirected to secondary cluster How can this be achieved ?
>
>
>
> 1. Can we do anything on the cluster side which will take care of this,
> like
>
> with config changes on the primary cluster like changing the connecton
>
> string etc.
>
> Like some of the messaging products uses connection URLs like
>
> tcp://server1||tco://server2
>
> something like this, if server1 is not reachable, it will get routed to
>
> server2.
>
> Somehing like this can be done here ?
>
> 2. DOing this from consumer side only, as and when they get exceptions like
>
> disconnect etc, try connecting it to secondary and vice versa
>
>
>
> What are the options we have for this scenario
>
>
>
> Thanks
>
> Naveen
>
>
>
>
>
>
>
> --
>
> Sent from: http://apache-ignite-users.70518.x6.nabble.com/
>
>
>


-- 
-
Denis

RE: Implementing HA among Ignite Clusters

Posted by Naveen <na...@gmail.com>.
Hi Alex

This got ignored for a while
But the known drawbacks of this approach, can you please let me know as I
need to finalize an approach on how to route requests to secondary site if
primary is not in working condition etc

Thanks




--
Sent from: http://apache-ignite-users.70518.x6.nabble.com/

RE: Implementing HA among Ignite Clusters

Posted by Alexandr Shapkin <le...@gmail.com>.
Hi,



I don’t think that ignite support this out of the box, cause data replication
is something beyond the default distribution. The usage depends on how your
data is replicated, whether you want active-active synchronization, and so on.



But if it’s about switching from one cluster to another, and always using a
single cluster at a time, something like dynamic DNS

or a custom load balancer should work here. I.e. you can configure your
consumers to access domain _my.cluster.com_ that resolves to the primary
cluster, IP=192.168.1.1. When you want to switch the load, you can adjust your
DNS to resolve the name

to, say, IP=192.168.1.13 which means the secondary one. This approach has some
drawbacks but is quite simple to use and straightforward.



 **From:**[Naveen](mailto:naveen.bandaru@gmail.com)  
 **Sent:** Sunday, December 6, 2020 2:47 PM  
 **To:**[user@ignite.apache.org](mailto:user@ignite.apache.org)  
 **Subject:** Implementing HA among Ignite Clusters



Hi All



We have 2 clusters (Primary and secondary) running and both are always in

sync from data perspective.

Always consumers are using Primary only, but when primary is not reachable,

it should get redirected to secondary cluster How can this be achieved ?



1\. Can we do anything on the cluster side which will take care of this, like

with config changes on the primary cluster like changing the connecton

string etc.

Like some of the messaging products uses connection URLs like

tcp://server1||tco://server2

something like this, if server1 is not reachable, it will get routed to

server2.

Somehing like this can be done here ?

2\. DOing this from consumer side only, as and when they get exceptions like

disconnect etc, try connecting it to secondary and vice versa



What are the options we have for this scenario



Thanks

Naveen







\--

Sent from: http://apache-ignite-users.70518.x6.nabble.com/