~/.rdt/configs/<name>.json. This page documents the schema. For the commands used to
create, edit, and manage these files, see
Creating & Managing Configs.
Deployment guidelines
Before designing a configuration, keep RegattaDB’s general module placement guidelines in mind:- SM: exactly one per deployment.
- SNA: one per node that hosts at least one operational module (GDD, DCM, Sequencer, or RDB).
- GDD, DCM, Sequencer: exactly one per deployment.
- RDB: at least one per deployment; a node may host multiple RDB modules.
Cluster,
Node, Device, and Module objects in a config file.
Cluster
Cluster-level validation:
- Node
idmust be unique across the deployment. - Exactly one instance each of SM, Sequencer, GDD, and DCM across the entire deployment (not per node).
Node
Node-level validation:
- At most one instance each of SM, SNA, Sequencer, GDD, and DCM is allowed per node (mirrors the cluster-level rule).
- Module
ids must be unique within the node. - Every device name referenced by a module must exist in the node’s
deviceslist. - Two modules on the same node cannot reference the same device.
Device
Module
All modules share a common set of fields; each module type additionally has fixed defaults forid, port, and service_port.
Module type defaults
Core binding
A module can be pinned to specific CPU cores via itsconfig:
core_binded_nodeis required whenevercore_binded_coresis set.- If
num_threadsis left unset, it’s derived automatically from the core range. - If
num_threadsis set, it must not exceed the number of cores in the range.
Example
A minimal single-node config with one RDB storage device:Templates
rdt config create --from <template> starts a config from a packaged template instead
of a blank one. Two templates ship with RDT today:
xsmall: a single-node, all-in-one layout: one node running all module types (SM, SNA, Sequencer, GDD, DCM, RDB).small: a 3-node “classic” multi-node layout:node_1runs every module type (likexsmall), whilenode_2andnode_3each run only SNA and RDB.