Distributed Common Parameters Configuration
In the OmniFabric/etc/launch-with-proxy/ directory, there are four configuration files: cn.toml, tn.toml, proxy.toml, and log.toml. The parameters contained in these configuration files are explained below:
cn.toml
Default Parameters
| Parameter | Explanation | Example |
|---|---|---|
| [log] | Log configuration section | |
| level | Log level; default is info. |
level = "info" |
| [cn] | cn node, not editable |
/ |
| port-base | Starting port used by cn. It scans the next 20 ports from this base to find available ones for internal services. |
port-base = 18000 |
| service-host | Service connection address used for registration with HAKeeper | service-host = "127.0.0.1" |
| [cn.frontend] | Frontend configuration section | |
| port | Listening port for OmniFabric and client connections | port = 6001 |
| host | Listening IP address | host = "0.0.0.0" |
| [fileservice.s3] | S3 file service configuration | |
| bucket | S3 bucket name | bucket = "my-bucket" |
| key-prefix | S3 key prefix | key-prefix = "prefix/" |
Extended Parameters
| Parameter | Explanation | Example |
|---|---|---|
| [log] | Log configuration section | |
| format | Log save format (e.g., console, json) |
format = "console" |
| filename | Log filename | filename = "log1.log" |
| [cn.frontend] | Frontend configuration section | |
| unix-socket | Listen on Unix domain socket | unix-socket = "/tmp/mysql.sock" |
| lengthOfQueryPrinted | Console output query length | lengthOfQueryPrinted = 200000 |
| enableTls | Enable TLS | enableTls = false |
| tlsCaFile | Client SSL CA list file path | tlsCaFile = "" |
| tlsCertFile | Client X509 PEM format certificate file path | tlsCertFile = "" |
| tlsKeyFile | Client X509 PEM format key file path | tlsKeyFile = "" |
| saveQueryResult | Save query results | saveQueryResult = false |
| queryResultTimeout | Query result timeout (hours) | queryResultTimeout = 24 |
| queryResultMaxsize | Maximum query result size (MB) | queryResultMaxsize = 100 |
| lowerCaseTableNames | Case sensitivity of identifiers; default 1 = case-insensitive |
lowerCaseTableNames = 1 |
| [cn.Txn] | Transaction configuration section | |
| isolation | Transaction isolation level on the cn node. If not set: with mode=optimistic → Serializable Isolation (SI); with mode=pessimistic → Read Committed (RC). Default: RC |
isolation = "RC" |
| mode | Transaction mode (optimistic / pessimistic). Default: pessimistic. |
mode = "pessimistic" |
| [fileservice.s3] | Additional S3 options | |
| endpoint | S3 endpoint address | endpoint = "s3.amazonaws.com" |
| [fileservice.cache] | File service cache configuration | |
| memory-capacity | Cache memory size | memory-capacity = "512MB" |
| disk-path | Disk cache path | disk-path = "/var/OmniFabric/cache" |
| disk-capacity | Disk cache capacity | disk-capacity = "8GB" |
| [observability] | Observability parameters | |
| host | Exposed metrics service listening IP | host = "0.0.0.0" |
| statusPort | Prometheus monitoring port; metrics exposed via HTTP | statusPort = 7001 |
| enableMetricToProm | Enable metric service | enableMetricToProm = false |
| disableMetric | Disable metric collection and stop listening on service port | disableMetric = false |
| disableTrace | Disable trace collection (also stops collecting metric and log data) | disableTrace = false |
| longQueryTime | Threshold (seconds) for logging long queries; 0.0 = log all execution plans |
longQueryTime = 1.0 |
tn.toml
Default Parameters
| Parameter | Explanation | Example |
|---|---|---|
| [log] | Log configuration section | |
| level | Log level; default is info |
level = "info" |
| [dn] | TN node, not editable | |
| uuid | Unique identifier of TN, not editable | uuid = "dd4dccb4-4d3c-41f8-b482-5251dc7a41bf" |
| port-base | Starting port used by TN. It scans the next 20 ports from this base to find available ones for internal services. |
port-base = 19000 |
| service-host | Service connection address used for registration with HAKeeper | service-host = "0.0.0.0" |
| [fileservice.s3] | S3 file service configuration | |
| bucket | S3 bucket name | bucket = "my-bucket" |
| key-prefix | S3 key prefix | key-prefix = "prefix/" |
Extended Parameters
| Parameter | Explanation | Example |
|---|---|---|
| [log] | Log configuration section | |
| format | Log save format (e.g., console, json) |
format = "console" |
| filename | Log filename | filename = "log1.log" |
| [dn.LogtailServer] | Logtail server configuration section | |
| rpc-enable-checksum | Enable RPC checksum | rpc-enable-checksum = false |
| [fileservice.s3] | Additional S3 options | |
| endpoint | S3 endpoint address | endpoint = "s3.amazonaws.com" |
| [fileservice.cache] | File service cache configuration | |
| memory-capacity | Cache memory size | memory-capacity = "512MB" |
| disk-path | Disk cache path | disk-path = "/var/OmniFabric/cache" |
| disk-capacity | Disk cache capacity | disk-capacity = "8GB" |
| [observability] | Observability parameters | |
| host | Exposed metrics service listening IP | host = "0.0.0.0" |
| statusPort | Prometheus monitoring port; metrics exposed via HTTP | statusPort = 7001 |
| enableMetricToProm | Enable metric service | enableMetricToProm = false |
| disableMetric | Disable metric collection and stop listening on service port | disableMetric = false |
| disableTrace | Disable trace collection (also stops collecting metric and log data) | disableTrace = false |
| longQueryTime | Threshold (seconds) for logging long queries; 0.0 = log all execution plans |
longQueryTime = 1.0 |
log.toml
Default Parameters
| Parameter | Explanation | Example |
|---|---|---|
| [log] | Log configuration section | |
| level | Log level; default is info |
level = "info" |
| [logservice] | Logservice configuration section | |
| uuid | Unique identifier of Logservice, not editable | uuid = "dd1dccb4-4d3c-41f8-b482-5251dc7a41bf" |
| data-dir | Default data directory | data-dir = "./mo-data/logservice" |
| [fileservice.s3] | S3 file service configuration | |
| bucket | S3 bucket name | bucket = "my-bucket" |
| key-prefix | S3 key prefix | key-prefix = "prefix/" |
Extended Parameters
| Parameter | Explanation | Example |
|---|---|---|
| [log] | Log configuration section | |
| format | Log save format (e.g., console, json) |
format = "console" |
| filename | Log filename | filename = "log1.log" |
| [logservice.BootstrapConfig] | Logservice bootstrap configuration | |
| num-of-log-shards | Number of log shards | num-of-log-shards = 0 |
| num-of-tn-shards | Number of TN shards | num-of-tn-shards = 0 |
| num-of-log-shard-replicas | Replicas per log shard | num-of-log-shard-replicas = 0 |
| [fileservice.s3] | Additional S3 options | |
| endpoint | S3 endpoint address | endpoint = "s3.amazonaws.com" |
| [fileservice.cache] | File service cache configuration | |
| memory-capacity | Cache memory size | memory-capacity = "512MB" |
| disk-path | Disk cache path | disk-path = "/var/OmniFabric/cache" |
| disk-capacity | Disk cache capacity | disk-capacity = "8GB" |
| [observability] | Observability parameters | |
| host | Exposed metrics service listening IP | host = "0.0.0.0" |
| statusPort | Prometheus monitoring port; metrics exposed via HTTP | statusPort = 7001 |
| enableMetricToProm | Enable metric service | enableMetricToProm = false |
| disableMetric | Disable metric collection and stop listening on service port | disableMetric = false |
| disableTrace | Disable trace collection (also stops collecting metric and log data) | disableTrace = false |
| longQueryTime | Threshold (seconds) for logging long queries; 0.0 = log all execution plans |
longQueryTime = 1.0 |
proxy.toml
Default Parameters
| Parameter | Explanation | Example |
|---|---|---|
| [log] | Log configuration section | |
| level | Log level; default is info |
level = "info" |
| [proxy] | Proxy configuration section | |
| listen-address | Listen address; default 0.0.0.0:6009 |
listen-address = "0.0.0.0:6009" |
| [fileservice.s3] | S3 file service configuration | |
| bucket | S3 bucket name | bucket = "my-bucket" |
| key-prefix | S3 key prefix | key-prefix = "prefix/" |
Extended Parameters
| Parameter | Explanation | Example |
|---|---|---|
| [log] | Log configuration section | |
| format | Log save format (e.g., console, json) |
format = "console" |
| filename | Log filename | filename = "log1.log" |
| [proxy] | Proxy configuration section | |
| rebalance-interval | Time interval between two rebalance operations (load balancing) | rebalance-interval = 30 |
| rebalance-disabled | Disable rebalance; if true, no automatic rebalancing |
rebalance-disabled = false |
| rebalance-tolerance | Rebalance tolerance < 1. Example: 0.3 → trigger rebalance if a server exceeds average connections by 30%. |
rebalance-tolerance = 0.3 |
| [fileservice.s3] | Additional S3 options | |
| endpoint | S3 endpoint address | endpoint = "s3.amazonaws.com" |
| [fileservice.cache] | File service cache configuration | |
| memory-capacity | Cache memory size | memory-capacity = "512MB" |
| disk-path | Disk cache path | disk-path = "/var/OmniFabric/cache" |
| disk-capacity | Disk cache capacity | disk-capacity = "8GB" |
| [observability] | Observability parameters | |
| host | Exposed metrics service listening IP | host = "0.0.0.0" |
| statusPort | Prometheus monitoring port; metrics exposed via HTTP | statusPort = 7001 |
| enableMetricToProm | Enable metric service | enableMetricToProm = false |
| disableMetric | Disable metric collection and stop listening on service port | disableMetric = false |
| disableTrace | Disable trace collection (also stops collecting metric and log data) | disableTrace = false |
| longQueryTime | Threshold (seconds) for logging long queries; 0.0 = log all execution plans |
longQueryTime = 1.0 |