frostfs-node/config/example/node.env
Dmitrii Stepanov 5059dcc19d [] shard-gc: Delete expired objects after locks
GC deletes expired locks and objects sequentially. Expired locks and
objects are now being deleted concurrently in batches. Added a config
parameter that controls the number of concurrent workers and batch size.

Signed-off-by: Dmitrii Stepanov <d.stepanov@yadro.com>
2023-03-21 11:31:08 +03:00

186 lines
7.2 KiB
Bash

FROSTFS_LOGGER_LEVEL=debug
FROSTFS_PPROF_ENABLED=true
FROSTFS_PPROF_ADDRESS=localhost:6060
FROSTFS_PPROF_SHUTDOWN_TIMEOUT=15s
FROSTFS_PROMETHEUS_ENABLED=true
FROSTFS_PROMETHEUS_ADDRESS=localhost:9090
FROSTFS_PROMETHEUS_SHUTDOWN_TIMEOUT=15s
# Node section
FROSTFS_NODE_KEY=./wallet.key
FROSTFS_NODE_WALLET_PATH=./wallet.json
FROSTFS_NODE_WALLET_ADDRESS=NcpJzXcSDrh5CCizf4K9Ro6w4t59J5LKzz
FROSTFS_NODE_WALLET_PASSWORD=password
FROSTFS_NODE_ADDRESSES="s01.frostfs.devenv:8080 /dns4/s02.frostfs.devenv/tcp/8081 grpc://127.0.0.1:8082 grpcs://localhost:8083"
FROSTFS_NODE_ATTRIBUTE_0=Price:11
FROSTFS_NODE_ATTRIBUTE_1="UN-LOCODE:RU MSK"
FROSTFS_NODE_RELAY=true
FROSTFS_NODE_PERSISTENT_SESSIONS_PATH=/sessions
FROSTFS_NODE_PERSISTENT_STATE_PATH=/state
FROSTFS_NODE_SUBNET_EXIT_ZERO=true
FROSTFS_NODE_SUBNET_ENTRIES=123 456 789
FROSTFS_NODE_NOTIFICATION_ENABLED=true
FROSTFS_NODE_NOTIFICATION_ENDPOINT=tls://localhost:4222
FROSTFS_NODE_NOTIFICATION_TIMEOUT=6s
FROSTFS_NODE_NOTIFICATION_DEFAULT_TOPIC=topic
FROSTFS_NODE_NOTIFICATION_CERTIFICATE=/cert/path
FROSTFS_NODE_NOTIFICATION_KEY=/key/path
FROSTFS_NODE_NOTIFICATION_CA=/ca/path
# Tree service section
FROSTFS_TREE_ENABLED=true
FROSTFS_TREE_CACHE_SIZE=15
FROSTFS_TREE_REPLICATION_CHANNEL_CAPACITY=32
FROSTFS_TREE_REPLICATION_WORKER_COUNT=32
FROSTFS_TREE_REPLICATION_TIMEOUT=5s
FROSTFS_TREE_SYNC_INTERVAL=1h
# gRPC section
## 0 server
FROSTFS_GRPC_0_ENDPOINT=s01.frostfs.devenv:8080
### TLS config
FROSTFS_GRPC_0_TLS_ENABLED=true
FROSTFS_GRPC_0_TLS_CERTIFICATE=/path/to/cert
FROSTFS_GRPC_0_TLS_KEY=/path/to/key
## 1 server
FROSTFS_GRPC_1_ENDPOINT=s02.frostfs.devenv:8080
### TLS config
FROSTFS_GRPC_1_TLS_ENABLED=false
# Control service section
FROSTFS_CONTROL_AUTHORIZED_KEYS="035839e45d472a3b7769a2a1bd7d54c4ccd4943c3b40f547870e83a8fcbfb3ce11 028f42cfcb74499d7b15b35d9bff260a1c8d27de4f446a627406a382d8961486d6"
FROSTFS_CONTROL_GRPC_ENDPOINT=localhost:8090
# Contracts section
FROSTFS_CONTRACTS_BALANCE=5263abba1abedbf79bb57f3e40b50b4425d2d6cd
FROSTFS_CONTRACTS_CONTAINER=5d084790d7aa36cea7b53fe897380dab11d2cd3c
FROSTFS_CONTRACTS_NETMAP=0cce9e948dca43a6b592efe59ddb4ecb89bdd9ca
FROSTFS_CONTRACTS_REPUTATION=441995f631c1da2b133462b71859494a5cd45e90
FROSTFS_CONTRACTS_PROXY=ad7c6b55b737b696e5c82c85445040964a03e97f
# Morph chain section
FROSTFS_MORPH_DIAL_TIMEOUT=30s
FROSTFS_MORPH_CACHE_TTL=15s
FROSTFS_MORPH_SWITCH_INTERVAL=3m
FROSTFS_MORPH_RPC_ENDPOINT_0_ADDRESS="wss://rpc1.morph.frostfs.info:40341/ws"
FROSTFS_MORPH_RPC_ENDPOINT_0_PRIORITY=0
FROSTFS_MORPH_RPC_ENDPOINT_1_ADDRESS="wss://rpc2.morph.frostfs.info:40341/ws"
FROSTFS_MORPH_RPC_ENDPOINT_1_PRIORITY=2
# API Client section
FROSTFS_APICLIENT_DIAL_TIMEOUT=15s
FROSTFS_APICLIENT_STREAM_TIMEOUT=20s
FROSTFS_APICLIENT_RECONNECT_TIMEOUT=30s
FROSTFS_APICLIENT_ALLOW_EXTERNAL=true
# Policer section
FROSTFS_POLICER_HEAD_TIMEOUT=15s
# Replicator section
FROSTFS_REPLICATOR_PUT_TIMEOUT=15s
FROSTFS_REPLICATOR_POOL_SIZE=10
# Object service section
FROSTFS_OBJECT_PUT_POOL_SIZE_REMOTE=100
FROSTFS_OBJECT_PUT_POOL_SIZE_LOCAL=200
FROSTFS_OBJECT_DELETE_TOMBSTONE_LIFETIME=10
# Storage engine section
FROSTFS_STORAGE_SHARD_POOL_SIZE=15
FROSTFS_STORAGE_SHARD_RO_ERROR_THRESHOLD=100
## 0 shard
### Flag to refill Metabase from BlobStor
FROSTFS_STORAGE_SHARD_0_RESYNC_METABASE=false
### Flag to set shard mode
FROSTFS_STORAGE_SHARD_0_MODE=read-only
### Write cache config
FROSTFS_STORAGE_SHARD_0_WRITECACHE_ENABLED=false
FROSTFS_STORAGE_SHARD_0_WRITECACHE_NO_SYNC=true
FROSTFS_STORAGE_SHARD_0_WRITECACHE_PATH=tmp/0/cache
FROSTFS_STORAGE_SHARD_0_WRITECACHE_SMALL_OBJECT_SIZE=16384
FROSTFS_STORAGE_SHARD_0_WRITECACHE_MAX_OBJECT_SIZE=134217728
FROSTFS_STORAGE_SHARD_0_WRITECACHE_WORKERS_NUMBER=30
FROSTFS_STORAGE_SHARD_0_WRITECACHE_CAPACITY=3221225472
### Metabase config
FROSTFS_STORAGE_SHARD_0_METABASE_PATH=tmp/0/meta
FROSTFS_STORAGE_SHARD_0_METABASE_PERM=0644
FROSTFS_STORAGE_SHARD_0_METABASE_MAX_BATCH_SIZE=100
FROSTFS_STORAGE_SHARD_0_METABASE_MAX_BATCH_DELAY=10ms
### Blobstor config
FROSTFS_STORAGE_SHARD_0_COMPRESS=true
FROSTFS_STORAGE_SHARD_0_COMPRESSION_EXCLUDE_CONTENT_TYPES="audio/* video/*"
FROSTFS_STORAGE_SHARD_0_SMALL_OBJECT_SIZE=102400
### Blobovnicza config
FROSTFS_STORAGE_SHARD_0_BLOBSTOR_0_PATH=tmp/0/blob/blobovnicza
FROSTFS_STORAGE_SHARD_0_BLOBSTOR_0_PERM=0644
FROSTFS_STORAGE_SHARD_0_BLOBSTOR_0_TYPE=blobovnicza
FROSTFS_STORAGE_SHARD_0_BLOBSTOR_0_SIZE=4194304
FROSTFS_STORAGE_SHARD_0_BLOBSTOR_0_DEPTH=1
FROSTFS_STORAGE_SHARD_0_BLOBSTOR_0_WIDTH=4
FROSTFS_STORAGE_SHARD_0_BLOBSTOR_0_OPENED_CACHE_CAPACITY=50
### FSTree config
FROSTFS_STORAGE_SHARD_0_BLOBSTOR_1_TYPE=fstree
FROSTFS_STORAGE_SHARD_0_BLOBSTOR_1_PATH=tmp/0/blob
FROSTFS_STORAGE_SHARD_0_BLOBSTOR_1_PERM=0644
FROSTFS_STORAGE_SHARD_0_BLOBSTOR_1_DEPTH=5
### Pilorama config
FROSTFS_STORAGE_SHARD_0_PILORAMA_PATH="tmp/0/blob/pilorama.db"
FROSTFS_STORAGE_SHARD_0_PILORAMA_MAX_BATCH_DELAY=10ms
FROSTFS_STORAGE_SHARD_0_PILORAMA_MAX_BATCH_SIZE=200
### GC config
#### Limit of the single data remover's batching operation in number of objects
FROSTFS_STORAGE_SHARD_0_GC_REMOVER_BATCH_SIZE=150
#### Sleep interval between data remover tacts
FROSTFS_STORAGE_SHARD_0_GC_REMOVER_SLEEP_INTERVAL=2m
#### Limit of objects to be marked expired by the garbage collector
FROSTFS_STORAGE_SHARD_0_GC_EXPIRED_COLLECTOR_BATCH_SIZE=1500
#### Limit of concurrent workers collecting expired objects by the garbage collector
FROSTFS_STORAGE_SHARD_0_GC_EXPIRED_COLLECTOR_WORKERS_COUNT=15
## 1 shard
### Flag to refill Metabase from BlobStor
FROSTFS_STORAGE_SHARD_1_RESYNC_METABASE=true
### Flag to set shard mode
FROSTFS_STORAGE_SHARD_1_MODE=read-write
### Write cache config
FROSTFS_STORAGE_SHARD_1_WRITECACHE_ENABLED=true
FROSTFS_STORAGE_SHARD_1_WRITECACHE_PATH=tmp/1/cache
FROSTFS_STORAGE_SHARD_1_WRITECACHE_SMALL_OBJECT_SIZE=16384
FROSTFS_STORAGE_SHARD_1_WRITECACHE_MAX_OBJECT_SIZE=134217728
FROSTFS_STORAGE_SHARD_1_WRITECACHE_WORKERS_NUMBER=30
FROSTFS_STORAGE_SHARD_1_WRITECACHE_CAPACITY=4294967296
### Metabase config
FROSTFS_STORAGE_SHARD_1_METABASE_PATH=tmp/1/meta
FROSTFS_STORAGE_SHARD_1_METABASE_PERM=0644
FROSTFS_STORAGE_SHARD_1_METABASE_MAX_BATCH_SIZE=200
FROSTFS_STORAGE_SHARD_1_METABASE_MAX_BATCH_DELAY=20ms
### Blobstor config
FROSTFS_STORAGE_SHARD_1_COMPRESS=false
FROSTFS_STORAGE_SHARD_1_SMALL_OBJECT_SIZE=102400
### Blobovnicza config
FROSTFS_STORAGE_SHARD_1_BLOBSTOR_0_TYPE=blobovnicza
FROSTFS_STORAGE_SHARD_1_BLOBSTOR_0_PATH=tmp/1/blob/blobovnicza
FROSTFS_STORAGE_SHARD_1_BLOBSTOR_0_SIZE=4194304
FROSTFS_STORAGE_SHARD_1_BLOBSTOR_0_DEPTH=1
FROSTFS_STORAGE_SHARD_1_BLOBSTOR_0_WIDTH=4
FROSTFS_STORAGE_SHARD_1_BLOBSTOR_0_OPENED_CACHE_CAPACITY=50
### FSTree config
FROSTFS_STORAGE_SHARD_1_BLOBSTOR_1_TYPE=fstree
FROSTFS_STORAGE_SHARD_1_BLOBSTOR_1_PATH=tmp/1/blob
FROSTFS_STORAGE_SHARD_1_BLOBSTOR_1_PERM=0644
FROSTFS_STORAGE_SHARD_1_BLOBSTOR_1_NO_SYNC=true
FROSTFS_STORAGE_SHARD_1_BLOBSTOR_1_DEPTH=5
### Pilorama config
FROSTFS_STORAGE_SHARD_1_PILORAMA_PATH="tmp/1/blob/pilorama.db"
FROSTFS_STORAGE_SHARD_1_PILORAMA_PERM=0644
FROSTFS_STORAGE_SHARD_1_PILORAMA_NO_SYNC=true
FROSTFS_STORAGE_SHARD_1_PILORAMA_MAX_BATCH_DELAY=5ms
FROSTFS_STORAGE_SHARD_1_PILORAMA_MAX_BATCH_SIZE=100
### GC config
#### Limit of the single data remover's batching operation in number of objects
FROSTFS_STORAGE_SHARD_1_GC_REMOVER_BATCH_SIZE=200
#### Sleep interval between data remover tacts
FROSTFS_STORAGE_SHARD_1_GC_REMOVER_SLEEP_INTERVAL=5m