On 07/08/13 15:57, Jeff Frost wrote:
On Jul 8, 2013, at 12:59 PM, Andreas Kurz <[email protected]> wrote:
On 2013-07-08 19:40, Jeff Frost wrote:
We're testing out the pgsql master slave streaming replication resource agent
that's found here:
https://github.com/ClusterLabs/resource-agents/blob/master/heartbeat/pgsql
and using the example 2-node configuration found here
https://github.com/t-matsuo/resource-agents/wiki/Resource-Agent-for-PostgreSQL-9.1-streaming-replication
as a template, we came up with the following configuration:
node node1
node node2
primitive pgsql ocf:heartbeat:pgsql \
params pgctl="/usr/pgsql-9.2/bin/pg_ctl" psql="/usr/pgsql-9.2/bin/psql" pgdata="/var/lib/pgsql/9.2/data/" start_opt="-p 5432"
rep_mode="async" node_list="node1 node2" repuser="replicauser" restore_command="rsync -aq /var/lib/pgsql/wal_archive/%f %p"
master_ip="192.168.253.104" stop_escalate="0" \
op start interval="0s" role="Master" timeout="60s" on-fail="block"
Looks like you are missing the monitor operations ... as described in
the example you are referring. In the monitoring operation such
master-slave agents recalculate their master-score and refresh e.g. in
this RA various node-attributes.
And you should follow the described procedures to correctly start-up the
cluster.
Interesting.
When I set it up, I did it with pcs like so:
pcs -f pgsql_cfg resource create pgsql ocf:heartbeat:pgsql \
params \
pgctl="/usr/pgsql-9.2/bin/pg_ctl" \
psql="/usr/pgsql-9.2/bin/psql" \
pgdata="/var/lib/pgsql/9.2/data/" \
start_opt="-p 5432" \
rep_mode="async" \
node_list="node1 node2" \
repuser="replicauser" \
restore_command="rsync -aq /var/lib/pgsql/wal_archive/%f %p" \
primary_conninfo_opt="keepalives_idle=60 keepalives_interval=5
keepalives_count=5" \
master_ip="192.168.253.104" \
stop_escalate="0" \
op start timeout="60s" interval="0s" on-fail="restart" \
op monitor timeout="60s" interval="10s" on-fail="restart" \
op monitor timeout="60s" interval="9s" on-fail="restart" role="Master" \
op promote timeout="60s" interval="0s" on-fail="restart" \
op demote timeout="60s" interval="0s" on-fail="stop" \
op stop timeout="60s" interval="0s" on-fail="block" \
op notify timeout="60s" interval="0s"
But when I pull the info out with crm, it appears as in my original post:
primitive pgsql ocf:heartbeat:pgsql \
params pgctl="/usr/pgsql-9.2/bin/pg_ctl" psql="/usr/pgsql-9.2/bin/psql" pgdata="/var/lib/pgsql/9.2/data/" start_opt="-p 5432"
rep_mode="async" node_list="node1 node2" repuser="replicauser" restore_command="rsync -aq /var/lib/pgsql/wal_archive/%f %p"
master_ip="192.168.253.104" stop_escalate="0" \
op start interval="0s" role="Master" timeout="60s" on-fail="block"
and definitely missing the monitor operations as you point out.
And sure enough, using crm to configure it causes it work as expected. I guess
that's what I get for trying to use pcs.
Any idea how it should be done with pcs?
Do you know which version of pcs you're using? On the latest version I tested
your command line and it created all of the operations.
Thanks!
Chris
_______________________________________________
Linux-HA mailing list
[email protected]
http://lists.linux-ha.org/mailman/listinfo/linux-ha
See also: http://linux-ha.org/ReportingProblems
_______________________________________________
Linux-HA mailing list
[email protected]
http://lists.linux-ha.org/mailman/listinfo/linux-ha
See also: http://linux-ha.org/ReportingProblems