summaryrefslogtreecommitdiffstats
path: root/docs/performance/gluster.txt
blob: ada9a9c1e31a9a9435ecabe7da8ec0c274880356 (plain)
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
# Changed (for katrin_data)
gluster volume set katrin_data server.event-threads 8 # 1
gluster volume set katrin_data client.event-threads 8 # 2
gluster volume set katrin_data performance.io-thread-count 32 # 16
gluster volume set katrin_data cluster.lookup-optimize on # off
gluster volume set katrin_data cluster.readdir-optimize on # off

# Already set
performance.stat-prefetch: on
performance.readdir-ahead: on
performance.io-cache: on
cluster.choose-local: true
performance.flush-behind: on
performance.write-behind-window-size: 1MB

# Shall we ?
gluster volume set katrin_data server.outstanding-rpc-limit # 64

# Does this cache (per-client size) makes sence with 1-10s delay?
gluster volume set katrin_data performance.cache-refresh-timeout 10 # 1 (seconds)
gluster volume set katrin_data performance.cache-size 1GB # 32MB 
gluster volume set katrin_data performance.write-behind-window-size # 1MB
gluster volume set katrin_data performance.cache-max-file-size 2MB # 0 (unlimited)

# Major, but seems to affect only Samba/NFS in 3.x
gluster volume set katrin_data features.cache-invalidation on # off
gluster volume set katrin_data performance.cache-invalidation on # off
gluster volume set katrin_data features.cache-invalidation-timeout 600 # 60
gluster volume set katrin_data performance.md-cache-timeout 600 # 1

# Not recommended
gluster volume set katrin_data performance.client-io-threads on # off


Systemctl (not applied as we use rdma anyway)
=========
sysctl -w net.ipv4.tcp_congestion_control=htcp # cubic
sysctl -w net.ipv4.tcp_mtu_probing=1				# recommended for hosts with jumbo frames enabled

# Optimal value unclear (big value may harm small file performance)
sysctl -w net.ipv4.tcp_rmem = 4096 87380 33554432		# increase Linux autotuning TCP buffer limit to 32MB
sysctl -w net.ipv4.tcp_wmem = 4096 87380 33554432
sysctl -w net.core.rmem_max = 67108864				# allow testing with buffers up to 64MB
sysctl -w net.core.wmem_max = 67108864
sysctl -w net.core.netdev_max_backlog = 30000			# increase the length of the processor input queue