.\" Automatically generated by Pod::Man 4.10 (Pod::Simple 3.35) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is >0, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{\ . if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{\ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "OCF_HEARTBEAT_PGSQLMS 7" .TH OCF_HEARTBEAT_PGSQLMS 7 "2019-01-31" "2.2.1" "OCF resource agents" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" ocf_heartbeat_pgsqlms \- A PostgreSQL multi\-state resource agent for Pacemaker .SH "SYNOPSIS" .IX Header "SYNOPSIS" \&\fBpgsqlms\fR [start | stop | monitor | promote | demote | notify | reload | methods | meta-data | validate\-all] .SH "DESCRIPTION" .IX Header "DESCRIPTION" Resource script for PostgreSQL in replication. It manages PostgreSQL servers using streaming replication as an \s-1HA\s0 resource. .SH "SUPPORTED PARAMETERS" .IX Header "SUPPORTED PARAMETERS" .IP "\fBpgdata\fR" 4 .IX Item "pgdata" Location of the \s-1PGDATA\s0 of your instance .Sp (optional, string, default \*(L"/var/lib/pgsql/data\*(R") .IP "\fBpghost\fR" 4 .IX Item "pghost" The socket directory or \s-1IP\s0 address to use to connect to the local instance .Sp (optional, string, default \*(L"/tmp\*(R") .IP "\fBpgport\fR" 4 .IX Item "pgport" The port to connect to the local instance .Sp (optional, integer, default \*(L"5432\*(R") .IP "\fBbindir\fR" 4 .IX Item "bindir" Location of the PostgreSQL binaries. .Sp (optional, string, default \*(L"/usr/bin\*(R") .IP "\fBsystem_user\fR" 4 .IX Item "system_user" The system owner of your instance's process .Sp (optional, string, default \*(L"postgres\*(R") .IP "\fBrecovery_template\fR" 4 .IX Item "recovery_template" The local template that will be copied as the \f(CW\*(C`PGDATA/recovery.conf\*(C'\fR file. This template file must exists on all node. .Sp (optional, string, default \*(L"$PGDATA/recovery.conf.pcmk\*(R") .IP "\fBmaxlag\fR" 4 .IX Item "maxlag" Maximum lag allowed on a standby before we set a negative master score on it. The calculation is based on the difference between the current xlog location on the master and the write location on the standby. .Sp (optional, integer, default \*(L"0\*(R" disables this feature) .IP "\fBdatadir\fR" 4 .IX Item "datadir" Path to the directory set in \f(CW\*(C`data_directory\*(C'\fR from your postgresql.conf file. This parameter has same default than PostgreSQL itself: the \f(CW\*(C`pgdata\*(C'\fR parameter value. .Sp Unless you have a special PostgreSQL setup and you understand this parameter, \&\fBignore it\fR .Sp (optional, string, default to the value of \f(CW\*(C`pgdata\*(C'\fR) .IP "\fBstart_opts\fR" 4 .IX Item "start_opts" Additional arguments given to the postgres process on startup. See \&\*(L"postgres \-\-help\*(R" for available options. Useful when the postgresql.conf file is not in the data directory (\s-1PGDATA\s0), eg.: .Sp .Vb 1 \& \-c config_file=/etc/postgresql/9.3/main/postgresql.conf .Ve .Sp (optinal, string, default "") .SH "SUPPORTED ACTIONS" .IX Header "SUPPORTED ACTIONS" This resource agent supports the following actions (operations): .IP "\fBstart\fR" 4 .IX Item "start" Starts the resource. Suggested minimum timeout: 60. .IP "\fBstop\fR" 4 .IX Item "stop" Stops the resource. Suggested minimum timeout: 60. .IP "\fBreload\fR" 4 .IX Item "reload" Suggested minimum timeout: 20. .IP "\fBpromote\fR" 4 .IX Item "promote" Promotes the resource to the Master role. Suggested minimum timeout: 30. .IP "\fBdemote\fR" 4 .IX Item "demote" Demotes the resource to the Slave role. Suggested minimum timeout: 120. .IP "\fBmonitor (Master role)\fR" 4 .IX Item "monitor (Master role)" Performs a detailed status check. Suggested minimum timeout: 10. Suggested interval: 15. .IP "\fBmonitor (Slave role)\fR" 4 .IX Item "monitor (Slave role)" Performs a detailed status check. Suggested minimum timeout: 10. Suggested interval: 16. .IP "\fBnotify\fR" 4 .IX Item "notify" Suggested minimum timeout: 60 .IP "\fBmeta-data\fR" 4 .IX Item "meta-data" Retrieves resource agent metadata (internal use only). Suggested minimum timeout: 5. .IP "\fBmethods\fR" 4 .IX Item "methods" Suggested minimum timeout: 5. .IP "\fBvalidate-all\fR" 4 .IX Item "validate-all" Performs a validation of the resource configuration. Suggested minimum timeout: 5. .SH "EXAMPLE CRM SHELL" .IX Header "EXAMPLE CRM SHELL" The following is an example configuration for a pgsqlms resource using the \&\fBcrm\fR\|(8) shell: .PP .Vb 10 \& primitive pgsqld pgsqlms \e \& params pgdata="/var/lib/postgresql/9.6/main" \e \& bindir="/usr/lib/postgresql/9.6/bin" \e \& pghost="/var/run/postgresql" \e \& recovery_template="/etc/postgresql/9.6/main/recovery.conf.pcmk" \e \& start_opts="\-c config_file=/etc/postgresql/9.6/main/postgresql.conf" \e \& op start timeout=60s \e \& op stop timeout=60s \e \& op promote timeout=30s \e \& op demote timeout=120s \e \& op monitor interval=15s timeout=10s role="Master" \e \& op monitor interval=16s timeout=10s role="Slave" \e \& op notify timeout=60s \& \& ms pgsql\-ha pgsqld meta notify=true .Ve .SH "EXAMPLE PCS" .IX Header "EXAMPLE PCS" The following is an example configuration for a pgsqlms resource using \fBpcs\fR\|(8): .PP .Vb 9 \& pcs resource create pgsqld ocf:heartbeat:pgsqlms \e \& bindir=/usr/pgsql\-9.6/bin pgdata=/var/lib/pgsql/9.6/data \e \& op start timeout=60s \e \& op stop timeout=60s \e \& op promote timeout=30s \e \& op demote timeout=120s \e \& op monitor interval=15s timeout=10s role="Master" \e \& op monitor interval=16s timeout=10s role="Slave" \e \& op notify timeout=60s \-\-master notify=true .Ve .SH "SEE ALSO" .IX Header "SEE ALSO" http://clusterlabs.org/ .SH "AUTHOR" .IX Header "AUTHOR" Jehan-Guillaume de Rorthais and Mael Rimbault.