Deleting an Endeca Server node

To delete a node, use the endeca-cmd delete-node node_hostname command, or the deleteNode operation of the Cluster Web Service.

Deleting an Endeca Server node affects the Endeca Server cluster in the following ways:
  • When you delete a node, you leave fewer nodes in the cluster for hosting data domain clusters. This may negatively affect the level of availability and the overall throughput of the Endeca Server cluster.
  • If you delete one of those Endeca Server nodes on which the Cluster Coordinator service was running in the cluster, fewer active nodes will run the Cluster Coordinator services. This may negatively affect availability of the Cluster Coordinator services, which in turn will compromise availability of the Endeca Server cluster itself. For information, see Role of the Cluster Coordinator.
  • If you delete a node that is hosting any data domains, the Endeca Server cluster attempts to relocate data domains from this node to other nodes, before deleting the node. If it does not have sufficient resources to migrate data domains, the node is not deleted (it prevents you from deleting it).
Therefore, before removing an active Endeca Server node, ensure the following:
  • A sufficient number of Endeca Server nodes continue hosting active data domain clusters.

    To verify whether the Endeca Server node is hosting any Dgraph nodes, use the endeca-cmd get-node-health command, or the getNodeHealth request of the Cluster Web Service.

  • A sufficient number of Endeca Server nodes continue running the Cluster Coordinator service. To guarantee high availability of Cluster Coordinator services, at least three Endeca Server nodes should be running the Cluster Coordinator service.

    To verify the number of Cluster Coordinator services running in your cluster, use the endeca-cmd get-cluster-health command, or the getClusterHealth request of the Cluster Web Service.

To delete a node in the Endeca Server cluster:

  1. Issue the command as in this example:
    endeca-cmd delete-node my_node

    where my_node is the host name of the node you want to delete. The equivalent web service request looks similar to the following example:

    <ns1:deleteNode xmlns:ns1="http://www.endeca.com/endeca-server/cluster/1/0">
      <ns1:hostname>my_node</ns1:hostname>
    </ns1:deleteNode>

    If the node is not hosting any data domains, it is deleted from the Endeca Server cluster. Additionally, if the node is hosting data domains and the Endeca Server cluster finds other nodes to which the data domains can be migrated, it moves the data domain nodes (Dgraphs) to other Endeca Server nodes and deletes the data domain.

    Deleting a node means that the Endeca Server cluster removes this node's information and will no longer route requests to this node, for any data domain.

    Note: This operation fails if the Endeca Server node does not have sufficient resources to re-allocate data domains hosted on the node you are attempting to delete.
  2. In the WebLogic Server Administration Console, undeploy the Endeca Server application on that node.