summaryrefslogtreecommitdiffstats
path: root/pkg/config/server.conf
blob: 22bd14a245eff5ed75ebb7f616db2be0e0233e69 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
[dnbd3]
; port to listen on (default: 5003)
listenPort=5003

; relative root directory for images, ending in .r[1-9][0-9]*
basePath=/mnt/storage

; artificial connection delay for connecting servers
serverPenalty=100000

; artificial connection delay for connecting clients
clientPenalty=0

; is this server a proxy? if true, requests for non-existing images will be relayed to known alt-servers
isProxy=true

; if proxy is true and an image is incomplete, should idle bandwidth be used to replicate missing blocks?
backgroundReplication=true

; minimum amount of connected clients for background replication to kick in
bgrMinClients=0

; if another proxy requests and image that we don't have, should we ask our alt-servers for it?
lookupMissingForProxy=true

; create sparse files instead of preallocating; ignored if backgroundReplication=true
; -- only recommended if cache space is small
sparseFiles=false

; if true (which is the default), images will automatically be removed from the list if they can't be accessed
removeMissingImages=true

; timeout in ms for send/recv on connections to uplink servers (used for replication)
uplinkTimeout=5000

; timeout in ms for send/recv on connections to clients (using an image on this server)
clientTimeout=15000

; set this to true to close handles of unused images after some timeout
closeUnusedFd=false

; set this to true to load files without the .r[0-9]+ extension too, assuming RID=1
vmdkLegacyMode=false

; Don't set the server flag when connecting to alt-servers
; Intended for if the proxy is used for on-client caching
pretendClient=false

; When running in proxy mode and running out of space, automatically delete oldest image(s) to make
; the newly replicated image fit. In sparse mode, this will make sure at least 2GB of free space are
; available when replicating a new image. During normal operation, it will free at least 256MB whenever
; an attempt to write more data to cache fails. In non-sparse mode, whenever a new image is replicated,
; as much space as is required to store the entire image will be made available.
; However, after startup the proxy will refuse to delete any images for the time span given below, to be
; able to gather up to date usage information for the images available. If unitless, the value is
; interpreted in seconds. Valid suffixes are m, h, d.
; Setting this to -1 disables deletion of images. If the cache partition is full, no more images will
; be replicated unless you manually free up more disk space.
autoFreeDiskSpaceDelay=10h

[limits]
maxClients=2000
maxImages=1000
maxPayload=9M
maxReplicationSize=150G

; Maximum number of bytes to prefetch when relaying client request to upstream server
maxPrefetch=256k

[logging]
; log file path and name
; comment out to disable logging to file
; protip: use SIGUSR2 to reopen log file
file=./dnbd3.log

; which type of messages to log to file
fileMask=ERROR WARNING MINOR INFO DEBUG1

; which type of messages to log to console (stdout)
consoleMask=ERROR WARNING MINOR INFO

; Valid types (warning: specifying invalid types will not yield an error!)
; ERROR     Fatal error, server will terminate
; WARNING   Major issue, something is broken but keep running
; MINOR     Minor issue, more of a hickup than serious problem
; INFO      Informational message
; DEBUG1    Debug information, used for medium verbosity
; DEBUG2    Used for debug messages that would show up a lot

; Whether timestamps should be output to console too (or just to file if false)
consoleTimestamps=false