Configuration

This document defines configurations within faunadb.yml and lists their defaults. It only covers configuration options required for basic administration.

Root Access

Set the admin key for the cluster. Required to create databases or server keys, and must be set before a cluster can be initialized. Only one should be set.

The faunadb-admin hash-key KEY command creates a hash of KEY that can be used in auth_root_key_hash.

Set auth_root_key to the key in plain-text OR use the faunadb-admin hash-key KEY command to create a hash of KEY that can be used in auth_root_key_hash. If you supply a key but no hash, FaunaDB hashes your key for you. If you supply a hash but no key, FaunaDB uses the hash. If you set both, FaunaDB prefers the hash.

Name Default

auth_root_key

secret

auth_root_key_hash

Network Peer Communication Ports

The ports that nodes use to communicate with each other. If peer-to-peer encryption is configured, nodes first initiate an SSL-encrypted connection over the secure ports. If it is established that the two nodes are in the same replica, then the connection is switched over to the normal ports and encryption is dropped.

It is acceptable to open network_peer_secure_port to the public internet. network_peer_port is unsecured and should be protected by a firewall or equivalent mechanism.

Name Default

network_peer_port

7500

network_peer_secure_port

7501

Cluster Name

Identifies the FaunaDB Enterprise cluster. Nodes with different cluster names do not connect with each other. Required.

Name Default

network_cluster_name

fauna

Replica name

Identifies the replica the node is in.

Name Default

network_datacenter_name

NoDC

Network Host ID

The identifier returned in the headers of requests to identify the coordinator of the request.

Name Default

network_host_id

network_broadcast_address

Broadcast Address

The primary network address that identifies the node to the cluster. This should be routable by any node within the cluster.

In an AWS cluster, this should be set to the node’s public IP.

Name Default

network_broadcast_address

IP address associated with the node’s hostname

Listen Address

In a situation where network_broadcast_address may not be set to the actual IP of the node, this setting determines the interface FaunaDB should bind to and should be set to the IP of the node.

It does not need to be routable by all nodes, but nodes within the same replica should be able to connect to it.

In an AWS cluster, this should be set to the node’s private IP.

Name Default

network_listen_address

IP address associated with the node

Data Directories

Paths to log and data directories, respectively. These paths must exist and be writable by the FaunaDB service.

Name Default

log_path

/var/log/faunadb

storage_data_path

/var/lib/faunadb

storage_temp_path

»storage_path«/tmp

Snapshots are, by default, saved within the storage_data_path, but you can specify another place to store them using storage_snapshot_path. storage_temp_path lets you specify where FaunaDB stores its temporary files.

Log Level

FaunaDB creates several logs that can help during the debugging process. By default, logging is done at the INFO level, and we recommend leaving that alone when you are first getting started. However, the log level can be raised or lowered through the configuration file. Logs can be disabled completely by setting log_level to OFF.

Name Default

log_level

INFO

FaunaDB Config

You can specify the config file for the faunadb script using faunadb_config. If nothing is specified, FaunaDB looks for the config in the usual places (./faunadb.yml, /usr/etc/faunadb.yml, /etc/faunadb.yml).

Name Default

faunadb_config