The following properties define the VoltDB database configuration.
Table A.5. Options Starting with cluster.config.deployment...
Parameter | Description | Default |
---|---|---|
.cluster.kfactor | K-factor to use for database durability and data safety replication | 1 |
.cluster.sitesperhost | SitesPerHost for VoltDB Cluster | 8 |
.heartbeat.timeout | Internal VoltDB cluster verification of presence of other nodes (seconds) | 90 |
.partitiondetection.enabled | Controls detection of network partitioning | true |
.commandlog.enabled | Command logging for database durability (recommended) | true |
.commandlog.logsize | Command logging allocated disk space (MB) | 1024 |
.commandlog.synchronous | Transactions do not complete until logged to disk | false |
.commandlog.frequency.time | How often the command log is written, by time (milliseconds) | 200 |
.commandlog.frequency.transactions | How often the command log is written, by transaction command | 2147483647 |
.dr.id | Unique cluster id, 0-127 | 0 |
.dr.role | Role for this cluster, currently the only accepted value is 'xdcr' | xdcr |
.dr.conflictretention | Automatic pruning of xdcr conflict logs; value is integer followed by one of m/h/d, for minutes/hours/days | "" |
.dr.connection.enabled | Specifies whether disaster recovery is enabled | false |
.dr.connection.source | If role is replica or xdcr: list of host names or IP addresses of remote node(s) | "" |
.dr.connection.preferredSource | Cluster ID of preferred source | "" |
.dr.connection.ssl | Certificate file path for DR consumer (replica or xdcr mode), defaults to truststore.file location /etc/voltdb/ssl/certificate.txt when SSL is enabled, otherwise it must be specified | "" |
.dr.consumerlimit.maxsize | Enable DR consumer flow control either maxsize or maxbuffers must be specified maxsize can be specified as 50m, 1g or just number for bytes | "" |
.dr.consumerlimit.maxbuffers | Enable DR consumer flow control either maxsize or maxbuffers must be specified | "" |
.export.configurations | List of export configurations | [ ] |
.import.configurations | List of import configurations | [ ] |
.avro.namespace | Avro namespace | "" |
.avro.registry | Avro registry URL | "" |
.avro.prefix | Avro configuration prefix | "" |
.avro.properties | Avro configuration properties | { } |
.topics.threadpool | Kafka topics threadpool to use | `` |
.topics.enabled | Kafka topics enabled or not | true |
.topics.broker | Kafka topics broker configuration | `` |
.topics.broker.properties | Kafka topics broker configuration properties | [ ] |
.topics.topic | List of topics | [ ] |
.topics.topic.name | topic name | `` |
.topics.topic.procedure | Procedure to invoke upon getting message | `` |
.topics.topic.format | Format of topic message | `` |
.topics.topic.retention | Topic retention policy | `` |
.topics.topic.opaque | Is this an opaque topic | false |
.topics.topic.allow | List of roles allowed to access the topic | `` |
.topics.topic.priority | Priority for topics requests (if priority scheduling is enabled) | 4 |
.topics.topic.properties | Topic configuration properties | [ ] |
.httpd.enabled | Determines if HTTP API daemon is enabled | true |
.httpd.jsonapi.enabled | Determines if jSON over HTTP API is enabled | true |
.paths.commandlog.path | Directory path for command log | /pvc/voltdb/voltdbroot/command_log |
.paths.commandlogsnapshot.path | Directory path for command log snapshot | /pvc/voltdb/voltdbroot/command_log_snapshot |
.paths.droverflow.path | Directory path for disaster recovery overflow | /pvc/voltdb/voltdbroot/dr_overflow |
.paths.exportcursor.path | Directory path for export cursors | /pvc/voltdb/voltdbroot/export_cursor |
.paths.exportoverflow.path | Directory path for export overflow | /pvc/voltdb/voltdbroot/export_overflow |
.paths.largequeryswap.path | Directory path for large query swapping | /pvc/voltdb/voltdbroot/large_query_swap |
.paths.snapshots.path | Directory path for snapshots. Must not be located in a read-only root directory of mounted storage (as init --force will rename existing snapshot folder). Use a subdirectory. | /pvc/voltdb/voltdbroot/snapshots |
.security.enabled | Controls whether user-based authentication and authorization are used | false |
.security.provider | Allows use of external Kerberos provider; one of: hash, kerberos | hash |
.snapshot.enabled | Enable/disable periodic automatic snapshots | true |
.snapshot.frequency | Frequency of automatic snapshots (in s,m,h) | 24h |
.snapshot.prefix | Unique prefix for snapshot files | AUTOSNAP |
.snapshot.retain | Number of snapshots to retain | 2 |
.snmp.enabled | Enables or disables use of SNMP | false |
.snmp.target | Host name or IP address, and optional port (default 162), for SNMP server | "" |
.snmp.authkey | SNMPv3 authentication key if protocol is not NoAuth | voltdbauthkey |
.snmp.authprotocol | SNMPv3 authentication protocol. One of: SHA, MD5, NoAuth | SHA |
.snmp.community | Name of SNMP community | public |
.snmp.privacykey | SNMPv3 privacy key if protocol is not NoPriv | voltdbprivacykey |
.snmp.privacyprotocol | SNMPv3 privacy protocol. One of: AES, DES, 3DES, AES192, AES256, NoPriv | AES |
.snmp.username | Username for SNMPv3 authentication; else SNMPv2c is used | "" |
.ssl.enabled | Enables TLS/SSL security for the HTTP port (default 8080, 8443) | false |
.ssl.external | Extends TLS/SSL security to all external ports (default admin 21211, client 21212) | false |
.ssl.internal | Extends TLS/SSL security to the internal port (default 3021) | false |
.ssl.dr | Extends TLS/SSL security to the DR port (5555) | false |
.ssl.keystore.file | Keystore file to mount at the keystore path | "" |
.ssl.keystore.password | Password for VoltDB keystore | "" |
.ssl.truststore.file | Truststore file to mount at the truststore path | "" |
.ssl.truststore.password | Password for VoltDB truststore | "" |
.systemsettings.elastic.duration | Target value for the length of time each rebalance transaction will take (milliseconds) | 50 |
.systemsettings.elastic.throughput | Target value for rate of data processing by rebalance transactions (MB) | 2 |
.systemsettings.flushinterval.minimum | Interval between checking for need to flush (milliseconds) | 1000 |
.systemsettings.flushinterval.dr.interval | Interval for flushing DR data (milliseconds) | 1000 |
.systemsettings.flushinterval.export.interval | Interval for flushing export data (milliseconds) | 4000 |
.systemsettings.procedure.copyparameters | if set, mutable array parameters should be copied before processing | true |
.systemsettings.procedure.loginfo | Threshold for long-running task detection (milliseconds) | 10000 |
.systemsettings.query.timeout | Timeout on SQL queries (milliseconds) | 10000 |
.systemsettings.priorities.enabled | Enables priority scheduling of requests by VoltDB cluster (true/false) | false |
.systemsettings.priorities.maxwait | Modifies priority scheduling by setting a limit on time waiting while higher priority requests execute (millisecs) | 1000 |
.systemsettings.priorities.batch | Modifies priority scheduling algorithm to execute multiple requests before rescheduling | 25 |
.systemsettings.priorities.dr.priority | Priority for DR requests (1-8, 1 is highest priority) | 5 |
.systemsettings.priorities.snapshot.priority | Priority for snapshot requests (1-8, 1 is highest priority) | 6 |
.systemsettings.resourcemonitor.frequency | Resource Monitor interval between resource checks (seconds) | 60 |
.systemsettings.resourcemonitor.memorylimit.size | Limit on memory use (in GB or as percentage) | 80% |
.systemsettings.resourcemonitor.memorylimit.alert | Alert level for memory use (in GB or as percentage) | 70% |
.systemsettings.resourcemonitor.disklimit.commandlog.size | Resource Monitor disk limit on disk use (in GB or percentage, empty is unlimited) | "" |
.systemsettings.resourcemonitor.disklimit.commandlog.alert | Resource Monitor alert level for disk use (in GB or as percentage, empty is unlimited) | "" |
.systemsettings.resourcemonitor.disklimit.commandlogsnapshot.size | Resource Monitor disk limit on disk use (in GB or percentage, empty is unlimited) | "" |
.systemsettings.resourcemonitor.disklimit.commandlogsnapshot.alert | Resource Monitor alert level for disk use (in GB or as percentage, empty is unlimited) | "" |
.systemsettings.resourcemonitor.disklimit.droverflow.size | Resource Monitor disk limit on disk use (in GB or percentage, empty is unlimited) | "" |
.systemsettings.resourcemonitor.disklimit.droverflow.alert | Resource Monitor alert level for disk use (in GB or as percentage, empty is unlimited) | "" |
.systemsettings.resourcemonitor.disklimit.exportoverflow.size | Resource Monitor disk limit on disk use (in GB or percentage, empty is unlimited) | "" |
.systemsettings.resourcemonitor.disklimit.exportoverflow.alert | Resource Monitor alert level for disk use (in GB or as percentage, empty is unlimited) | "" |
.systemsettings.resourcemonitor.disklimit.snapshots.size | Resource Monitor disk limit on disk use (in GB or percentage, empty is unlimited) | "" |
.systemsettings.resourcemonitor.disklimit.snapshots.alert | Resource Monitor alert level for disk use (in GB or as percentage, empty is unlimited) | "" |
.systemsettings.resourcemonitor.disklimit.topicsdata.size | Resource Monitor disk limit on disk use (in GB or percentage, empty is unlimited) | "" |
.systemsettings.resourcemonitor.disklimit.topicsdata.alert | Resource Monitor alert level for disk use (in GB or as percentage, empty is unlimited) | "" |
.systemsettings.snapshot.priority | Priority for snapshot work (really a delay factor; see under systemsettings for scheduling priority) | 6 |
.systemsettings.temptables.maxsize | Limit the size of temporary database tables (MB) | 100 |
.systemsettings.clockskew.interval | Interval of the scheduled clock skew collection (minutes). 0 is allowed and it disables collection. Interval cannot be less than 0 and if set below such value it will be reset to default. | 60 |
.users | Define a list of VoltDB users to be added to the deployment | [ ] |