REST Service Configuration (nuodb-rest-api.yml)

The nuodb-rest-api.yml file contains configuration parameters used by the NuoDB Automation Console and the NuoDB Admin Center menu. When editing this and other configuration files, be careful to ensure consistency across the various configuration files in the NUODB_HOME/etc directory, specifically with regard to shared configuration in the files.


The nuodb-rest-api.yml file is found in NUODB_HOME/etc.

Modifying nuodb-rest-api.yml

nuodb-rest-api.yml is a standard YAML file. It is meant to be easily edited by the user but some fundamental understanding of the organization of YAML files is recommended.

File Format

The nuodb-rest-api.yml file is organized into the following three blocks:

The nuoDBConfiguration block is specific to NuoDB. The other two blocks set properties for Dropwizard, which is a third-party utility used by NuoDB. The nest section describes the nuoDBConfiguration block. For more information about Dropwizard settings, see the Dropwizard User Manual.


The nuoDBConfiguration block governs information about the NuoDB domain.

Key Default Value Description
propertyProvider com.nuodb.agent.plugin.URLPropertiesProvider Optional property provider plugin class which implements the interface com.nuodb.agent.PropertiesProvider. You can use the same plugin class that is supported by the propertyProvider JVM option for the NuoDB broker (set, for example, in jvm-options). Only the domainPassword property is read and copied into the password property. Set propertyProvider to none to skip the property provider plugin class. For more information, see PropertiesProvider Interface Class.
username blank NuoDB domain user name. If blank, then REST service will use the default user name, domain.
password blank NuoDB domain user password. If blank, then REST service will load the NUODB_HOME/etc/ and use the domainPassword property value there.
broker localhost NuoDB broker address. It is recommended that this be changed from localhost to a specific IP address or domain name, for more accurate reporting of hosts and processes in the Automation Console.
port 48004 NuoDB broker port
metricsCacheEnabled true Whether or not to use a cache for governing queries for metrics displayed in the Automation Console.
metricsCacheSize 20 The number of query results to keep in the metrics cache.
metricsCacheExpirySecs 10 The number of seconds before the query results should be removed from the metrics cache.
productionMode false This governs the contents of the Admin Home menu. If productionMode is set to true, only the Admin Home, Automation Console, Documentation, KnowledgeBase, TechBlog, and menu items are displayed.
nuoWebAppPort 8888 This the the default port on which the SQL Explorer, QuickStart and Storefront demos run.
nuoProxyPort 9001 For internal use.
storefrontPath ../samples/demos/storefront/StorefrontDemo.war Path to the .war file used by the Storefront demo.
periodicResynchIntervalSecs 600 The REST service disconnects/reconnects from its connected broker every periodicResynchIntervalSecs seconds in order to refresh its local domain, providing protection from stale domain state. The default is every ten (10) minutes.
authCacheEnabled true If set to false, then every REST API access will require a roundtrip from the REST service to its connected broker to perform user authentication. If set to true, then the REST service will cache the authorized credentials up to authCacheExpirySecs seconds. An unauthorized user is not cached (blacklisted) which can be used to perform DDOS attack on the broker.
authCacheExpirySecs 60 When authCacheEnabled is true, successfully authenticated users are cached in the REST service up to authCacheExpirySecs seconds.


The following is a snippet from nuodb-rest-api.yml that ships with NuoDB 2.1 and is subject to change in future releases:

# NuoDB options
  # NuoDB domain user name. If blank, then Rest Svc will use the default
  # domain user, "domain". Note that the "domain" property in the
  # ./etc/ file specifies the name of the domain.
  broker: localhost   # NuoDB broker address
  port: 48004         # NuoDB broker port
  metricsCacheEnabled: true
  metricsCacheSize: 20
  metricsCacheExpirySecs: 10
  productionMode: false  # whether the shared header should hide non-production tools
  nuoWebAppPort: 9001
  storefrontPath: ../samples/demos/storefront/StorefrontDemo.war
  periodicResynchIntervalSecs: 600 # 10 minutes
  authCacheEnabled: true
  authCacheExpirySecs: 60