Adding nodes to a data domain

To add Dgraph nodes to a running data domain, use the endeca-cmd rescale-dd command, or the rescaleDataDomain operation of the Manage Web Service.

Each data domain cluster consists of zero or one leader node and zero or more follower nodes. When you create a data domain, you use the data domain profile that determines the total number of Dgraph nodes, whether the data domain is read-only (and thus does not have a leader node), and the number of follower nodes.

You can add Dgraph follower nodes to a data domain that is either enabled or disabled. Adding follower nodes does not affect the Endeca Server query processing for the data domain hosted on these nodes.

When you add follower nodes, this changes the profile of the specific data domain. However, the domain profile that was used to initially create this data domain does not change.

Before you add follower nodes:
  • Verify that the Endeca Server cluster contains a sufficient number of Endeca Server nodes (Remember that each data domain node must be hosted on a separate Endeca Server node). Issue the endeca-cmd list-nodes and endeca-cmd get-node-profile commands, or their equivalent operations in the Cluster Web Service. This should provide you with information about the capacity of the Endeca Server cluster.
  • Check the current number of nodes in the data domain. Issue the endeca-cmd get-dd my_dd command (or an equivalent Manage Web Service operation, getDataDomain), to obtain information about the current number of follower Dgraph nodes (specified with --num-followers or its equivalent in the Manage Web Service).

    If the number of follower nodes is zero, this indicates that the data domain consists of one leader node that is also configured to handle regular queries, in addition to handling update requests. If the number of follower nodes is 1, this means that the total number of nodes in the data domain is 2.

To add follower nodes to a data domain:

  1. Use a command-line window (for example, open a Command Prompt in Windows) and navigate to the endeca-cmd directory.

    Alternatively, access the Endeca Server cluster's Manage Web Service at a URL similar to the following: http(s)://host:port/endeca-server/ws/manage, where the protocol depends on whether the Endeca Server configuration is secure or not, host and port represent the host name and port of the Endeca Server, and endeca-server is the default context root.

  2. Use the rescaleDataDomain operation of the Manage Web Service, as in the following abbreviated example:
     <ns1:rescaleDataDomain xmlns:ns1="http://www.endeca.com/endeca-server/manage/1/0">
     <ns1:name>my_data_domain</ns1:name>
     <ns1:numFollowers>1</ns1:numFollowers>
    </ns1:rescaleDataDomain>

    Alternatively, you can use: endeca-cmd rescale-dd my_data_domain --num-followers 1.

    This operation asks the Endeca Server cluster to start another Dgraph follower node for the data domain my_data_domain.

If the Endeca Server cluster that hosts this data domain has a sufficient number of nodes, the operation succeeds and adds an additional Dgraph follower node.

If the number of Endeca Server nodes available to host additional data domain nodes is not sufficient, an error message is issued.