Skip to main content
Version 3.1.1

High Availability Agent Configuration

Check out the necessary commands to configure the High Availability Agent in the PostgreSQL Ecosystem below:

note

In a high availability environment, it is recommended to use dedicated servers for each component.

Command Syntax
Terminal input
    pgsmart ha agent config [Flags]

Flags:

  • -h, --help. => Help
Non-Interactive Configuration

Non-interactive execution is disabled for this operation.

Interactive Configuration
  1. Select the PgSmart Agent (or Register new Agent).

  2. Enter the Name of the High Availability Environment.

  3. Identify the Server.

Configuring High Availability Agent connection data:

  1. Identify the Network Interface to be used internally by the High Availability Agent.

  2. Identify the Port to be used by the High Availability Agent.

Repository Connection Data Configuration

  1. Confirm if the Distributed Configuration Repository DCS has already been configured (prerequisite):

    3.1. Enter the IP address of the Distributed Configuration Repository for Client Requests.

    3.2. Enter the port of the Distributed Configuration Repository for requests.

PostgreSQL Instance Connection Data Configuration

  1. Enter the Instance data:

    4.1. Enter the Network Interface for monitoring the PostgreSQL Instance. So the agent knows where the PostgreSQL instance is located and can monitor it.

    4.2. Enter the Network Interface for access in the PostgreSQL instance.

    4.3. Confirm the existence of the PostgreSQL instance.

    4.4. Select the Data Directory of the PostgreSQL instance.

    4.5. Enter the Transactional Logs Directory of the instance WALDIR.

    4.6. Enter the Password File Directory (PGPASS).

    4.7. Confirm the existence of a MASTER PostgreSQL instance in the high availability environment.

Instance User Configuration

  1. Enter the User data:

    5.1. Enter the Replication User Name.

    5.2. Enter the Replication User Password.

    5.3. Confirm if the replication user (replication role) already exists in the PostgreSQL instance.

    5.4. Enter the Name of the High Availability Agent User.

    5.5. Enter the Password of the high availability Agent User.

    5.6. Confirm if the high availability agent (SUPERUSER Role) already exists in the PostgreSQL instance.

Instance Operation Rules Configuration

  1. Enter the operation Rules:

    6.1. Confirm if the PostgreSQL instance can be promoted to MASTER in a failover.

    6.2. Confirm if the PostgreSQL instance can be cloned to automatically recreate other instances (requires template(s)).

    6.3. Confirm if the instance allows synchronous replication.

PostgreSQL Instance Initialization Template Configuration

  1. If instance cloning is confirmed, PgSmart will proceed to the template configuration:

    7.1. Enter the Standard Character Encoding (ENCODE).

    7.2. Enter the Standard Rregional Representation for dates and monetary values (LOCALE).

    7.3. Confirm the enablement of Checksum for data pages.

    7.4. Select the Network Interface for Data Replication.

    7.5. Confirm if you wish to inform other PostgreSQL server(s) that make up or will make up the High Availability Environment.

    7.5.1. If affirmative, inform the IP address of the server(s).

    7.6. Confirm if you wish to inform the high availability environment's proxy server.

    7.6.1. If affirmative, inform the IP address of the server(s).

Template Access Rules Configuration:

  1. Confirm if you wish to include access rules for applications in the initialization template. If affirmative: 8.1. Select the Type of Access Rule.

    8.2. Enter the Database(s).

    8.3. Enter the User(s) or Group(s).

    8.4. Enter the Hostname or IP/CIDR with authorized access.

    8.5. Select the Authentication Method.

Template User Configuration:

  1. Confirm if you wish to include users in the initialization template. If affirmative: 9.1. Enter the User Name.

    9.2. Enter the User Password.

    9.3. Select the User Privileges. [createrole (user creation) or createdb(database creation)]

Service Activation

  1. Active the service:

    10.1. Confirm to save the High Availability Agent configurations.

    10.2. Confirm to create the replicator user in the PostgreSQL instance.

    10.3. Confirm to create the patroni user in the PostgreSQL instance.

    10.4. Confirm to set the necessary access rules for the High Availability Environment in the PostgreSQL instance.

    10.5. Confirm the RELOAD of the instance to enact the access rule.

    10.6. Confirm the startup of the High Availability Agent service:

    Figure 1 - High Availability - Agent - add
    Figure 1 - High Availability - Agent - add