1 POHMELFS usage information.
4 All but index, number of crypto threads and maximum IO size can changed via remount.
7 Each mountpoint is associated with a special index via this option.
8 Administrator can add or remove servers from the given index, so all mounts,
9 which were attached to it, are updated.
13 This timeout, expressed in milliseconds, specifies time to scan transaction
14 trees looking for stale requests, which have to be resent, or if number of
15 retries exceed specified limit, dropped with error.
19 Internal timeout, expressed in milliseconds, which specifies how frequently
20 inodes marked to be dropped are freed. It also specifies how frequently
21 the system checks that servers have to be added or removed from current working set.
24 wait_on_page_timeout=%u
25 Number of milliseconds to wait for reply from remote server for data reading command.
26 If this timeout is exceeded, reading returns an error.
30 This is the number of times that a transaction will be resent to a server that did
31 not answer for the last @trans_scan_timeout milliseconds.
32 When the number of resends exceeds this limit, the transaction is completed with error.
36 Number of crypto processing threads. Threads are used both for RX and TX traffic.
37 Default is 2, or no threads if crypto operations are not supported.
40 Maximum number of pages in a single transaction. This parameter also controls
41 the number of pages, allocated for crypto processing (each crypto thread has
42 pool of pages, the number of which is equal to 'trans_max_pages'.
45 crypto_fail_unsupported
46 If specified, mount will fail if the server does not support requested crypto operations.
47 By default mount will disable non-matching crypto operations.
50 Maximum number of milliseconds to wait for the mcache objects to be processed.
51 Mcache includes locks (given lock should be granted by server), attributes (they should be
52 fully received in the given timeframe).
57 Add server server1.net:1025 into the working set with index $idx
58 with appropriate hash algorithm and key file and cipher algorithm, mode and key file:
59 $cfg A add -a server1.net -p 1025 -i $idx -K $hash_key -k $cipher_key
61 Mount filesystem with given index $idx to /mnt mountpoint.
62 Client will connect to all servers specified in the working set via previous command:
63 mount -t pohmel -o idx=$idx q /mnt
65 Change permissions to read-only (-I 1 option, '-I 2' - write-only, 3 - rw):
66 $cfg A modify -a server1.net -p 1025 -i $idx -I 1
68 Change IO priority to 123 (node with the highest priority gets read requests).
69 $cfg A modify -a server1.net -p 1025 -i $idx -P 123
71 One can check currect status of all connections in the mountstats file:
72 # cat /proc/$PID/mountstats
74 device none mounted on /mnt with fstype pohmel
75 idx addr(:port) socket_type protocol active priority permissions
76 0 server1.net:1026 1 6 1 250 1
77 0 server2.net:1025 1 6 1 123 3
81 Creating a server, which listens at port 1025 and 0.0.0.0 address.
82 Working root directory (note, that server chroots there, so you have to have appropriate permissions)
83 is set to /mnt, server will negotiate hash/cipher with client, in case client requested it, there
84 are appropriate key files.
85 Number of working threads is set to 10.
87 # ./fserver -a 0.0.0.0 -p 1025 -r /mnt -w 10 -K hash_key -k cipher_key
89 -A 6 - listen on ipv6 address. Default: Disabled.
90 -r root - path to root directory. Default: /tmp.
91 -a addr - listen address. Default: 0.0.0.0.
92 -p port - listen port. Default: 1025.
93 -w workers - number of workers per connected client. Default: 1.
94 -K file - hash key size. Default: none.
95 -k file - cipher key size. Default: none.
98 Number of worker threads specifies how many workers will be created for each client.
99 Bulk single-client transafers usually are better handled with smaller number (like 1-3).