Re: Postgres architecture for multiple instances

From: Adrian Klaver <adrian(dot)klaver(at)aklaver(dot)com>
To: Samuel Smith <pgsql(at)net153(dot)net>, pgsql-general(at)postgresql(dot)org
Subject: Re: Postgres architecture for multiple instances
Date: 2015-02-21 23:08:18
Message-ID: 54E90FE2.10009@aklaver.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On 02/21/2015 02:01 PM, Samuel Smith wrote:
> Howdy,
> I am looking for advice on migrating to postgres from another database
> system.
>
> Without going into too much detail, my company offers a software
> solution which we self host ourselves in our data center. We have gotten
> a green light from management to start using postgres as a free and
> cheaper database. Normally the application connects to a DB2 database.
>
> The current architecture has multiple DB2 databases installed on a
> single linux host (on top of vmware with 4 vcpus). Each DB2 instance
> runs as a different local linux user and only manages one database.
> Normally there are less than 5 DB2 instances per host.
>
> My question is, if I am going to replace DB2 as the database with
> Postgres, should I keep to this architecture of each customer
> application gets their own database instance? What I was thinking would
> be much more simpler would be to have multiple databases under one
> postgres instance (which is how most linux distros install postgres
> anyway). Having multiple databases under one instance seems to be a much
> easier way. Of course then the issue becomes if there is an issue with
> this single instance, multiple customers will be affected.

The issue that has come up in previous discussions on this subject is
that there is global meta data available to all users in a Postgres
cluster(instance), in particular the database users. So while it is
possible to restrict access to the database itself, it is more difficult
if not impossible to restrict access to information about the other
databases in the cluster.

>
> For the most part, I am completely on the fence about deciding either
> way. What does the postgres community recommend in this situation? All
> docs and books that I read seem to suggest that a postgres instance
> manages databases (plural!) and normally there would be only one
> postgres instance running per host.
>
> I am also interested in the best way forward with failover and high
> availability.

Currently the built in replication solutions work at the cluster level,
not at the database level. There are third party tools, Slony and
Bucardo come to mind, that can work at a more focused level.

>
> Looking forward to comments,
> Sam
>
>

--
Adrian Klaver
adrian(dot)klaver(at)aklaver(dot)com

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message David Steele 2015-02-21 23:25:45 Re: Postgres architecture for multiple instances
Previous Message Eric Hanson 2015-02-21 22:58:06 express composite type literal as text