Thread: Multi master implementation

Multi master implementation

From
Prince Pathria
Date:
Hi,

I want to how people are implementing multi master architecture in Postgres. For now, I've come across BDR3 and bucardo for multimaster approach.

Though both doesn't seem to be much promising to me. 

Goal: 2 master and their 3 slaves. [1 master + 2 slaves] in production site and [1 master + 1 slave]
 in DR site. 

Can you guys share how you did it and what issues did you faced?

Thanks in advance!

Happy to help :)
Prince Pathria Systems Architect Intern Evive +91 9478670472 goevive.com

Re: Multi master implementation

From
soumitra bhandary
Date:
Hi Prince,

BDR is something which is not that much robust as conventional master slave replication. 

Why do you want master node in DR set up ?
Do you want to enable simultaneous write operations at DR site as well?? Normally DR setups remain in cascade replication from one of the stand by node at production side .

Sent from my iPhone

On 19-Dec-2018, at 11:55 PM, Prince Pathria <prince.pathria@goevive.com> wrote:

Hi,

I want to how people are implementing multi master architecture in Postgres. For now, I've come across BDR3 and bucardo for multimaster approach.

Though both doesn't seem to be much promising to me. 

Goal: 2 master and their 3 slaves. [1 master + 2 slaves] in production site and [1 master + 1 slave]
 in DR site. 

Can you guys share how you did it and what issues did you faced?

Thanks in advance!

Happy to help :)
Prince Pathria Systems Architect Intern Evive +91 9478670472 goevive.com

Re: Multi master implementation

From
Ron
Date:
I think he wants masters *and* slaves.

On 12/19/18 8:00 PM, soumitra bhandary wrote:
Hi Prince,

BDR is something which is not that much robust as conventional master slave replication. 

Why do you want master node in DR set up ?
Do you want to enable simultaneous write operations at DR site as well?? Normally DR setups remain in cascade replication from one of the stand by node at production side .

Sent from my iPhone

On 19-Dec-2018, at 11:55 PM, Prince Pathria <prince.pathria@goevive.com> wrote:

Hi,

I want to how people are implementing multi master architecture in Postgres. For now, I've come across BDR3 and bucardo for multimaster approach.

Though both doesn't seem to be much promising to me. 

Goal: 2 master and their 3 slaves. [1 master + 2 slaves] in production site and [1 master + 1 slave]
 in DR site. 

Can you guys share how you did it and what issues did you faced?

Thanks in advance!

Happy to help :)
Prince Pathria Systems Architect Intern Evive +91 9478670472 goevive.com

--
Angular momentum makes the world go 'round.

Re: Multi master implementation

From
Prince Pathria
Date:
Hi Soumitra,

Sorry, please consider it as another site instead of DR.

Or if I want multiple masters in main site only i.e. [2masters+3slaves]. How should I implement that?

Our devs are planning to push applications that might have a lot of write operations. If I say read to write ratio, [65% reads]:[35% writes]. I do have automatic failover configured[in single master arch] but don't want that postgres crashes due to unable to handle writes since writes contains complex queries and blobs as well which makes them heavy. App code change isn't an option for me.

Need your suggestions please!

Happy to help :)
Prince Pathria Systems Architect Intern Evive +91 9478670472 goevive.com


On Thu, Dec 20, 2018 at 7:30 AM soumitra bhandary <soumitra.bhandary@hotmail.com> wrote:
Hi Prince,

BDR is something which is not that much robust as conventional master slave replication. 

Why do you want master node in DR set up ?
Do you want to enable simultaneous write operations at DR site as well?? Normally DR setups remain in cascade replication from one of the stand by node at production side .

Sent from my iPhone

On 19-Dec-2018, at 11:55 PM, Prince Pathria <prince.pathria@goevive.com> wrote:

Hi,

I want to how people are implementing multi master architecture in Postgres. For now, I've come across BDR3 and bucardo for multimaster approach.

Though both doesn't seem to be much promising to me. 

Goal: 2 master and their 3 slaves. [1 master + 2 slaves] in production site and [1 master + 1 slave]
 in DR site. 

Can you guys share how you did it and what issues did you faced?

Thanks in advance!

Happy to help :)
Prince Pathria Systems Architect Intern Evive +91 9478670472 goevive.com

Re: Multi master implementation

From
soumitra bhandary
Date:
Well Prince , I have never worked with multiple master to be working in master slave replication . As you mentioned you have configured auto failover is this using EFM ? If you are using EFM then it won’t support multiple master in the cluster . I have worked with BDR where all nodes are worked as Master node but as you know it has downside as well . 

Coming to your application operation , you can segregate all read request to be diverted to the slave nodes , may be to one synchronous node and all write operation to be diverted only in Master node. In tis manner your application should be able to share read and write load . Anyways that you would be the best person to take  a call on this depending on your application . 

For multi master replication you can go through below link if that helps you out subjected to the implementation and compatibility with your application process . If any other member in this group has any experience with multiple master with  multi slave replication (apart from BDR) configuration experience , please share the same .


Thanks 
Soumitra 




On 20-Dec-2018, at 12:21 PM, Prince Pathria <prince.pathria@goevive.com> wrote:

Hi Soumitra,

Sorry, please consider it as another site instead of DR.

Or if I want multiple masters in main site only i.e. [2masters+3slaves]. How should I implement that?

Our devs are planning to push applications that might have a lot of write operations. If I say read to write ratio, [65% reads]:[35% writes]. I do have automatic failover configured[in single master arch] but don't want that postgres crashes due to unable to handle writes since writes contains complex queries and blobs as well which makes them heavy. App code change isn't an option for me.

Need your suggestions please!

Happy to help :)
Prince Pathria Systems Architect Intern Evive +91 9478670472 goevive.com


On Thu, Dec 20, 2018 at 7:30 AM soumitra bhandary <soumitra.bhandary@hotmail.com> wrote:
Hi Prince,

BDR is something which is not that much robust as conventional master slave replication. 

Why do you want master node in DR set up ?
Do you want to enable simultaneous write operations at DR site as well?? Normally DR setups remain in cascade replication from one of the stand by node at production side .

Sent from my iPhone

On 19-Dec-2018, at 11:55 PM, Prince Pathria <prince.pathria@goevive.com> wrote:

Hi,

I want to how people are implementing multi master architecture in Postgres. For now, I've come across BDR3 and bucardo for multimaster approach.

Though both doesn't seem to be much promising to me. 

Goal: 2 master and their 3 slaves. [1 master + 2 slaves] in production site and [1 master + 1 slave]
 in DR site. 

Can you guys share how you did it and what issues did you faced?

Thanks in advance!

Happy to help :)
Prince Pathria Systems Architect Intern Evive +91 9478670472 goevive.com

Re: Multi master implementation

From
Prince Pathria
Date:
Thanks Soumitra, Postgres-XC isn't getting any updates since 2015. Don't know where it might get fail. I've also considered Postgres-XL which is in active development state. But ver. 10 is very new to be used for production.

Curious to know how others are implementing multi master architecture!!

Prince Pathria
Systems Architect Intern Evive +91 9478670472 goevive.com


On Thu, Dec 20, 2018 at 11:40 PM soumitra bhandary <soumitra.bhandary@hotmail.com> wrote:
Well Prince , I have never worked with multiple master to be working in master slave replication . As you mentioned you have configured auto failover is this using EFM ? If you are using EFM then it won’t support multiple master in the cluster . I have worked with BDR where all nodes are worked as Master node but as you know it has downside as well . 

Coming to your application operation , you can segregate all read request to be diverted to the slave nodes , may be to one synchronous node and all write operation to be diverted only in Master node. In tis manner your application should be able to share read and write load . Anyways that you would be the best person to take  a call on this depending on your application . 

For multi master replication you can go through below link if that helps you out subjected to the implementation and compatibility with your application process . If any other member in this group has any experience with multiple master with  multi slave replication (apart from BDR) configuration experience , please share the same .


Thanks 
Soumitra 




On 20-Dec-2018, at 12:21 PM, Prince Pathria <prince.pathria@goevive.com> wrote:

Hi Soumitra,

Sorry, please consider it as another site instead of DR.

Or if I want multiple masters in main site only i.e. [2masters+3slaves]. How should I implement that?

Our devs are planning to push applications that might have a lot of write operations. If I say read to write ratio, [65% reads]:[35% writes]. I do have automatic failover configured[in single master arch] but don't want that postgres crashes due to unable to handle writes since writes contains complex queries and blobs as well which makes them heavy. App code change isn't an option for me.

Need your suggestions please!

Happy to help :)
Prince Pathria Systems Architect Intern Evive +91 9478670472 goevive.com


On Thu, Dec 20, 2018 at 7:30 AM soumitra bhandary <soumitra.bhandary@hotmail.com> wrote:
Hi Prince,

BDR is something which is not that much robust as conventional master slave replication. 

Why do you want master node in DR set up ?
Do you want to enable simultaneous write operations at DR site as well?? Normally DR setups remain in cascade replication from one of the stand by node at production side .

Sent from my iPhone

On 19-Dec-2018, at 11:55 PM, Prince Pathria <prince.pathria@goevive.com> wrote:

Hi,

I want to how people are implementing multi master architecture in Postgres. For now, I've come across BDR3 and bucardo for multimaster approach.

Though both doesn't seem to be much promising to me. 

Goal: 2 master and their 3 slaves. [1 master + 2 slaves] in production site and [1 master + 1 slave]
 in DR site. 

Can you guys share how you did it and what issues did you faced?

Thanks in advance!

Happy to help :)
Prince Pathria Systems Architect Intern Evive +91 9478670472 goevive.com

Re: Multi master implementation

From
Abhinav Mehta
Date:
Try Citus.

On 21-Dec-2018, at 12:43 PM, Prince Pathria <prince.pathria@goevive.com> wrote:

Thanks Soumitra, Postgres-XC isn't getting any updates since 2015. Don't know where it might get fail. I've also considered Postgres-XL which is in active development state. But ver. 10 is very new to be used for production.

Curious to know how others are implementing multi master architecture!!

Prince Pathria
Systems Architect Intern Evive +91 9478670472 goevive.com


On Thu, Dec 20, 2018 at 11:40 PM soumitra bhandary <soumitra.bhandary@hotmail.com> wrote:
Well Prince , I have never worked with multiple master to be working in master slave replication . As you mentioned you have configured auto failover is this using EFM ? If you are using EFM then it won’t support multiple master in the cluster . I have worked with BDR where all nodes are worked as Master node but as you know it has downside as well . 

Coming to your application operation , you can segregate all read request to be diverted to the slave nodes , may be to one synchronous node and all write operation to be diverted only in Master node. In tis manner your application should be able to share read and write load . Anyways that you would be the best person to take  a call on this depending on your application . 

For multi master replication you can go through below link if that helps you out subjected to the implementation and compatibility with your application process . If any other member in this group has any experience with multiple master with  multi slave replication (apart from BDR) configuration experience , please share the same .


Thanks 
Soumitra 




On 20-Dec-2018, at 12:21 PM, Prince Pathria <prince.pathria@goevive.com> wrote:

Hi Soumitra,

Sorry, please consider it as another site instead of DR.

Or if I want multiple masters in main site only i.e. [2masters+3slaves]. How should I implement that?

Our devs are planning to push applications that might have a lot of write operations. If I say read to write ratio, [65% reads]:[35% writes]. I do have automatic failover configured[in single master arch] but don't want that postgres crashes due to unable to handle writes since writes contains complex queries and blobs as well which makes them heavy. App code change isn't an option for me.

Need your suggestions please!

Happy to help :)
Prince Pathria Systems Architect Intern Evive +91 9478670472 goevive.com


On Thu, Dec 20, 2018 at 7:30 AM soumitra bhandary <soumitra.bhandary@hotmail.com> wrote:
Hi Prince,

BDR is something which is not that much robust as conventional master slave replication. 

Why do you want master node in DR set up ?
Do you want to enable simultaneous write operations at DR site as well?? Normally DR setups remain in cascade replication from one of the stand by node at production side .

Sent from my iPhone

On 19-Dec-2018, at 11:55 PM, Prince Pathria <prince.pathria@goevive.com> wrote:

Hi,

I want to how people are implementing multi master architecture in Postgres. For now, I've come across BDR3 and bucardo for multimaster approach.

Though both doesn't seem to be much promising to me. 

Goal: 2 master and their 3 slaves. [1 master + 2 slaves] in production site and [1 master + 1 slave]
 in DR site. 

Can you guys share how you did it and what issues did you faced?

Thanks in advance!

Happy to help :)
Prince Pathria Systems Architect Intern Evive +91 9478670472 goevive.com


Re: Multi master implementation

From
"Jehan-Guillaume (ioguix) de Rorthais"
Date:
On Fri, 21 Dec 2018 12:43:57 +0530
Prince Pathria <prince.pathria@goevive.com> wrote:

> Thanks Soumitra, Postgres-XC isn't getting any updates since 2015. Don't
> know where it might get fail. I've also considered Postgres-XL which is in
> active development state. But ver. 10 is very new to be used for production.

I would not deploy Postgres-XC/XL over a WAN anyway!

> Curious to know how others are implementing multi master architecture!!

They are using Bucardo or BDR. Or they just don't.

Before sketching a very complex multi-master architecture, bench easier and
safer solution first. Put all your energy to define the simplest and
effective architecture you can, and bench it.

You might be surprised.

> On Thu, Dec 20, 2018 at 11:40 PM soumitra bhandary <
> soumitra.bhandary@hotmail.com> wrote:
>
> > Well Prince , I have never worked with multiple master to be working in
> > master slave replication . As you mentioned you have configured auto
> > failover is this using EFM ? If you are using EFM then it won’t support
> > multiple master in the cluster . I have worked with BDR where all nodes are
> > worked as Master node but as you know it has downside as well .
> >
> > Coming to your application operation , you can segregate all read request
> > to be diverted to the slave nodes , may be to one synchronous node and all
> > write operation to be diverted only in Master node. In tis manner your
> > application should be able to share read and write load . Anyways that you
> > would be the best person to take  a call on this depending on your
> > application .
> >
> > For multi master replication you can go through below link if that helps
> > you out subjected to the implementation and compatibility with your
> > application process . If any other member in this group has any experience
> > with multiple master with  multi slave replication (apart from BDR)
> > configuration experience , please share the same .
> >
> > https://wiki.postgresql.org/wiki/Postgres-XC
> >
> > Thanks
> > Soumitra
> >
> >
> >
> >
> > On 20-Dec-2018, at 12:21 PM, Prince Pathria <prince.pathria@goevive.com>
> > wrote:
> >
> > Hi Soumitra,
> >
> > Sorry, please consider it as another site instead of DR.
> >
> > Or if I want multiple masters in main site only i.e. [2masters+3slaves].
> > How should I implement that?
> >
> > Our devs are planning to push applications that might have a lot of write
> > operations. If I say read to write ratio, [65% reads]:[35% writes]. I do
> > have automatic failover configured[in single master arch] but don't want
> > that postgres crashes due to unable to handle writes since writes contains
> > complex queries and blobs as well which makes them heavy. App code change
> > isn't an option for me.
> >
> > Need your suggestions please!
> >
> > Happy to help :)
> > Prince Pathria Systems Architect Intern Evive +91 9478670472 goevive.com
> >
> >
> > On Thu, Dec 20, 2018 at 7:30 AM soumitra bhandary <
> > soumitra.bhandary@hotmail.com> wrote:
> >
> >> Hi Prince,
> >>
> >> BDR is something which is not that much robust as conventional master
> >> slave replication.
> >>
> >> Why do you want master node in DR set up ?
> >> Do you want to enable simultaneous write operations at DR site as well??
> >> Normally DR setups remain in cascade replication from one of the stand by
> >> node at production side .
> >>
> >> Sent from my iPhone
> >>
> >> On 19-Dec-2018, at 11:55 PM, Prince Pathria <prince.pathria@goevive.com>
> >> wrote:
> >>
> >> Hi,
> >>
> >> I want to how people are implementing multi master architecture in
> >> Postgres. For now, I've come across BDR3 and bucardo for multimaster
> >> approach.
> >>
> >> Though both doesn't seem to be much promising to me.
> >>
> >> Goal: 2 master and their 3 slaves. [1 master + 2 slaves] in production
> >> site and [1 master + 1 slave]
> >>  in DR site.
> >>
> >> Can you guys share how you did it and what issues did you faced?
> >>
> >> Thanks in advance!
> >>
> >> Happy to help :)
> >> Prince Pathria Systems Architect Intern Evive +91 9478670472 goevive.com
> >>
> >>
> >



--
Jehan-Guillaume de Rorthais
Dalibo


Re: Multi master implementation

From
Simon Riggs
Date:
On Thu, 20 Dec 2018 at 02:01, soumitra bhandary <soumitra.bhandary@hotmail.com> wrote:
Hi Prince,

BDR is something which is not that much robust as conventional master slave replication.

Completely wrong. Sounds like we have some misunderstandings there.

--
Simon Riggs                http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services

Re: Multi master implementation

From
Simon Riggs
Date:
On Wed, 19 Dec 2018 at 18:25, Prince Pathria <prince.pathria@goevive.com> wrote:
 
I want to how people are implementing multi master architecture in Postgres. For now, I've come across BDR3 and bucardo for multimaster approach.

Though both doesn't seem to be much promising to me. 

Goal: 2 master and their 3 slaves. [1 master + 2 slaves] in production site and [1 master + 1 slave]
 in DR site. 

That's exactly the case that BDR solves.


Please sign up to the next BDR webinar or download the white paper.
 
--
Simon Riggs                http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services