Обсуждение: suggestions/hints for multimaster solution

Поиск
Список
Период
Сортировка

suggestions/hints for multimaster solution

От
Gerd König
Дата:
Hello,

we're looking for a multi-master solution (whole database not only some
tables) for our production database (Postgres 8.3.5 64bit on OpenSuse),
and I wanted to know what are your experiences/suggestions with/for such
a scenario (multimaster for failover purpose).
I know there are some tools, but :
* bucardo -> not for failover
* pg_cluster -> frozen, currently unavailable, old ..?!?

Perhaps we should have a look at
* pg_pool(II)
* clustering solution from Cybertec, called "cybercluster"

We want to implement it on 2 servers with identical hardware -> shared
nothing architecture. One of them contains the production database already.

any help appreciated...GERD...

Re: suggestions/hints for multimaster solution

От
"Jaume Sabater"
Дата:
On Fri, Jan 9, 2009 at 11:32 AM, Gerd König <koenig@transporeon.com> wrote:

> Perhaps we should have a look at
> * pg_pool(II)

I can only speak of pgpool-II. It's working fine for me in a setup
which is exactly the same one you have (change OpenSuse for Debian,
but the rest is the same). The thing is that pgpool-II itself can
become a single point of failure unless you provide HA for it (I am
doing so with Heartbeat), but IMHO that would then be a failover
solution, not a multimaster (from pgpool-II's point of view, not the
databases behind pgpool-II).

Next thing I want to do is try Slony-I with pgpool-II, but I think
that is not a multimaster solution either.

Of course we may have different points of view on what multimaster mean :)

If you plan on using pgpool-II, take into consideration that
replication is done at a SQL query level, which is cool, but has its
limitations. If you use Slony-I inside pgpool-II I think you can take
over those limitations, but the solution is not so... neat, so to
speak :)

/discuss

--
Jaume Sabater
http://linuxsilo.net/

"Ubi sapientas ibi libertas"

Re: suggestions/hints for multimaster solution

От
"Jaume Sabater"
Дата:
2009/1/9 Gerd König <koenig@transporeon.com>:

> we want to have a scenario where (at least) 2 servers are r/w accessible
> and if one of the server crashes this should cause (almost) no downtime
> for the database.
> Yes, you're right, it's more like "keeping two databases in sync".

I would call this replication with failover (active-passive). To me,
multimaster sounds like active-active, where clients can send queries
to any of the nodes (that is why all nodes are masters). Of course,
it's just my point of view. :)

> We also use heartbeat for pinging the server themselves. Is it also
> possible to use heartbeat for checking the availability of a service
> (I'm not that familiar with heartbeat, so long) ?
> Does this mean you have two identical installations of pgpool-II on each
> of the db-servers ?

Yes, I have two almost identical installations of pgpool-II on each of
the PostgreSQL servers. pgpool-II handles the pgsql servers. Heartbeat
provides HA to pgpool-II.

Hope it helps, at least clarifying. :)

--
Jaume Sabater
http://linuxsilo.net/

"Ubi sapientas ibi libertas"

Re: suggestions/hints for multimaster solution

От
"Greg Sabino Mullane"
Дата:
-----BEGIN PGP SIGNED MESSAGE-----
Hash: RIPEMD160


> we're looking for a multi-master solution (whole database not only some
> tables) for our production database (Postgres 8.3.5 64bit on OpenSuse),
> and I wanted to know what are your experiences/suggestions with/for such
> a scenario (multimaster for failover purpose).
> I know there are some tools, but :
> * bucardo -> not for failover

Not sure what you mean by failover in this context, as a true multi-master
solution does not need failover as there are always two or more nodes
that are read/write at the same time. (Bucardo probably fails your other
requirement though, of non-table items, as it does not do DDL).

- --
Greg Sabino Mullane greg@turnstep.com
End Point Corporation
PGP Key: 0x14964AC8 200901091856
http://biglumber.com/x/web?pk=2529DF6AB8F79407E94445B4BC9B906714964AC8
-----BEGIN PGP SIGNATURE-----

iEYEAREDAAYFAkln5C8ACgkQvJuQZxSWSsg2fgCgxCwxWMh/kNKpP5A8q8Pg3ajD
K6cAoMn8YjfuMHP0t72DS6TIr7v/3jl5
=uZwi
-----END PGP SIGNATURE-----