MemCache Configs
MetaService Config
| key | value type | requirement | default | valid range | description |
|---|---|---|---|---|---|
| ock.mmc.meta_service_url | string | optional | tcp://127.0.0.1:5000 | tcp://<host><port> | host supports ip and domain, port in [1025, 65535] |
| ock.mmc.meta_service.config_store_url | string | optional | tcp://127.0.0.1:6000 | tcp://<host><port> | host supports ip and domain, port in [1025, 65535] |
| ock.mmc.meta_service.metrics_url | string | optional | http://127.0.0.1:8000 | http://127.0.0.1:<port> | host must be 127.0.0.1, port in [1025, 65535] |
| ock.mmc.meta.ha.enable | bool | optional | false | true/false | enable meta service master/backup HA in k8s cluster |
| ock.mmc.meta.backup.enable | bool | optional | false | true/false | enable meta service backup |
| ock.mmc.meta_service.metrics_report_interval_seconds | integer | optional | 30 | [0, 86400] | metrics summary printing interval in seconds, 0 disables periodic metrics printing |
| ock.mmc.meta.lease_ttl_ms | integer | optional | 2000 | [1, 2147483647] | default read lease TTL in milliseconds used when meta service grants read leases |
| ock.mmc.log_level | string | optional | info | debug/info/warn/error | log level |
| ock.mmc.log_path | string | optional | /var/log/memcache_hybrid | relative or absolute path | log path, the absolute path is start with '/' |
| ock.mmc.log_rotation_file_size | int | optional | 20 | 1 <= n <= 500 | log rotation file size(MB) |
| ock.mmc.log_rotation_file_count | int | optional | 50 | 1 <= n <= 50 | log rotation file num |
| ock.mmc.evict_threshold_high | int | optional | 90 | 1 <= n <= 99 | evict threshold, 90 mean 90%, the max threshold is 99%. Note: When the size of single put value is greater than 1% of the capacity, the elimination cannot be triggered |
| ock.mmc.evict_threshold_low | int | optional | 80 | 1 <= n <= 98 | after evict threshold |
| ock.mmc.rewarm.dram_watermark | int | optional | 95 | [0, 100] | rewarm DRAM watermark percentage, rewarm is triggered when DRAM usage exceeds this threshold |
| ock.mmc.storage.prefetch.enabled | bool | optional | false | true/false | enable SSD to DRAM prefetch on read |
| ock.mmc.tls.enable | bool | optional | false | true/false | metaservice TLS switch |
| ock.mmc.tls.ca.path | string | optional | 0 <= len < 256 | Root Certificate path | |
| ock.mmc.tls.ca.crl.path | string | optional | 0 <= len < 256 | Certificate Revocation List path | |
| ock.mmc.tls.cert.path | string | optional | 0 <= len < 256 | server certificate path | |
| ock.mmc.tls.key.path | string | optional | 0 <= len < 256 | server private key path | |
| ock.mmc.tls.key.pass.path | string | optional | 0 <= len < 256 | server private key passphrase path (leave empty if the private key is not encrypted) | |
| ock.mmc.tls.package.path | string | optional | 0 <= len < 256 | openssl dynamic libraries path | |
| ock.mmc.tls.decrypter.path | string | optional | 0 <= len < 256 | the keypass decrypter library path (leave empty if the password is not encrypted) | |
| ock.mmc.config_store.tls.enable | bool | optional | false | true/false | config store TLS switch |
| ock.mmc.config_store.tls.ca.path | string | optional | 0 <= len < 256 | Root Certificate path for config store | |
| ock.mmc.config_store.tls.ca.crl.path | string | optional | 0 <= len < 256 | Certificate Revocation List path for config store | |
| ock.mmc.config_store.tls.cert.path | string | optional | 0 <= len < 256 | server certificate path for config store | |
| ock.mmc.config_store.tls.key.path | string | optional | 0 <= len < 256 | server private key path for config store | |
| ock.mmc.config_store.tls.key.pass.path | string | optional | 0 <= len < 256 | server private key passphrase path for config store (leave empty if the private key is not encrypted) | |
| ock.mmc.config_store.tls.package.path | string | optional | 0 <= len < 256 | openssl dynamic libraries path for config store | |
| ock.mmc.config_store.tls.decrypter.path | string | optional | 0 <= len < 256 | the keypass decrypter library path for config store (leave empty if the password is not encrypted) |
LocalService Config
| key | value type | requirement | default | valid range | description |
|---|---|---|---|---|---|
| ock.mmc.meta_service_url | string | optional | tcp://127.0.0.1:5000 | tcp://<host><port> | host is cluster-ip/domain in HA, port in [1025, 65535] |
| ock.mmc.local_service.config_store_url | string | optional | tcp://127.0.0.1:6000 | tcp://<host><port> | host supports ip and domain, port in [1025, 65535] |
| ock.mmc.log_level | string | optional | info | debug/info/warn/error | log level |
| ock.mmc.local_service.world_size | integer | optional | 256 | [1, 1024] | The maximum supported rank count; once ranks are connected, no further modifications are allowed — a meta restart is required |
| ock.mmc.local_service.protocol | string | required | host_rdma | host_rdma/host_urma/host_tcp/host_shm/device_sdma/device_rdma/device_urma/device_uboe | host_shm requires DRAM > 0, HBM = 0, and no hcom. |
| ock.mmc.local_service.hcom_url | string | optional | tcp://127.0.0.1:7000 | tcp://<host><port> | used in dram pool, host supports ip and domain, port in [1024, 65535] |
| ock.mmc.local_service.dram.size | integer | required | 1GB | [0, 1TB] | Supports formats such as 134217728, 2048KB, 200mb, 2.5G or 1TB, and automatic alignment to 2MB (host_rdma, host_tcp or host_shm) or 1GB (device_sdma, device_rdma, device_urma or device_uboe). |
| ock.mmc.local_service.hbm.size | integer | optional | 0 | [0, 1TB] | Supports formats such as 134217728, 2048KB, 200mb, 2.5G or 1TB, and automatic alignment to 2MB (host_rdma, host_tcp or host_shm) or 1GB (device_sdma, device_rdma, device_urma or device_uboe). host_shm requires HBM to remain 0. |
| ock.mmc.local_service.max.dram.size | integer | optional | use dram.size | [0, 1TB] | The MAX size of ock.mmc.local_service.dram.size in all local processes, nessesary if ranks contribute different sizes of DRAM. |
| ock.mmc.local_service.max.hbm.size | integer | optional | use hbm.size | [0, 1TB] | The MAX size of ock.mmc.local_service.hbm.size in all local processes, nessesary if ranks contribute different sizes of HBM. |
| ock.mmc.local_service.storage.enabled | bool | optional | false | true/false | enable SSD storage on local service. When enabled, SSD read/write and data eviction to SSD are supported |
| ock.mmc.client.retry_milliseconds | integer | optional | 0 | [0, 600000] | The total retry duration (retry interval is 200ms) when client requests meta service and the connection does not exist |
| ock.mmc.client.timeout.seconds | integer | optional | 60 | [1, 600] | Client request timeout in seconds. |
| ock.mmc.client.read_thread_pool.size | integer | optional | 4 | [1, 64] | Number of threads in the read thread pool. |
| ock.mmc.client.write_thread_pool.size | integer | optional | 4 | [1, 64] | Number of threads in the write thread pool. |
| ock.mmc.client.aggregate.io | bool | optional | true | true/false | Whether to enable IO request aggregation for read/write operations. |
| ock.mmc.client.aggregate.num | integer | optional | 122 | [1, 131072] | Number of IO requests to aggregate in a single batch. |
| ock.mmc.client.batch_option.chunk.size | integer | optional | 8MB | [0, 1TB] | Supports formats such as 134217728, 2048KB, 200mb, 2.5G or 1TB. |
| ock.mmc.client.batch_option.chunk.count | integer | optional | 3 | [1, 64] | During batch copy operations, the system will not perform slicing and concurrent copy operations only when the batch count is less than chunk count or the total data size is less than (chunk size * chunk count). |
| ock.mmc.tls.enable | bool | optional | false | true/false | metaservice TLS switch |
| ock.mmc.tls.ca.path | string | optional | 0 <= len < 256 | Root Certificate path | |
| ock.mmc.tls.ca.crl.path | string | optional | 0 <= len < 256 | Certificate Revocation List path | |
| ock.mmc.tls.cert.path | string | optional | 0 <= len < 256 | client certificate path | |
| ock.mmc.tls.key.path | string | optional | 0 <= len < 256 | client private key path | |
| ock.mmc.tls.key.pass.path | string | optional | 0 <= len < 256 | client private key passphrase path (leave empty if the private key is not encrypted) | |
| ock.mmc.tls.package.path | string | optional | 0 <= len < 256 | openssl dynamic libraries path | |
| ock.mmc.tls.decrypter.path | string | optional | 0 <= len < 256 | the keypass decrypter library path (leave empty if the password is not encrypted) | |
| ock.mmc.config_store.tls.enable | bool | optional | false | true/false | config store TLS switch |
| ock.mmc.config_store.tls.ca.path | string | optional | 0 <= len < 256 | Root Certificate path for config store | |
| ock.mmc.config_store.tls.ca.crl.path | string | optional | 0 <= len < 256 | Certificate Revocation List path for config store | |
| ock.mmc.config_store.tls.cert.path | string | optional | 0 <= len < 256 | client certificate path for config store | |
| ock.mmc.config_store.tls.key.path | string | optional | 0 <= len < 256 | client private key path for config store | |
| ock.mmc.config_store.tls.key.pass.path | string | optional | 0 <= len < 256 | client private key passphrase path for config store (leave empty if the private key is not encrypted) | |
| ock.mmc.config_store.tls.package.path | string | optional | 0 <= len < 256 | openssl dynamic libraries path for config store | |
| ock.mmc.config_store.tls.decrypter.path | string | optional | 0 <= len < 256 | the keypass decrypter library path for config store (leave empty if the password is not encrypted) | |
| ock.mmc.local_service.hcom.tls.enable | bool | optional | false | true/false | hcom TLS switch |
| ock.mmc.local_service.hcom.tls.ca.path | string | optional | 0 <= len < 256 | Root Certificate path for hcom | |
| ock.mmc.local_service.hcom.tls.ca.crl.path | string | optional | 0 <= len < 256 | Certificate Revocation List path for hcom | |
| ock.mmc.local_service.hcom.tls.cert.path | string | optional | 0 <= len < 256 | client certificate path for hcom | |
| ock.mmc.local_service.hcom.tls.key.path | string | optional | 0 <= len < 256 | client private key path for hcom | |
| ock.mmc.local_service.hcom.tls.key.pass.path | string | optional | 0 <= len < 256 | client private key passphrase path for hcom (leave empty if the private key is not encrypted) | |
| ock.mmc.local_service.hcom.tls.decrypter.path | string | optional | 0 <= len < 256 | the keypass decrypter library path for hcom (leave empty if the password is not encrypted) |