volume client21
type
protocol/client
option transport-type
tcp/client # for TCP/IP transport
option remote-host 192.168.13.4 # IP
address of the remote brick
# option remote-port
6996
# default server port is 6996
# option transport-timeout
30 # seconds
to wait for a
response
# from server for each request
option remote-subvolume
brick1 # name of the
remote volume
end-volume
volume client22
type
protocol/client
option transport-type
tcp/client # for TCP/IP transport
option remote-host 192.168.13.4 # IP
address of the remote brick
# option remote-port
6996
# default server port is 6996
# option transport-timeout
30 # seconds
to wait for a
response
# from server for each request
option remote-subvolume
brick2 # name of the
remote volume
end-volume
volume client31
type protocol/client
option
transport-type tcp/client # for TCP/IP
transport
option remote-host
192.168.13.5 # IP address of the
remote brick
# option remote-port
6996
# default server port is 6996
# option transport-timeout
30 # seconds
to wait for a
response
# from server for each request
option remote-subvolume
brick1 # name of the
remote volume
end-volume
volume client32
type
protocol/client
option transport-type
tcp/client # for TCP/IP transport
option remote-host 192.168.13.5 # IP
address of the remote brick
# option remote-port
6996
# default server port is 6996
# option transport-timeout
30 # seconds
to wait for a
response
# from server for each request
option remote-subvolume
brick2 # name of the
remote volume
end-volume
volume client41
type
protocol/client
option transport-type
tcp/client # for TCP/IP transport
option remote-host 192.168.13.7 # IP
address of the remote brick
# option remote-port
6996
# default server port is 6996
# option transport-timeout
30 # seconds
to wait for a
response
# from server for each request
option remote-subvolume
brick1 # name of the
remote volume
end-volume
volume client42
type
protocol/client
option transport-type
tcp/client # for TCP/IP transport
option remote-host 192.168.13.7 # IP
address of the remote brick
# option remote-port
6996
# default server port is 6996
# option transport-timeout
30 # seconds
to wait for a
response
# from server for each request
option remote-subvolume
brick2 # name of the
remote volume
end-volume
volume afr1
type cluster/afr
subvolumes client11 client21
option debug
off # turns on detailed debug
messages
# in log by default is debugging off
option self-heal
on # turn off self healing default is
on
end-volume
volume afr2
type cluster/afr
subvolumes client31 client41
option debug
off # turns on detailed debug
messages
# in log by default is debugging off
option self-heal
on # turn off self healing default is
on
end-volume
volume afr3
type cluster/afr
subvolumes client12 client22
option debug
off # turns on detailed debug
messages
# in log by default is debugging off
option self-heal
on # turn off self healing default is
on
end-volume
volume afr4
type cluster/afr
subvolumes client32 client42
option debug
off # turns on detailed debug
messages
# in log by default is debugging off
option self-heal
on # turn off self healing default is
on
end-volume
volume stripe1
type
cluster/stripe
option block-size
1MB
#default size is 128KB
subvolumes afr1
afr2
end-volume
volume stripe2
type
cluster/stripe
option block-size
1MB
#default size is 128KB
subvolumes afr3
afr4
end-volume
volume bricks
type cluster/unify
subvolumes stripe1 stripe2
option namespace client-ns
option
scheduler alu
# option alu.limits.min-free-disk
5% # Don't create files one a volume with less than 5% free
diskspace
# option alu.limits.max-open-files 10000 # Don't create
files on a volume with more than 10000 files open
# When deciding where to place a file, first
look at the disk-usage, then at read-usage, write-usage, open files, and finally
the
disk-speed-usage.
option alu.order
disk-usage:read-usage:write-usage:open-files-usage:disk-speed-usage
option alu.disk-usage.entry-threshold 2GB # Kick in if the
discrepancy in disk-usage between volumes is more than 2GB
option
alu.disk-usage.exit-threshold 60MB # Don't stop writing to the
least-used volume until the discrepancy is 1988MB
option
alu.open-files-usage.entry-threshold 1024 # Kick in if the
discrepancy in open files is 1024
option
alu.open-files-usage.exit-threshold 32 # Don't stop until 992 files
have been written the least-used volume
option
alu.read-usage.entry-threshold 20% # Kick in when the read-usage
discrepancy is 20%
option alu.read-usage.exit-threshold 4%
# Don't stop until the discrepancy has been reduced to 16% (20% - 4%)
option alu.write-usage.entry-threshold 20% # Kick in when the
write-usage discrepancy is 20%
option alu.write-usage.exit-threshold
4% # Don't stop until the discrepancy has been reduced to
16%
# option alu.disk-speed-usage.entry-threshold # NEVER SET IT. SPEED
IS CONSTANT!!!
# option alu.disk-speed-usage.exit-threshold #
NEVER SET IT. SPEED IS CONSTANT!!!
option alu.stat-refresh.interval
10sec # Refresh the statistics used for decision-making every 10
seconds
option alu.stat-refresh.num-file-create 10 #
Refresh the statistics used for decision-making after creating 10
files
end-volume
### Add io-threads feature
volume iot
type
performance/io-threads
subvolumes bricks #stripe #afr
#bricks
end-volume
### Add readahead feature
volume readahead
type performance/read-ahead
option page-size
1MB # unit in bytes
option page-count
2 # cache per file = (page-count x
page-size)
subvolumes iot
end-volume
### Add IO-Cache feature
volume iocache
type performance/io-cache
option page-size 256KB
option
page-count 2
subvolumes readahead
end-volume
### Add writeback feature
volume writeback
type performance/write-behind
option aggregate-size 1MB #option
flush-behind off
subvolumes iocache
end-volume
### Add io-threads feature
volume
iot_stripe1
type performance/io-threads
subvolumes
stripe1
end-volume
### Add readahead feature
volume
readahead_stripe1
type performance/read-ahead
option
page-size 1MB # unit in bytes
option
page-count 2 # cache per file =
(page-count x page-size)
subvolumes
iot_stripe1
end-volume
### Add IO-Cache feature
volume
iocache_stripe1
type performance/io-cache
option page-size
256KB
option page-count 2
subvolumes
readahead_stripe1
end-volume
### Add writeback feature
volume
writeback_stripe1
type performance/write-behind
option
aggregate-size 1MB #option flush-behind off
subvolumes
iocache_stripe1
end-volume
### Add io-threads feature
volume
iot_stripe2
type performance/io-threads
subvolumes
stripe2
end-volume
### Add readahead feature
volume
readahead_stripe2
type performance/read-ahead
option
page-size 1MB # unit in bytes
option
page-count 2 # cache per file =
(page-count x page-size)
subvolumes
iot_stripe2
end-volume
### Add IO-Cache feature
volume
iocache_stripe2
type performance/io-cache
option page-size
256KB
option page-count 2
subvolumes
readahead_stripe2
end-volume
### Add writeback feature
volume
writeback_stripe2
type performance/write-behind
option
aggregate-size 1MB #option flush-behind off
subvolumes
iocache_stripe2
end-volume
### Add io-threads feature
volume
iot_afr1
type performance/io-threads
subvolumes
afr1
end-volume
### Add readahead feature
volume
readahead_afr1
type performance/read-ahead
option page-size
1MB # unit in bytes
option page-count
2 # cache per file = (page-count x
page-size)
subvolumes iot_afr1
end-volume
### Add IO-Cache feature
volume
iocache_afr1
type performance/io-cache
option page-size
256KB
option page-count 2
subvolumes
readahead_afr1
end-volume
### Add writeback feature
volume
writeback_afr1
type performance/write-behind
option
aggregate-size 1MB #option flush-behind off
subvolumes
iocache_afr1
end-volume
### Add io-threads feature
volume iot_afr2
type performance/io-threads
subvolumes afr2
end-volume
### Add readahead feature
volume
readahead_afr2
type performance/read-ahead
option page-size
1MB # unit in bytes
option page-count
2 # cache per file = (page-count x
page-size)
subvolumes iot_afr2
end-volume
### Add IO-Cache feature
volume
iocache_afr2
type performance/io-cache
option page-size
256KB
option page-count 2
subvolumes
readahead_afr2
end-volume
### Add writeback feature
volume
writeback_afr2
type performance/write-behind
option
aggregate-size 1MB #option flush-behind off
subvolumes
iocache_afr2
end-volume
### Add io-threads feature
volume iot_afr3
type performance/io-threads
subvolumes
afr3
end-volume
### Add readahead feature
volume
readahead_afr3
type performance/read-ahead
option page-size
1MB # unit in bytes
option page-count
2 # cache per file = (page-count x
page-size)
subvolumes iot_afr3
end-volume
### Add IO-Cache feature
volume
iocache_afr3
type performance/io-cache
option page-size
256KB
option page-count 2
subvolumes
readahead_afr3
end-volume
### Add writeback feature
volume
writeback_afr3
type performance/write-behind
option
aggregate-size 1MB #option flush-behind off
subvolumes
iocache_afr3
end-volume
### Add io-threads feature
volume iot_afr4
type performance/io-threads
subvolumes afr4
end-volume
### Add readahead feature
volume
readahead_afr4
type performance/read-ahead
option page-size
1MB # unit in bytes
option page-count
2 # cache per file = (page-count x
page-size)
subvolumes iot_afr4
end-volume
### Add IO-Cache feature
volume
iocache_afr4
type performance/io-cache
option page-size
256KB
option page-count 2
subvolumes
readahead_afr4
end-volume
### Add writeback feature
volume
writeback_afr4
type performance/write-behind
option
aggregate-size 1MB #option flush-behind off
subvolumes
iocache_afr4
end-volume