Top
Enterprise Postgres 17 Cluster Operation Guide(Database Multiplexing)

2.3.1 Configuring the Arbitration Server

This section explains how to set up database multiplexing mode on the arbitration server.

In database multiplexing mode, the files that are required for operations are managed in the Mirroring Controller arbitration process management directory.

There is one Mirroring Controller arbitration process management directory for each arbitration process.

Point

The arbitration process for each database multiplexing system can be started on a single arbitration server.

See

  • Refer to the Reference for information on the mc_arb command.

  • Refer to "Appendix A Parameters" for information on the parameters to be edited for the setup.

Perform the following procedure:

  1. On the arbitration server, log in as any operating system user who starts and stops the arbitration process.

  2. Configure the environment variables.

    Set the following environment variables:

    • PATH

      Add the installation directory "/bin".

    • MANPATH

      Add the installation directory "/share/man".

    Example

    The following example configures environment variables when the installation directory is "/opt/fsepv<x>assistant".

    Note that "<x>" indicates the product version.

    sh, bash

    $ PATH=/opt/fsepv<x>assistant/bin:$PATH ; export PATH
    $ MANPATH=/opt/fsepv<x>assistant/share/man:$MANPATH ; export MANPATH

    csh, tcsh

    $ setenv PATH /opt/fsepv<x>assistant/bin:$PATH
    $ setenv MANPATH /opt/fsepv<x>assistant/share/man:$MANPATH
  3. Create the Mirroring Controller arbitration process management directory that will store the files required by the arbitration server.

    Use ASCII characters in the Mirroring Controller arbitration process management directory.

  4. In the network configuration file (network.conf), define the Mirroring Controller network configuration that will be managed by the Mirroring Controller arbitration process.

    Create network.conf in the Mirroring Controller arbitration process management directory, based on the sample file. For network.conf, set read and write permissions only for the operating system user who starts and stops the arbitration process in step 1.

    If users other than this are granted access permissions, the mc_arb command will not work. Accordingly, users other than the operating system user who starts and stops the arbitration process in step 1 are prevented from operating the Mirroring Controller arbitration process.

    Sample file
    /installDir/share/mcarb_network.conf.sample

    In network.conf, specify the IP address or host name and port number of the primary server and standby server, and define the Mirroring Controller network configuration that will be managed by the Mirroring Controller arbitration process.

    Refer to "A.3 Network Configuration File" for details.

    A definition example is shown below.

    Example)
    The IDs of the servers are set to "server1" and "server2", and their port numbers are set to "27541".
    server1 192.0.3.100 27541
    server2 192.0.3.110 27541
  5. In the arbitration configuration file (arbitration.conf), define the information related to control of the Mirroring Controller arbitration process.

    Create arbitration.conf in the Mirroring Controller arbitration process management directory, based on the sample file. For arbitration.conf, set read and write permissions only for the operating system user who starts and stops the arbitration process in step 1. If users other than this are granted access permissions, the mc_arb command will not work.

    Sample file
    /installDir/share/mcarb_arbitration.conf.sample

    Set the parameters shown in the table below in arbitration.conf.

    Table 2.1 Parameters

    Parameter

    Content specified

    Remarks

    port

    Port number of the Mirroring Controller arbitration process

    The port number must be 0 to 65535. Ensure that the port number does not conflict with other software. Do not specify an ephemeral port that may temporarily be assigned by another program.

    my_address

    'ipAddrOrHostNameThatAcceptsConnectionFromMirroringControllerProcessOnDbServer'

    [Setting example]

    my_address = '192.0.3.120'

    IPv4 and IPv6 addresses can be specified.

    Specify the IP address, enclosed in single quotation marks (').

    syslog_ident

    'programName'

    Specify using single quotation marks (') to enclose the program name used to identify the Mirroring Controller arbitration process message in the system log. Use ASCII characters excluding spaces to specify this parameter.

    The default is 'MirroringControllerArbiter'.

    fencing_command

    'fencingCmdFilePath'

    [Setting example]

    fencing_command = '/arbiter/fencing_dir/execute_fencing.sh'

    Specify the full path of the fencing command that fences a database server where it is determined that an error has occurred.

    Enclose the path in single quotation marks (').

    Specify the path using less than 1024 bytes.

    fencing_command_timeout

    Timeout for fencing command (seconds)

    If the command does not respond within the specified number of seconds, it is determined that fencing has failed and a signal (SIGTERM) is sent to the fencing command execution process.

    Specify a value between 1 and 2147483647.

    The default is 20 seconds.

    Information

    Refer to "A.4.2 Arbitration Configuration File" for information on the parameters and for other parameters.