A.6. VoltDB Database Configuration Options

Documentation

VoltDB Home » Documentation » VoltDB Kubernetes Administrator's Guide

A.6. VoltDB Database Configuration Options

The following properties define the VoltDB database configuration.

Table A.5. Options Starting with cluster.config.deployment...

ParameterDescriptionDefault
.cluster.kfactorK-factor to use for database durability and data safety replication1
.cluster.sitesperhostSitesPerHost for VoltDB Cluster8
.heartbeat.timeoutInternal VoltDB cluster verification of presence of other nodes (seconds)90
​.partitiondetection​.enabledControls detection of network partitioningtrue
.commandlog.enabledCommand logging for database durability (recommended)true
.commandlog.logsizeCommand logging allocated disk space (MB)1024
.commandlog.synchronousTransactions do not complete until logged to diskfalse
​.commandlog​.frequency​.timeHow often the command log is written, by time (milliseconds)200
​.commandlog​.frequency​.transactionsHow often the command log is written, by transaction command2147483647
.dr.idUnique cluster id, 0-1270
.dr.roleRole for this cluster, currently the only accepted value is 'xdcr'xdcr
.dr.conflictretentionAutomatic pruning of xdcr conflict logs; value is integer followed by one of m/h/d, for minutes/hours/days""
.dr.connection.enabledSpecifies whether disaster recovery is enabledfalse
.dr.connection.sourceIf role is replica or xdcr: list of host names or IP addresses of remote node(s)""
​.dr​.connection​.preferredSourceCluster ID of preferred source""
.dr.connection.sslCertificate 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.maxsizeEnable 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​.maxbuffersEnable DR consumer flow control either maxsize or maxbuffers must be specified""
.export.configurationsList of export configurations[ ]
.import.configurationsList of import configurations[ ]
.avro.namespaceAvro namespace""
.avro.registryAvro registry URL""
.avro.prefixAvro configuration prefix""
.avro.propertiesAvro configuration properties{ }
.topics.threadpoolKafka topics threadpool to use``
.topics.enabledKafka topics enabled or nottrue
.topics.brokerKafka topics broker configuration``
.topics.broker.propertiesKafka topics broker configuration properties[ ]
.topics.topicList of topics[ ]
.topics.topic.nametopic name``
.topics.topic.procedureProcedure to invoke upon getting message``
.topics.topic.formatFormat of topic message``
.topics.topic.retentionTopic retention policy``
.topics.topic.opaqueIs this an opaque topicfalse
.topics.topic.allowList of roles allowed to access the topic``
.topics.topic.priorityPriority for topics requests (if priority scheduling is enabled)4
.topics.topic.propertiesTopic configuration properties[ ]
.httpd.enabledDetermines if HTTP API daemon is enabledtrue
.httpd.jsonapi.enabledDetermines if jSON over HTTP API is enabledtrue
.paths.commandlog.pathDirectory path for command log​/pvc​/voltdb​/voltdbroot​/command_log
​.paths​.commandlogsnapshot​.pathDirectory path for command log snapshot​/pvc​/voltdb​/voltdbroot​/command_log_snapshot
.paths.droverflow.pathDirectory path for disaster recovery overflow​/pvc​/voltdb​/voltdbroot​/dr_overflow
.paths.exportcursor.pathDirectory path for export cursors​/pvc​/voltdb​/voltdbroot​/export_cursor
​.paths​.exportoverflow​.pathDirectory path for export overflow​/pvc​/voltdb​/voltdbroot​/export_overflow
​.paths​.largequeryswap​.pathDirectory path for large query swapping​/pvc​/voltdb​/voltdbroot​/large_query_swap
.paths.snapshots.pathDirectory 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.enabledControls whether user-based authentication and authorization are usedfalse
.security.providerAllows use of external Kerberos provider; one of: hash, kerberoshash
.snapshot.enabledEnable/disable periodic automatic snapshotstrue
.snapshot.frequencyFrequency of automatic snapshots (in s,m,h)24h
.snapshot.prefixUnique prefix for snapshot filesAUTOSNAP
.snapshot.retainNumber of snapshots to retain2
.snmp.enabledEnables or disables use of SNMPfalse
.snmp.targetHost name or IP address, and optional port (default 162), for SNMP server""
.snmp.authkeySNMPv3 authentication key if protocol is not NoAuthvoltdbauthkey
.snmp.authprotocolSNMPv3 authentication protocol. One of: SHA, MD5, NoAuthSHA
.snmp.communityName of SNMP communitypublic
.snmp.privacykeySNMPv3 privacy key if protocol is not NoPrivvoltdbprivacykey
.snmp.privacyprotocolSNMPv3 privacy protocol. One of: AES, DES, 3DES, AES192, AES256, NoPrivAES
.snmp.usernameUsername for SNMPv3 authentication; else SNMPv2c is used""
.ssl.enabledEnables TLS/SSL security for the HTTP port (default 8080, 8443)false
.ssl.externalExtends TLS/SSL security to all external ports (default admin 21211, client 21212)false
.ssl.internalExtends TLS/SSL security to the internal port (default 3021)false
.ssl.drExtends TLS/SSL security to the DR port (5555)false
.ssl.keystore.fileKeystore file to mount at the keystore path""
.ssl.keystore.passwordPassword for VoltDB keystore""
.ssl.truststore.fileTruststore file to mount at the truststore path""
.ssl.truststore.passwordPassword for VoltDB truststore""
​.systemsettings​.elastic​.durationTarget value for the length of time each rebalance transaction will take (milliseconds)50
​.systemsettings​.elastic​.throughputTarget value for rate of data processing by rebalance transactions (MB)2
​.systemsettings​.flushinterval​.minimumInterval between checking for need to flush (milliseconds)1000
​.systemsettings​.flushinterval​.dr​.intervalInterval for flushing DR data (milliseconds)1000
​.systemsettings​.flushinterval​.export​.intervalInterval for flushing export data (milliseconds)4000
​.systemsettings​.procedure​.copyparametersif set, mutable array parameters should be copied before processingtrue
​.systemsettings​.procedure​.loginfoThreshold for long-running task detection (milliseconds)10000
​.systemsettings​.query​.timeoutTimeout on SQL queries (milliseconds)10000
​.systemsettings​.priorities​.enabledEnables priority scheduling of requests by VoltDB cluster (true/false)false
​.systemsettings​.priorities​.maxwaitModifies priority scheduling by setting a limit on time waiting while higher priority requests execute (millisecs)1000
​.systemsettings​.priorities​.batchModifies priority scheduling algorithm to execute multiple requests before rescheduling25
​.systemsettings​.priorities​.dr​.priorityPriority for DR requests (1-8, 1 is highest priority)5
​.systemsettings​.priorities​.snapshot​.priorityPriority for snapshot requests (1-8, 1 is highest priority)6
​.systemsettings​.resourcemonitor​.frequencyResource Monitor interval between resource checks (seconds)60
​.systemsettings​.resourcemonitor​.memorylimit​.sizeLimit on memory use (in GB or as percentage)80%
​.systemsettings​.resourcemonitor​.memorylimit​.alertAlert level for memory use (in GB or as percentage)70%
​.systemsettings​.resourcemonitor​.disklimit​.commandlog​.sizeResource Monitor disk limit on disk use (in GB or percentage, empty is unlimited)""
​.systemsettings​.resourcemonitor​.disklimit​.commandlog​.alertResource Monitor alert level for disk use (in GB or as percentage, empty is unlimited)""
​.systemsettings​.resourcemonitor​.disklimit​.commandlogsnapshot​.sizeResource Monitor disk limit on disk use (in GB or percentage, empty is unlimited)""
​.systemsettings​.resourcemonitor​.disklimit​.commandlogsnapshot​.alertResource Monitor alert level for disk use (in GB or as percentage, empty is unlimited)""
​.systemsettings​.resourcemonitor​.disklimit​.droverflow​.sizeResource Monitor disk limit on disk use (in GB or percentage, empty is unlimited)""
​.systemsettings​.resourcemonitor​.disklimit​.droverflow​.alertResource Monitor alert level for disk use (in GB or as percentage, empty is unlimited)""
​.systemsettings​.resourcemonitor​.disklimit​.exportoverflow​.sizeResource Monitor disk limit on disk use (in GB or percentage, empty is unlimited)""
​.systemsettings​.resourcemonitor​.disklimit​.exportoverflow​.alertResource Monitor alert level for disk use (in GB or as percentage, empty is unlimited)""
​.systemsettings​.resourcemonitor​.disklimit​.snapshots​.sizeResource Monitor disk limit on disk use (in GB or percentage, empty is unlimited)""
​.systemsettings​.resourcemonitor​.disklimit​.snapshots​.alertResource Monitor alert level for disk use (in GB or as percentage, empty is unlimited)""
​.systemsettings​.resourcemonitor​.disklimit​.topicsdata​.sizeResource Monitor disk limit on disk use (in GB or percentage, empty is unlimited)""
​.systemsettings​.resourcemonitor​.disklimit​.topicsdata​.alertResource Monitor alert level for disk use (in GB or as percentage, empty is unlimited)""
​.systemsettings​.snapshot​.priorityPriority for snapshot work (really a delay factor; see under systemsettings for scheduling priority)6
​.systemsettings​.temptables​.maxsizeLimit the size of temporary database tables (MB)100
​.systemsettings​.clockskew​.intervalInterval 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
.usersDefine a list of VoltDB users to be added to the deployment[ ]