Re: Installing repmgr alongside PostgreSQL installed via EnterpriseDB installer instead of repositories?

From: Adrian Klaver <adrian(dot)klaver(at)aklaver(dot)com>
To: Martin Goodson <kaemaril(at)googlemail(dot)com>, pgsql-general(at)postgresql(dot)org
Subject: Re: Installing repmgr alongside PostgreSQL installed via EnterpriseDB installer instead of repositories?
Date: 2017-05-11 14:17:54
Message-ID: 9c953bc1-a93f-9047-2c52-a35d7f58bfa7@aklaver.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On 05/11/2017 06:58 AM, Martin Goodson wrote:
> Hello. First time poster, so please be gentle :)
>
> I have a PostgreSQL 9.6 database cluster running on a standalone Redhat
> 7.2 (Maipo) server.
>
> This may seem like a silly question. It probably *is* a silly question,
> so apologies in advance.
>
> PostgreSQL was installed using the "EDB Postgres Standard" installer
> from EnterpriseDB -
> https://www.enterprisedb.com/software-downloads-postgres - and installed
> to a specific location - /db_<dbname>. No repositories, nothing in a
> 'standard' place.
>
> Output of pg_config is as follows:
>
> BINDIR = /db_dbname/app/postgres/9.6.2-3/bin
> DOCDIR = /db_dbname/app/postgres/9.6.2-3/doc/postgresql
> HTMLDIR = /db_dbname/app/postgres/9.6.2-3/doc/postgresql
> INCLUDEDIR = /db_dbname/app/postgres/9.6.2-3/include
> PKGINCLUDEDIR = /db_dbname/app/postgres/9.6.2-3/include/postgresql
> INCLUDEDIR-SERVER =
> /db_dbname/app/postgres/9.6.2-3/include/postgresql/server
> LIBDIR = /db_dbname/app/postgres/9.6.2-3/lib
> PKGLIBDIR = /db_dbname/app/postgres/9.6.2-3/lib/postgresql
> LOCALEDIR = /db_dbname/app/postgres/9.6.2-3/share/locale
> MANDIR = /db_dbname/app/postgres/9.6.2-3/share/man
> SHAREDIR = /db_dbname/app/postgres/9.6.2-3/share/postgresql
> SYSCONFDIR = /db_dbname/app/postgres/9.6.2-3/etc/postgresql
> PGXS =
> /db_dbname/app/postgres/9.6.2-3/lib/postgresql/pgxs/src/makefiles/pgxs.mk
> CONFIGURE = '--enable-debug' '--with-libs=/opt/local/Current/lib'
> '--with-includes=/opt/local/Current/include/libxml2:/opt/local/Current/include'
> '--prefix=/mnt/hgfs/pginstaller.auto/server/staging/linux-x64'
> '--with-ldap' '--with-openssl' '--with-perl' '--with-python'
> '--with-tcl'
> '--with-tclconfig=/opt/local/EnterpriseDB/LanguagePack/9.6/Tcl-8.5/lib'
> '--with-pam' '--enable-thread-safety' '--with-libxml' '--with-ossp-uuid'
> '--docdir=/mnt/hgfs/pginstaller.auto/server/staging/linux-x64/doc/postgresql'
> '--with-libxslt' '--with-libedit-preferred' '--with-gssapi'
> 'LD_LIBRARY_PATH=/opt/local/Current/lib' 'CFLAGS=-O2 -DMAP_HUGETLB=0x40000'
> CC = gcc
> CPPFLAGS = -DFRONTEND -D_GNU_SOURCE -I/opt/local/Current/include/libxml2
> -I/opt/local/Current/include
> CFLAGS = -Wall -Wmissing-prototypes -Wpointer-arith
> -Wdeclaration-after-statement -Wendif-labels -Wmissing-format-attribute
> -Wformat-security -fno-strict-aliasing -fwrapv -g -O2 -DMAP_HUGETLB=0x40000
> CFLAGS_SL = -fpic
> LDFLAGS = -L../../src/common -L/opt/local/Current/lib -Wl,--as-needed
> -Wl,-rpath,'/mnt/hgfs/pginstaller.auto/server/staging/linux-x64/lib',--enable-new-dtags
>
> LDFLAGS_EX =
> LDFLAGS_SL =
> LIBS = -lpgcommon -lpgport -lxslt -lxml2 -lpam -lssl -lcrypto
> -lgssapi_krb5 -lz -ledit -lrt -lcrypt -ldl -lm
> VERSION = PostgreSQL 9.6.2
>
> I have now been tasked with putting repmgr onto this box and converting
> it from a standalone to a multiple node setup (I have two additional
> servers lurking in the background ready for use :) ).
>
> Numerous articles on repmgr all seem to suggest it should be a
> relatively simply operation once the software is in place. Register the
> master. Clone standbys. Ought to be *relatively* straight-forward.
>
> Unfortunately, I'm having problems at the first hurdle - putting the
> software in place. We initially tried installing from the postgres
> repository rpm - which insisted, of course, on installing PostgreSQL as
> well as repmgr in /usr/pgsql-9.6. Obviously not the right place for it
> given we're running our binaries from /db_dbname/app/postgres/9.6.2-3/bin
>
> Is there a simple way to use repmgr from the package, perhaps by
> copying/linking files from that location to ours? (e.g. copying/linking
> some files from lib, bin, contrib, etc).
>
> Or am I looking at having to compile the source? I'm told it should be
> 'simple' but I've not compiled much software from scratch on linux, so
> I'm a bit nervous about the prospect. Any advice would be welcome :)
>
> Basically, am I going to be stuck compiling from source or is there a
> way around this?

Not sure how deep you are into your present situation. The only thing I
can think of is to install Postgres using the PGDG repos and then
migrating the data from the EDB install to the RPM install. You would
probably have to change the port numbers, at least temporarily, while
you do the migration. This way you could use the packaging system
without resorting to work-arounds.

>
> Many thanks.
>
> Martin.

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

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Igor Korot 2017-05-11 14:26:30 Re:
Previous Message Martin Goodson 2017-05-11 13:58:52 Installing repmgr alongside PostgreSQL installed via EnterpriseDB installer instead of repositories?