repmgr: mandate explicit configuration for "daemon (start|stop)"

The initial implementation was designed to fall back to "manual"
start/stop of repmgrd if the "repmgrd_service_..._command" parameters
were not set.

However on reflection, this is too much of a potential footgun, so
we will mandate provision of these parameters.
This commit is contained in:
Ian Barwick
2019-01-30 10:57:06 +09:00
parent 9e7cb6d01c
commit b6264b77c4
4 changed files with 63 additions and 132 deletions

View File

@@ -23,13 +23,7 @@
This command starts the <application>repmgrd</application> daemon on the
local node.
</para>
<note>
<para>
If &repmgr; was installed from packages, it is <emphasis>essential</emphasis>
that <application>repmgrd</application> is configured to use the
package-provided service start/stop commands. See below for details.
</para>
</note>
</refsect1>
<refsect1>
@@ -41,10 +35,6 @@
if &repmgr; was installed from a package, this will be the service command defined by the
package. For more details see <link linkend="appendix-packages">Appendix: &repmgr; package details</link>.
</para>
<para>
<emphasis>If</emphasis> <varname>repmgrd_service_start_command</varname> is not set,
&repmgr; will default to executing <application>repmgrd</application> directly.
</para>
<important>
<para>
@@ -94,6 +84,16 @@
</listitem>
</varlistentry>
<varlistentry>
<term><option>ERR_BAD_CONFIG (1)</option></term>
<listitem>
<para>
<varname>repmgrd_service_start_command</varname> is not defined in
<filename>repmgr.conf</filename>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>ERR_REPMGRD_SERVICE (27)</option></term>
<listitem>
@@ -109,7 +109,7 @@
<refsect1>
<title>See also</title>
<para>
<xref linkend="repmgr-daemon-stop">
<xref linkend="repmgr-daemon-stop">, <xref linkend="repmgr-daemon-status">
</para>
</refsect1>

View File

@@ -23,13 +23,7 @@
This command stops the <application>repmgrd</application> daemon on the
local node.
</para>
<note>
<para>
If &repmgr; was installed from packages, it is <emphasis>essential</emphasis>
that <application>repmgrd</application> is configured to use the
package-provided service start/stop commands. See below for details.
</para>
</note>
</refsect1>
<refsect1>
@@ -41,10 +35,6 @@
if &repmgr; was installed from a package, this will be the service command defined by the
package. For more details see <link linkend="appendix-packages">Appendix: &repmgr; package details</link>.
</para>
<para>
<emphasis>If</emphasis> <varname>repmgrd_service_stop_command</varname> is not set,
&repmgr; will default to executing <application>repmgrd</application> directly.
</para>
<important>
<para>
@@ -94,6 +84,16 @@
</listitem>
</varlistentry>
<varlistentry>
<term><option>ERR_BAD_CONFIG (1)</option></term>
<listitem>
<para>
<varname>repmgrd_service_stop_command</varname> is not defined in
<filename>repmgr.conf</filename>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>ERR_REPMGRD_SERVICE (27)</option></term>
<listitem>
@@ -109,7 +109,7 @@
<refsect1>
<title>See also</title>
<para>
<xref linkend="repmgr-daemon-stop">
<xref linkend="repmgr-daemon-start">, <xref linkend="repmgr-daemon-status">
</para>
</refsect1>

View File

@@ -363,6 +363,20 @@
See appendix <xref linkend="appendix-packages"> for details of service commands
for different distributions.
</para>
<para>
The commands <link linkend="repmgr-daemon-start"><command>repmgr daemon start</command></link> and
<link linkend="repmgr-daemon-stop"><command>repmgr daemon stop</command></link> can be used
as convenience wrappers to start and stop <application>repmgrd</application>.
</para>
<important>
<para>
<link linkend="repmgr-daemon-start"><command>repmgr daemon start</command></link> and
<link linkend="repmgr-daemon-stop"><command>repmgr daemon stop</command></link> require
that the appropriate start/stop commands are configured as
<varname>repmgrd_service_start_command</varname> and <varname>repmgrd_service_stop_command</varname>
in <filename>repmgr.conf</filename>.
</para>
</important>
<para>
<application>repmgrd</application> can be started manually like this:
<programlisting>