Skip to main content

Add OBServer nodes to zones

This topic describes how to scale out a cluster by adding OBServer nodes to zones in the cluster.

Prerequisites

Before you add an OBServer node to a zone, make sure that the following conditions are met:

  • The server has sufficient resources for the new OBServer node.
  • The OceanBase cluster is in the Running state.

Procedure

Assume that the current cluster has three zones, zone1, zone2, and zone3, each zone contains one OBServer node, and you want to add one OBServer node to each zone so that each zone contains two OBServer nodes. Perform the following steps:

  1. Open the obcluster.yaml configuration file and change the value of the replica parameter of each zone from 1 to 2.

    # For example, assume that an OceanBase cluster has three zones.
    topology:
    - zone: zone1
    replica: 1
    - zone: zone2
    replica: 1
    - zone: zone3
    replica: 1

    # Add an OBServer node to each zone.
    topology:
    - zone: zone1
    replica: 2
    - zone: zone2
    replica: 2
    - zone: zone3
    replica: 2
  2. Run the following command for the modification to take effect:

    kubectl apply -f obcluster.yaml
  3. Query the status of custom resources in the OceanBase cluster to check whether the operation succeeds.

Run the following command to query the status of custom resources in the OceanBase cluster.

kubectl get obclusters.oceanbase.oceanbase.com test -n oceanbase -o yaml

# obcluster desired output, only displays status here
status:
image: oceanbase/oceanbase-cloud-native:4.2.0.0-101000032023091319
obzones:
- status: running
zone: obcluster-1-zone1
- status: running
zone: obcluster-1-zone2
- status: running
zone: obcluster-1-zone3
parameters: []
status: running

Run the following command to check whether the number of OBServer nodes is correct and whether they are all in the Running state:

kubectl get observers.oceanbase.oceanbase.com -n oceanbase

# observer desired output, only displays status here
oceanbase obcluster-1-zone1-7b0e9f7e7675 10.42.0.241 running 7h48m
oceanbase obcluster-1-zone2-67f3d1fe0b40 10.42.0.251 running 28m
oceanbase obcluster-1-zone3-914ef208ac46 10.42.0.252 running 28m
oceanbase obcluster-1-zone2-2336549ba883 10.42.0.19 running 3m15s
oceanbase obcluster-1-zone3-d7011a909e2b 10.42.0.26 running 3m10s
oceanbase obcluster-1-zone1-0f5d712adb19 10.42.0.27 running 3m10s