TOPICS
LANGUAGE

Add a Node

Note: This section applies only to FaunaDB Enterprise.

This page will walk you through the steps to add a node to your existing FaunaDB Enterprise cluster. If you are starting from scratch, please see Set Up A New Cluster.

In order to add a node, you will need at least one node up and running in an existing datacenter within the FaunaDB Enterprise cluster.

You will also find instructions for adding your node to the distributed transaction log configuration below.

Before You Start

Before you add a node to your Enterprise cluster, take note of the following:

  • If you are adding more than one node while taking live traffic, you will need to have statsd configured with FaunaDB before you begin.

Add a Node

Adding a node can be done in three steps, which we cover below.

1. Set up the new node’s configuration file (faunadb.yml) with

  • network_datacenter_name: The name of the datacenter you would like the new node to join; for example: ‘replica_1’.
  • network_broadcast_address: the new node’s public IP address
  • network_listen_address: The interface address that FaunaDB will bind to for incoming requests.
  • auth_root_key: The root admin key for the FaunaDB Query API.
  • storage_transaction_log_nodes: The array of addresses of the nodes in the transaction log. (See more here.)

2. Get FaunaDB running on the new node:

$ faunadb -c »/path/to/faunadb.yml«

3. Then join the node to any node in the cluster so that it gets the data it needs:

$ faunadb-admin join »IP of any node in the cluster«

Use the status admin command to see the remaining list of pending data transfers:

$ faunadb-admin status

Add Node to Distributed Transaction Log Configuration

If the node you just added is replacing a lost transaction log participant, follow these instructions to add it to the log configuration.

  1. In the faunadb.yml of the new node, locate the storage_transaction_log_nodes setting.
  2. Add your new node’s IP address to the right of the other IP address listed, separated by a comma.
  3. Update the faunadb.yml of all other nodes.
  4. Restart all nodes, round-robin style.