Skip to main content

Create and manage instance groups

Create PostgreSQL instance group

A PostgreSQL instance group is an object that manages the lifecycle of instances and backups. It includes various statuses such as operational and terminated, which users can monitor and manage.

To create an instance group in the PostgreSQL service, follow these steps:

info
  • If the creation of an instance group fails due to unexpected reasons such as network errors or resource shortages, you can check the details in the Cloud Trail service.
  • Even if you expand the volume after creating an instance group, the maximum IOPS remains fixed at the initially specified value. Set an appropriate volume size for stable performance.
  1. Navigate to the KakaoCloud Console > Data Store > PostgreSQL menu.

  2. Click the Create instance group button.

  3. Enter the required information and click the [Create] button.

    ItemCategoryDescription
    Basic settingsInstance group nameName of the PostgreSQL instance group
    - Must be unique within the same project
    - Example: PostgreSQL-instance-01
    Description (optional)Additional description for the instance group (up to 100 characters)
    Instance availabilityHigh availabilityCreate a primary instance and multiple standby instances
    - Single AZ or Multi-AZ
    SingleCreate only a single primary instance
    - Single AZ only
    PostgreSQL settingsEngine versionAutomatically selects the PostgreSQL database version
    - Version 14.14 is available
    Primary portPort for communication with the PostgreSQL primary instance, configurable between 1024–65535 (default: 5432)
    Standby portPort for communication with the PostgreSQL standby instance, required if high availability is selected (default: 5433)
    IDUser account ID for the PostgreSQL database
    - Example: admin
    * Reserved account names (root, postgres, replication, etc.) cannot be used
    PasswordInitial password for the user account
    - Format: 8–16 characters, without spaces or special characters like /, ', ", @
    Instance typeChoose the instance type to configure database computing resources.
    - See Instance types for details
    Default storageSSDConfigure the volume type and size for the database.
    - Current support: SSD only
    - Size: 100 GB–16,384 GB
    Log storageSSDConfigure the storage for database logs.
    - Current support: SSD only
    - Size: 100 GB–16,384 GB
    Network settingsMulti-AZ optionsSpecify subnets and the number of instances to create in each AZ for high availability.
    VPCSelect the network where the PostgreSQL database will be deployed.
    Subnet and instance countSpecify the subnets for primary and standby instances and the number of instances.
    - Maximum 6 instances per group.
    - At least two instances recommended for redundancy.
    Security groupCreate a new security group or select an existing one for the instance group.
info

For more details about instance groups, see Instance groups.

User accounts in instance groups

When creating a PostgreSQL instance group, you can configure a user account with a specified ID and password.
This account will have Admin privileges, granting access to resources upon authentication.

info
  • User accounts cannot be created with IDs reserved for administrative purposes (root, postgres, replication, rewind, orafce_set_umask, plprofiler).
  • Deleting a replication account may cause high availability mode to malfunction.
RolePrivileges
User accountCreate role, Create DB, Bypass RLS, Password valid until infinity

Connect PostgreSQL instance group

To connect instances to a PostgreSQL instance group, use the following steps.
After creating the instance group and configuring the instances, use a PostgreSQL Client to connect the instances to the PostgreSQL instance group.

info

If the primary instance changes due to automatic or manual failover or a restart, internal connection information will be updated, possibly causing brief disruptions.

Prerequisites

Ensure that the virtual machine (VM) instance uses the same network as the PostgreSQL instance group and has access to its endpoint.
Grant access to user-defined ports (1024–65535) or PostgreSQL default ports (5432 for Primary, 5433 for Standby) in the security group.

Connect instances

  1. Prepare a virtual machine with a PostgreSQL Client installed.
    Refer to Create and connect VM instance for setup instructions.

  2. Navigate to the KakaoCloud Console > Data Store > PostgreSQL menu.

  3. Select the PostgreSQL instance group to connect from the Instance Group menu.

  4. In the Details tab, retrieve the Endpoint and user account ID. Copy this information for use in PostgreSQL commands.

  5. Execute the PostgreSQL connection command on the VM to connect the instance to the PostgreSQL instance group.

    Connection method 1
    $ PGPASSWORD={USER_PASSWORD} psql -h {ENDPOINT} -U {USER_ID} -d {DATABASE} -p {PORT}
    PostgreSQL instance connection method 2
    $ psql postgres://{USER_ID}:{USER_PASSWORD}@{ENDPOINT}:{PORT}/{DATABASE}
    ItemDescription
    {USER_ID}Database user ID
    - Administrator account ID used to connect to the PostgreSQL instance.
    {USER_PASSWORD}Password for the administrator account connecting to the PostgreSQL instance.
    - Set during PostgreSQL creation.
    {ENDPOINT}Endpoint information obtained from the Details tab.
    - The endpoint of the PostgreSQL instance.
    {DATABASE}Name of the database to connect to.
    - Default: postgres for KakaoCloud PostgreSQL.
    - For custom databases, input the specific database name.
    {PORT}Port number specified during instance group creation.
    - Default values: Primary 5432, Standby 5433.

Manage instance groups

The following explains how to manage running instances and instance groups in the PostgreSQL service.

View PostgreSQL instance group list

You can check the list of currently running PostgreSQL instance groups.

  1. Navigate to the KakaoCloud Console > Data Store > PostgreSQL menu.

  2. View the list of instance groups in the Instance Group menu.

    FieldDescription
    Instance group nameName of the PostgreSQL instance group entered during creation.
    - Click to view detailed information.
    StatusCurrent status of the PostgreSQL instance group.
    - See Instance groups for details.
    Engine versionPostgreSQL database version selected during creation.
    Instance typeInstance type selected during creation.
    AvailabilityAvailability option selected during creation.
    Multi AZIndicates whether Multi-AZ is enabled.
    Created atCreation date and time of the PostgreSQL instance group.
    CreatorUser who initially created the PostgreSQL instance.
    [More] iconExpand volume: Expand volumes (base, log storage).
    Delete: Release resources and delete backups.
    Manual failover: Perform failover for high availability.
    Create backup: Create a backup for the instance group.

View PostgreSQL instance group details

You can view detailed information about a PostgreSQL instance group.

  1. Navigate to the Data Store > PostgreSQL menu in the KakaoCloud Console.
  2. Select the PostgreSQL instance group from the Instance Group menu to view details.
  3. Review the detailed information about the selected PostgreSQL instance group.

Expand PostgreSQL instance group volumes

Expand the volumes for PostgreSQL instance groups. Both base and log storage can be expanded to a maximum of 16 TB (16,384 GB).

info

Volume expansion increases disk capacity but does not increase maximum IOPS. IOPS scaling will be supported in future updates.

  1. Navigate to the Data Store > PostgreSQL menu in the KakaoCloud Console.
  2. Select the [More] icon > Expand volume for the desired instance group.
  3. Enter the size for the base and log storage to be expanded and click the [OK] button.

Delete PostgreSQL instance groups

You can delete PostgreSQL instance groups that are no longer needed.
When deleting a PostgreSQL instance group, all instances are stopped, and the resources are fully released. Deleted instance groups will not incur further charges.

Warning

Deleted instance group resources and backups are permanently released and cannot be recovered.

  1. Navigate to the Data Store > PostgreSQL menu in the KakaoCloud Console.
  2. Select the [More] icon > Delete for the PostgreSQL instance group to be deleted.
  3. Enter the required details in the popup and click the [Delete] button.