{
  "id": 18419695,
  "title": "GBase Database(GBase 8c): How to Build a Three-Node HA Cluster with gbase.yml",
  "url": "https://urgent.news/2026/11/06/gbase-database-gbase-8c-how-to-build-a-three-node-ha-cluster-with",
  "topic": "tech",
  "section": "Tech",
  "published": "2026-11-06T02:03:03.000Z",
  "source": {
    "name": "Dev.to",
    "slug": "dev-to",
    "url": "https://dev.to/mmllllzcn/gbase-databasegbase-8c-how-to-build-a-three-node-ha-cluster-with-gbaseyml-g7m"
  },
  "original_language": "en",
  "account": "Creating a three-node high-availability (HA) cluster for GBase Database (GBase 8c) begins with understanding the gbase.yml configuration file. This guide breaks down the configuration process for each component of the deployment.\n\nFirst, start with the env section of the configuration. This section specifies key parameters such as package location, installation directory, software version, installation user, and SSH settings. Ensure the `pkg_path` points to the correct GBase Database installation package, the `prefix` is an empty directory owned by the `gbase` user, and the `version` matches the package version you are using. The `multiple-nodes` setting indicates a distributed deployment mode, not the number of physical hosts.\n\nNext, focus on the control plane configuration, which includes gha_server and DCS components. For a single-HA-group deployment, define two gha_server instances for management-service redundancy and three DCS nodes to ensure an odd-sized quorum, allowing the cluster to maintain a majority even if one node fails. Confirm that all DCS nodes can communicate with each other and that their configured addresses align with the actual control-plane network addresses.\n\nThe GTM (Global Transaction Manager) handles transaction management for the database. This guide sets up one primary and one standby instance of GTM. Note that the `host` addresses represent the data-plane communication addresses, while `agent_host` addresses are used for management communication. Ensure that both the data-plane and control-plane addresses are reachable through their respective networks. Additionally, GTM instances use different `agent_port` values despite having the same database service port to facilitate proper configurations on servers with dual-NIC setups.\n\nThe coordinator layer provides SQL entry points for client connections. In a three-node single-HA-group deployment, three coordinator instances are configured. Unlike GTM, the coordinator nodes are configured as primary entry points rather than using a primary/standby role arrangement. Each coordinator instance is defined with specific parameters such as `host`, `agent_host`, `role`, `port`, `proxy_port`, `agent_port`, and `az`. Ensure all three coordinator entries are completed with the actual host and agent_host addresses according to the official single-HA-group deployment example.\n\nThe final and critical part of the configuration is the configuration of the data-node group and replicas. This section defines a DN (Data Node) group containing three instances: one primary and two standby replicas. Each instance is assigned specific roles, ports, proxy ports, agent ports, and availability zones (az). The primary node (dn1_1) handles main data operations, while dn1_2 and dn1_3 are standby replicas, each placed in different availability zones (az1 and az2) to enhance fault tolerance. If a failure occurs in one zone, the remaining nodes can continue operations, provided the replication state is healthy. However, losing an entire availability zone could impact the majority requirement, so proper zone placement is crucial based on the production environment's failure domains.\n\nBefore proceeding with the installation, thoroughly review the entire gbase.yml configuration. This review ensures that all components are correctly configured and aligned with the intended production environment's requirements.",
  "summary": "Writing a gbase.yml configuration from scratch is easier when you understand why each section exists. Instead of copying a template and changing IP addresses, this guide walks through the configuration of a three-node, single-HA-group deployment for GBase Database(GBase 8c). The example covers the environment, control plane, GTM, coordinators, and data nodes, explaining the purpose of each…",
  "key_points": [],
  "editors_take": "Utilizing the gbase.yml configuration file to distribute components across multiple availability zones transforms the database into a fault-tolerant system capable of maintaining operations despite individual node or zone failures.",
  "illustration": null,
  "coverage": {
    "outlets": 1,
    "also_reported_by": []
  },
  "ai_generated": true,
  "disclaimer": "Summaries, key points and the editor’s take are written by software from other outlets’ reporting and may contain errors — always check the linked original."
}