DEV Community

Michael
Michael

Posted on • Originally published at gbase8.cn

Scaling the GBase 8a gcware Management Cluster: Adding and Removing Nodes

The gcware component in GBase 8a is responsible for cluster state management and consistency arbitration. It's typically deployed on an odd number of nodes (3 or 5). While the number of management nodes rarely changes during a cluster's lifetime, there are scenarios — migrating from a trial to a full production environment, significant data growth, online hardware replacement, or cluster downsizing — that require expanding or shrinking the gcware cluster. This article demonstrates the commands and procedures for scaling gcware in your gbase database environment.

Choosing the Number of Management Nodes

Management nodes do not store user data; they handle coordination. Always deploy an odd number (3 or 5) to maintain quorum. For small clusters (fewer than 20 nodes with 1+1 replica), 3 gcware nodes suffice. For larger clusters (over 50 nodes or 3‑replica setups), 5 nodes are recommended.

When to Scale gcware

  • Moving from a pilot (1–2 nodes) to a full production deployment.
  • Significant business growth requiring more management capacity.
  • Replacing aging hardware: add new gcware nodes, let data naturally redistribute, then decommission the old ones.
  • Reducing cluster footprint when business shrinks.

Version Restrictions

Not all GBase 8a versions support gcware scaling. Check with GBASE support whether your version allows it, or request a version that does. Manual workarounds are not recommended for production.

Expanding gcware (Single Node → Three Nodes)

Initial state: a single gcware node at 10.0.2.151. We'll add 10.0.2.152 and 10.0.2.153.

Steps:

  1. Stop all management, coordinator, and data node services.
  2. Navigate to the gcware/gcware_server directory under the installation prefix and run:
./gcserver.py -e \
    --prefix=/opt/gbase \
    --host=10.0.2.152,10.0.2.153 \
    --dbaPwd=111111
Enter fullscreen mode Exit fullscreen mode

After confirmation, the script automatically expands the cluster and restarts the services.

Result: gcadmin now shows three gcware nodes, all with status OPEN.

Shrinking gcware (Three Nodes → Two Nodes)

Important: The shrink command must not be executed on the node being removed. Run it from a remaining node, using the -u flag.

python gcserver.py -u \
    --prefix=/opt/gbase \
    --host=10.0.2.151 \
    --dbaPwd=111111
Enter fullscreen mode Exit fullscreen mode

After confirmation, the script removes the specified node.

Result: gcadmin shows the gcware cluster reduced to two nodes, still functional.

Summary

Scaling the gcware management cluster is rare but can be a necessity. GBase 8a provides scripted, automated operations in select versions, eliminating the need for error‑prone manual steps. If your environment requires this capability, verify version support and plan the change window accordingly, keeping your gbase database cluster stable throughout the process.

Top comments (0)