2021-05-21 16:47:08 +03:00
logger :
2021-10-11 04:11:36 +03:00
level: debug # logger level : one of "debug", "info" (default), "warn", "error", "dpanic", "panic", "fatal"
2024-02-08 17:04:58 +03:00
destination: journald # logger destination : one of "stdout" (default), "journald"
2024-09-16 10:46:26 +03:00
timestamp : true
2021-06-01 21:24:01 +03:00
2023-11-21 15:07:37 +03:00
systemdnotify :
enabled : true
2022-07-13 12:26:40 +03:00
pprof :
2022-07-13 12:17:37 +03:00
enabled : true
2022-07-13 11:58:10 +03:00
address : localhost:6060 # endpoint for Node profiling
2021-10-04 20:04:25 +03:00
shutdown_timeout : 15s # timeout for profiling HTTP server graceful shutdown
2023-02-01 10:21:17 +03:00
block_rate: 10000 # sampling rate : an average of one blocking event per rate nanoseconds spent blocked is reported; "1" reports every blocking event; "0" disables profiler
mutex_rate: 10000 # sampling rate : on average 1/rate events are reported; "0" disables profiler
2021-06-01 21:24:01 +03:00
2022-07-13 12:26:40 +03:00
prometheus :
2022-07-13 12:17:37 +03:00
enabled : true
2022-07-13 11:58:10 +03:00
address : localhost:9090 # endpoint for Node metrics
2021-10-08 10:47:50 +03:00
shutdown_timeout : 15s # timeout for metrics HTTP server graceful shutdown
2021-06-01 21:24:01 +03:00
2021-06-01 20:42:57 +03:00
node :
2021-10-04 20:04:25 +03:00
key : ./wallet.key # path to a binary private key
2021-05-31 11:55:38 +03:00
wallet :
2021-10-04 20:04:25 +03:00
path : "./wallet.json" # path to a NEO wallet; ignored if key is presented
address : "NcpJzXcSDrh5CCizf4K9Ro6w4t59J5LKzz" # address of a NEO account in the wallet; ignored if key is presented
password : "password" # password for a NEO account in the wallet; ignored if key is presented
addresses : # list of addresses announced by Storage node in the Network map
2022-12-23 20:35:35 +03:00
- s01.frostfs.devenv:8080
- /dns4/s02.frostfs.devenv/tcp/8081
2021-06-24 15:41:19 +03:00
- grpc://127.0.0.1:8082
- grpcs://localhost:8083
2021-06-01 20:42:57 +03:00
attribute_0 : "Price:11"
attribute_1 : UN-LOCODE:RU MSK
2021-10-04 20:04:25 +03:00
relay : true # start Storage node in relay mode without bootstrapping into the Network map
2022-03-21 15:22:07 +03:00
persistent_sessions :
2022-09-13 12:13:54 +04:00
path: /sessions # path to persistent session tokens file of Storage node (default : in-memory sessions)
2022-03-21 15:22:07 +03:00
persistent_state :
path : /state # path to persistent state file of Storage node
2021-06-01 20:42:57 +03:00
2021-06-01 21:50:01 +03:00
grpc :
2022-12-23 20:35:35 +03:00
- endpoint : s01.frostfs.devenv:8080 # endpoint for gRPC server
2021-06-22 20:25:18 +03:00
tls :
2021-11-30 13:07:46 +03:00
enabled : true # use TLS for a gRPC connection (min version is TLS 1.2)
2021-10-04 20:04:25 +03:00
certificate : /path/to/cert # path to TLS certificate
key : /path/to/key # path to TLS key
2021-06-22 20:25:18 +03:00
2022-12-23 20:35:35 +03:00
- endpoint : s02.frostfs.devenv:8080 # endpoint for gRPC server
2021-06-22 20:25:18 +03:00
tls :
2021-10-04 20:04:25 +03:00
enabled : false # use TLS for a gRPC connection
2022-12-23 20:35:35 +03:00
- endpoint : s03.frostfs.devenv:8080
2021-11-30 13:07:46 +03:00
tls :
enabled : true
use_insecure_crypto : true # allow using insecure ciphers with TLS 1.2
2021-06-01 21:50:01 +03:00
2022-07-19 11:03:13 +03:00
tree :
2022-07-26 12:47:19 +03:00
enabled : true
cache_size : 15
replication_worker_count : 32
replication_channel_capacity : 32
2022-12-14 19:28:44 +03:00
replication_timeout : 5s
2022-12-10 13:59:18 +03:00
sync_interval : 1h
2023-07-12 15:37:35 +03:00
authorized_keys : # list of hex-encoded public keys that have rights to use the Tree Service with frostfs-cli
- 0397d207ea77909f7d66fa6f36d08daae22ace672be7ea4f53513484dde8a142a0
- 02053819235c20d784132deba10bb3061629e3a5c819a039ef091841d9d35dad56
2022-07-19 11:03:13 +03:00
2021-06-01 16:28:30 +03:00
control :
2021-10-04 20:04:25 +03:00
authorized_keys : # list of hex-encoded public keys that have rights to use the Control Service
2021-06-01 16:28:30 +03:00
- 035839e45d472a3b7769a2a1bd7d54c4ccd4943c3b40f547870e83a8fcbfb3ce11
- 028f42cfcb74499d7b15b35d9bff260a1c8d27de4f446a627406a382d8961486d6
grpc :
2022-07-13 11:58:10 +03:00
endpoint : localhost:8090 # endpoint that is listened by the Control Service
2021-06-01 16:28:30 +03:00
2021-10-04 20:04:25 +03:00
contracts : # side chain NEOFS contract script hashes; optional, override values retrieved from NNS contract
2021-06-01 15:51:28 +03:00
balance : 5263abba1abedbf79bb57f3e40b50b4425d2d6cd
container : 5d084790d7aa36cea7b53fe897380dab11d2cd3c
netmap : 0cce9e948dca43a6b592efe59ddb4ecb89bdd9ca
2021-08-24 15:59:28 +03:00
proxy : ad7c6b55b737b696e5c82c85445040964a03e97f
2021-06-01 15:51:28 +03:00
2021-06-01 17:33:45 +03:00
morph :
2021-10-04 20:04:25 +03:00
dial_timeout : 30s # timeout for side chain NEO RPC client connection
2022-08-16 15:59:30 +04:00
cache_ttl : 15s # Sidechain cache TTL value (min interval between similar calls). Negative value disables caching.
2022-10-12 19:47:33 +03:00
# Default value: block time. It is recommended to have this value less or equal to block time.
# Cached entities: containers, container lists, eACL tables.
switch_interval : 3m # interval b/w RPC switch attempts if the node is connected not to the highest priority node
2021-10-04 20:04:25 +03:00
rpc_endpoint : # side chain NEO RPC endpoints; are shuffled and used one by one until the first success
2023-02-03 17:59:15 +03:00
- address : wss://rpc1.morph.frostfs.info:40341/ws
2022-08-02 14:31:21 +03:00
priority : 0
2024-06-11 15:48:06 +03:00
trusted_ca_list :
- "/path/to/ca.pem"
certificate : "/path/to/cert"
key : "/path/to/key"
2023-02-03 17:59:15 +03:00
- address : wss://rpc2.morph.frostfs.info:40341/ws
2022-08-02 14:31:21 +03:00
priority : 2
2024-03-15 10:10:03 +03:00
ape_chain_cache_size : 100000
2021-06-01 17:33:45 +03:00
2021-06-02 15:20:05 +03:00
apiclient :
2023-02-03 17:59:15 +03:00
dial_timeout : 15s # timeout for FrostFS API client connection
2022-09-06 18:23:59 +03:00
stream_timeout : 20s # timeout for individual operations in a streaming RPC
2022-09-26 15:34:01 +03:00
allow_external : true # allow to fallback to addresses in `ExternalAddr` attribute
2022-12-19 18:03:48 +03:00
reconnect_timeout : 30s # time to wait before reconnecting to a failed node
2021-06-02 15:20:05 +03:00
2021-06-02 15:23:41 +03:00
policer :
2021-10-04 20:04:25 +03:00
head_timeout : 15s # timeout for the Policer HEAD remote operation
2021-06-02 15:23:41 +03:00
2021-06-02 15:26:51 +03:00
replicator :
2021-10-04 20:04:25 +03:00
put_timeout : 15s # timeout for the Replicator PUT remote operation
2022-11-12 15:23:33 +03:00
pool_size : 10 # maximum amount of concurrent replications
2021-06-02 15:26:51 +03:00
2021-06-02 15:31:29 +03:00
object :
2023-02-08 17:28:38 +03:00
delete :
tombstone_lifetime : 10 # tombstone "local" lifetime in epochs
2021-06-02 15:31:29 +03:00
put :
2023-11-21 13:20:36 +03:00
remote_pool_size : 100 # number of async workers for remote PUT operations
local_pool_size : 200 # number of async workers for local PUT operations
2023-07-28 15:44:35 +03:00
skip_session_token_issuer_verification : true # session token issuer verification will be skipped if true
2021-06-02 15:31:29 +03:00
2021-06-01 21:24:01 +03:00
storage :
2021-11-12 13:44:59 +03:00
# note: shard configuration can be omitted for relay node (see `node.relay`)
2021-10-08 16:25:56 +03:00
shard_pool_size : 15 # size of per-shard worker pools used for PUT operations
2022-02-01 11:15:54 +03:00
shard_ro_error_threshold: 100 # amount of errors to occur before shard is made read-only (default : 0 , ignore errors)
2021-10-18 16:38:04 +03:00
2021-06-01 21:24:01 +03:00
shard :
2022-07-13 11:52:53 +03:00
default : # section with the default shard parameters
resync_metabase : true # sync metabase with blobstor on start, expensive, leave false until complete understanding
writecache :
enabled : true
2022-07-14 14:49:42 +03:00
small_object_size : 16k # size threshold for "small" objects which are cached in key-value DB, not in FS, bytes
2022-07-13 11:52:53 +03:00
max_object_size : 134217728 # size threshold for "big" objects which bypass write-cache and go to the storage directly, bytes
2023-11-21 13:20:36 +03:00
flush_worker_count : 30 # number of write-cache flusher threads
2022-07-13 11:52:53 +03:00
metabase :
perm: 0644 # permissions for metabase files(directories : +x for current user and group)
max_batch_size : 200
max_batch_delay : 20ms
2022-06-09 11:09:18 +03:00
pilorama :
max_batch_delay : 5ms # maximum delay for a batch of operations to be executed
max_batch_size : 100 # maximum amount of operations in a single batch
2022-07-11 15:34:17 +03:00
compress : false # turn on/off zstd(level 3) compression of stored objects
small_object_size : 100 kb # size threshold for "small" objects which are cached in key-value DB, not in FS, bytes
2022-07-13 11:52:53 +03:00
2022-07-11 15:34:17 +03:00
blobstor :
- size: 4m # approximate size limit of single blobovnicza instance, total size will be : size*width^(depth+1), bytes
perm: 0644 # permissions for blobstor files(directories : +x for current user and group)
2022-07-13 11:52:53 +03:00
depth : 1 # max depth of object tree storage in key-value DB
width : 4 # max width of object tree storage in key-value DB
opened_cache_capacity : 50 # maximum number of opened database files
2024-03-01 14:43:26 +03:00
opened_cache_ttl : 5m # ttl for opened database file
opened_cache_exp_interval : 15s # cache cleanup interval for expired blobovnicza's
2022-07-11 15:34:17 +03:00
- perm: 0644 # permissions for blobstor files(directories : +x for current user and group)
depth : 5 # max depth of object tree storage in FS
2022-07-13 11:52:53 +03:00
gc :
remover_batch_size : 200 # number of objects to be removed by the garbage collector
remover_sleep_interval : 5m # frequency of the garbage collector invocation
2021-06-01 21:24:01 +03:00
0 :
2022-10-14 14:08:50 +04:00
mode : read-only # mode of the shard, must be one of the :
# read-write (default)
# read-only
# degraded
# degraded-read-only
# disabled (do not work with the shard, allows to not remove it from the config)
2021-12-27 15:03:24 +03:00
resync_metabase : false # sync metabase with blobstor on start, expensive, leave false until complete understanding
2024-03-05 15:39:50 +03:00
resync_metabase_worker_count : 100
2021-09-13 16:58:37 +03:00
2021-06-01 21:24:01 +03:00
writecache :
2022-01-27 14:30:19 +03:00
enabled : false
2022-10-28 13:09:38 +03:00
no_sync : true
2021-10-04 20:04:25 +03:00
path : tmp/0/cache # write-cache root directory
2021-10-18 17:29:30 +03:00
capacity : 3221225472 # approximate write-cache total size, bytes
2024-08-06 15:09:12 +03:00
max_object_count : 49
2024-08-08 13:32:18 +03:00
page_size : 4k
2024-09-10 12:56:29 +03:00
max_flushing_objects_size : 100b
2021-06-01 21:24:01 +03:00
metabase :
2021-10-04 20:04:25 +03:00
path : tmp/0/meta # metabase path
2022-06-15 09:59:51 +03:00
max_batch_size : 100
max_batch_delay : 10ms
2021-06-01 21:24:01 +03:00
2022-07-11 15:34:17 +03:00
compress : true # turn on/off zstd(level 3) compression of stored objects
compression_exclude_content_types :
- audio/*
- video/*
2023-10-31 14:45:22 +03:00
compression_estimate_compressibility : true
compression_estimate_compressibility_threshold : 0.7
2022-07-11 15:34:17 +03:00
2021-06-01 21:24:01 +03:00
blobstor :
2022-07-11 15:34:17 +03:00
- type : blobovnicza
path : tmp/0/blob/blobovnicza
2023-09-22 17:08:48 +03:00
init_worker_count : 10 #count of workers to initialize blobovniczas
2024-03-04 18:01:39 +03:00
rebuild_drop_timeout : 30s # timeout before drop single blobovnicza
2024-05-15 09:45:31 +03:00
opened_cache_ttl : 1m
opened_cache_exp_interval : 30s
2022-07-11 15:34:17 +03:00
- type : fstree
path : tmp/0/blob # blobstor path
2021-06-01 21:24:01 +03:00
2022-06-09 11:09:18 +03:00
pilorama :
path : tmp/0/blob/pilorama.db # path to the pilorama database. If omitted, `pilorama.db` file is created blobstor.path
max_batch_delay : 10ms
max_batch_size : 200
2021-06-01 21:24:01 +03:00
gc :
2021-10-04 20:04:25 +03:00
remover_batch_size : 150 # number of objects to be removed by the garbage collector
remover_sleep_interval : 2m # frequency of the garbage collector invocation
2023-03-17 11:06:15 +03:00
expired_collector_batch_size : 1500 # number of objects to be marked expired by the garbage collector
2023-11-21 13:20:36 +03:00
expired_collector_worker_count : 15 # number of concurrent workers collecting expired objects by the garbage collector
2021-06-01 21:24:01 +03:00
1 :
writecache :
2021-10-04 20:04:25 +03:00
path : tmp/1/cache # write-cache root directory
2022-07-14 14:49:42 +03:00
capacity : 4 G # approximate write-cache total size, bytes
2021-06-01 21:24:01 +03:00
metabase :
2021-10-04 20:04:25 +03:00
path : tmp/1/meta # metabase path
2021-06-01 21:24:01 +03:00
blobstor :
2022-07-11 15:34:17 +03:00
- type : blobovnicza
path : tmp/1/blob/blobovnicza
- type : fstree
path : tmp/1/blob # blobstor path
2022-10-28 13:00:11 +03:00
no_sync : true
2022-06-09 11:09:18 +03:00
pilorama :
path : tmp/1/blob/pilorama.db
no_sync : true # USE WITH CAUTION. Return to user before pages have been persisted.
perm : 0644 # permission to use for the database file and intermediate directories
2023-03-13 14:01:43 +03:00
tracing :
enabled : true
exporter : "otlp_grpc"
endpoint : "localhost"
2024-09-12 17:40:10 +03:00
trusted_ca : ""
2023-07-25 10:07:38 +03:00
runtime :
soft_memory_limit : 1gb
2024-06-18 12:34:42 +03:00
audit :
enabled : true