Thread: How can I avoid PGPool as a single point of failure?

How can I avoid PGPool as a single point of failure?

From
"snewman18@gmail.com"
Date:
My application currently has a single PG 8.2 database server, and I'm
bringing more boxes online to mitigate the risk of a single point of
failure.

I'm interested in using PGPool to do the load balancing, and it was
suggested that I put one server running PGPool in front of two
database servers. This only seems to move my risk to the PGPool
machine.

Is it possible to point two servers running PGPool at the same two
database servers? If so, I seem to recall reading about being able to
use some kind of virtual IP address to split the traffic to both.

Any ideas are greatly appreciated!


Re: How can I avoid PGPool as a single point of failure?

From
Chander Ganesan
Date:
Hello...

snewman18@gmail.com wrote:
>
> I'm interested in using PGPool to do the load balancing, and it was
> suggested that I put one server running PGPool in front of two
> database servers. This only seems to move my risk to the PGPool
> machine.
>
You could use linux hearbeat to allow one Pgpool server to "watch after"
another (and take over in the case of a failure), or you could try to do
something with CARP or some other related balancing scheme.  In the CARP
case you would have a single master that would respond to network
requests, and another slave (running pgpool) that would sit idle until
it needed to leap into action to "save the day".
> Is it possible to point two servers running PGPool at the same two
> database servers? If so, I seem to recall reading about being able to
> use some kind of virtual IP address to split the traffic to both.
CARP...I've never tried to use it for such a thing (I've used it for
firewall redundancy in the past..which is what I think it was designed
for), but I'm fairly certain you could do so without too much trouble.

--
Chander Ganesan
Open Technology Group, Inc.
One Copley Parkway, Suite 210
Morrisville, NC  27560
Phone: 877-258-8987/919-463-0999
http://www.otg-nc.com
Ask me about our Expert PostgreSQL & PostGIS Training


Re: How can I avoid PGPool as a single point of failure?

From
"Aaron Glenn"
Date:
On Jan 29, 2008 6:30 PM, Chander Ganesan <chander@otg-nc.com> wrote:
>
> > Is it possible to point two servers running PGPool at the same two
> > database servers? If so, I seem to recall reading about being able to
> > use some kind of virtual IP address to split the traffic to both.
> CARP...I've never tried to use it for such a thing (I've used it for
> firewall redundancy in the past..which is what I think it was designed
> for), but I'm fairly certain you could do so without too much trouble.

CARP *and* pfsync.
this late at night off the top of my head I can't see any blatantly
obvious reason this wouldn't work (with at least pgpool that is, dunno
about your data)

aaron.glenn

Re: How can I avoid PGPool as a single point of failure?

From
Vivek Khera
Date:
On Jan 31, 2008, at 4:28 AM, Aaron Glenn wrote:

> CARP *and* pfsync.
> this late at night off the top of my head I can't see any blatantly
> obvious reason this wouldn't work (with at least pgpool that is, dunno
> about your data)

we use CARP to balance and failover some webserver pairs.  We also use
it to balance our internal DNS caches to our internal clients.  The
only drawback is that once you pass a router, all traffic from that
router will go to a single CARP host -- ie, you get failover but no
balance.

Other than that, it makes upgrading systems nearly invisible to the
other servers.  For critical things like DNS, this is a big win.