summaryrefslogtreecommitdiffstats
path: root/doc/qa
diff options
context:
space:
mode:
Diffstat (limited to 'doc/qa')
-rw-r--r--doc/qa/qa-client.vol170
-rw-r--r--doc/qa/qa-high-avail-client.vol17
-rw-r--r--doc/qa/qa-high-avail-server.vol346
-rw-r--r--doc/qa/qa-server.vol284
4 files changed, 817 insertions, 0 deletions
diff --git a/doc/qa/qa-client.vol b/doc/qa/qa-client.vol
new file mode 100644
index 00000000000..176dda5892a
--- /dev/null
+++ b/doc/qa/qa-client.vol
@@ -0,0 +1,170 @@
+# This spec file should be used for testing before any release
+#
+
+# 1st client
+volume client1
+ type protocol/client
+ option transport-type tcp # for TCP/IP transport
+# option transport-type ib-sdp # for Infiniband transport
+# option transport-type ib-verbs # for ib-verbs transport
+# option transport.ib-verbs.work-request-send-size 131072
+# option transport.ib-verbs.work-request-send-count 64
+# option transport.ib-verbs.work-request-recv-size 131072
+# option transport.ib-verbs.work-request-recv-count 64
+ option remote-host 127.0.0.1
+ option remote-subvolume ra1
+end-volume
+
+# 2nd client
+volume client2
+ type protocol/client
+ option transport-type tcp # for TCP/IP transport
+# option transport-type ib-sdp # for Infiniband transport
+# option transport-type ib-verbs # for ib-verbs transport
+ option remote-host 127.0.0.1
+ option remote-subvolume ra2
+end-volume
+
+# 3rd client
+volume client3
+ type protocol/client
+ option transport-type tcp # for TCP/IP transport
+# option transport-type ib-sdp # for Infiniband transport
+# option transport-type ib-verbs # for ib-verbs transport
+ option remote-host 127.0.0.1
+ option remote-subvolume ra3
+end-volume
+
+# 4th client
+volume client4
+ type protocol/client
+ option transport-type tcp # for TCP/IP transport
+# option transport-type ib-sdp # for Infiniband transport
+# option transport-type ib-verbs # for ib-verbs transport
+ option remote-host 127.0.0.1
+ option remote-subvolume ra4
+end-volume
+
+# 5th client
+volume client5
+ type protocol/client
+ option transport-type tcp # for TCP/IP transport
+# option transport-type ib-sdp # for Infiniband transport
+# option transport-type ib-verbs # for ib-verbs transport
+ option remote-host 127.0.0.1
+ option remote-subvolume ra5
+end-volume
+
+# 6th client
+volume client6
+ type protocol/client
+ option transport-type tcp # for TCP/IP transport
+# option transport-type ib-sdp # for Infiniband transport
+# option transport-type ib-verbs # for ib-verbs transport
+ option remote-host 127.0.0.1
+ option remote-subvolume ra6
+end-volume
+
+# 7th client
+volume client7
+ type protocol/client
+ option transport-type tcp # for TCP/IP transport
+# option transport-type ib-sdp # for Infiniband transport
+# option transport-type ib-verbs # for ib-verbs transport
+ option remote-host 127.0.0.1
+ option remote-subvolume ra7
+end-volume
+
+# 8th client
+volume client8
+ type protocol/client
+ option transport-type tcp # for TCP/IP transport
+# option transport-type ib-sdp # for Infiniband transport
+# option transport-type ib-verbs # for ib-verbs transport
+ option remote-host 127.0.0.1
+ option remote-subvolume ra8
+end-volume
+
+# 1st Stripe (client1 client2)
+volume stripe1
+ type cluster/stripe
+ subvolumes client1 client2
+ option block-size 128KB # all striped in 128kB block
+end-volume
+
+# 2st Stripe (client3 client4)
+volume stripe2
+ type cluster/stripe
+ subvolumes client3 client4
+ option block-size 128KB # all striped in 128kB block
+end-volume
+
+# 3st Stripe (client5 client6)
+volume stripe3
+ type cluster/stripe
+ subvolumes client5 client6
+ option block-size 128KB # all striped in 128kB block
+end-volume
+
+# 4st Stripe (client7 client8)
+volume stripe4
+ type cluster/stripe
+ subvolumes client7 client8
+ option block-size 128KB # all striped in 128kB block
+end-volume
+
+
+# 1st replicate
+volume replicate1
+ type cluster/replicate
+ subvolumes stripe1 stripe2
+end-volume
+
+# 2nd replicate
+volume replicate2
+ type cluster/replicate
+ subvolumes stripe3 stripe4
+end-volume
+
+volume ns
+ type protocol/client
+ option transport-type tcp
+ option remote-host 127.0.0.1
+ option remote-subvolume brick-ns
+end-volume
+
+# Unify
+volume unify0
+ type cluster/unify
+ subvolumes replicate1 replicate2
+# subvolumes stripe1 stripe3
+ option namespace ns
+ option scheduler rr # random # alu # nufa
+ option rr.limits.min-free-disk 1GB
+# option alu.order x
+# option alu.x.entry-threshold
+# option alu.x.exit-threshold
+end-volume
+
+
+# ==== Performance Translators ====
+# The default options for performance translators should be the best for 90+% of the cases
+volume iot
+ type performance/io-threads
+ subvolumes unify0
+end-volume
+
+volume wb
+ type performance/write-behind
+ subvolumes iot
+end-volume
+
+volume ioc
+ type performance/io-cache
+ subvolumes wb
+end-volume
+
+volume ra
+ type performance/read-ahead
+ subvolumes ioc
+end-volume
diff --git a/doc/qa/qa-high-avail-client.vol b/doc/qa/qa-high-avail-client.vol
new file mode 100644
index 00000000000..69cb8dd30f1
--- /dev/null
+++ b/doc/qa/qa-high-avail-client.vol
@@ -0,0 +1,17 @@
+volume client
+ type protocol/client
+ option transport-type tcp
+ option remote-host localhost
+ option transport.socket.remote-port 7001
+ option remote-subvolume server1-iot
+end-volume
+
+volume ra
+ type performance/read-ahead
+ subvolumes client
+end-volume
+
+volume wb
+ type performance/write-behind
+ subvolumes ra
+end-volume
diff --git a/doc/qa/qa-high-avail-server.vol b/doc/qa/qa-high-avail-server.vol
new file mode 100644
index 00000000000..09d91c4c43b
--- /dev/null
+++ b/doc/qa/qa-high-avail-server.vol
@@ -0,0 +1,346 @@
+
+# -- server 1 --
+volume server1-posix1
+ type storage/posix
+ option directory /tmp/ha-export1/
+end-volume
+
+volume server1-ns1
+ type storage/posix
+ option directory /tmp/ha-export-ns1/
+end-volume
+
+volume server1-client2
+ type protocol/client
+ option transport-type tcp
+ option remote-host 127.0.0.1
+ option transport.socket.remote-port 7002
+ option remote-subvolume server2-posix2
+end-volume
+
+volume server1-ns2
+ type protocol/client
+ option transport-type tcp
+ option remote-host 127.0.0.1
+ option transport.socket.remote-port 7002
+ option remote-subvolume server2-ns2
+end-volume
+
+volume server1-client3
+ type protocol/client
+ option transport-type tcp
+ option remote-host 127.0.0.1
+ option transport.socket.remote-port 7003
+ option remote-subvolume server3-posix3
+end-volume
+
+volume server1-ns3
+ type protocol/client
+ option transport-type tcp
+ option remote-host 127.0.0.1
+ option transport.socket.remote-port 7003
+ option remote-subvolume server3-ns3
+end-volume
+
+volume server1-io1
+ type performance/io-threads
+ option thread-count 8
+ subvolumes server1-posix1
+end-volume
+
+
+volume server1-io2
+ type performance/io-threads
+ option thread-count 8
+ subvolumes server1-client2
+end-volume
+
+volume server1-io3
+ type performance/io-threads
+ option thread-count 8
+ subvolumes server1-client3
+end-volume
+
+volume server1-ns-io1
+ type performance/io-threads
+ option thread-count 8
+ subvolumes server1-ns1
+end-volume
+
+volume server1-ns-io2
+ type performance/io-threads
+ option thread-count 8
+ subvolumes server1-ns2
+end-volume
+
+volume server1-ns-io3
+ type performance/io-threads
+ option thread-count 8
+ subvolumes server1-ns3
+end-volume
+
+volume server1-ns-replicate
+ type cluster/replicate
+ subvolumes server1-ns-io1 server1-ns-io2 server1-ns-io3
+end-volume
+
+volume server1-storage-replicate
+ type cluster/replicate
+ subvolumes server1-io1 server1-io2 server1-io3
+end-volume
+
+volume server1-unify
+ type cluster/unify
+ #option self-heal off
+ subvolumes server1-storage-replicate
+ option namespace server1-ns-replicate
+ option scheduler rr
+end-volume
+
+volume server1-iot
+ type performance/io-threads
+ option thread-count 8
+ subvolumes server1-unify
+end-volume
+
+volume server1
+ type protocol/server
+ option transport-type tcp
+ subvolumes server1-iot
+ option transport.socket.listen-port 7001
+ option auth.addr.server1-posix1.allow *
+ option auth.addr.server1-ns1.allow *
+ option auth.addr.server1-iot.allow *
+end-volume
+
+
+# == Server2 ==
+volume server2-client1
+ type protocol/client
+ option transport-type tcp
+ option remote-host 127.0.0.1
+ option transport.socket.remote-port 7001
+ option remote-subvolume server1-posix1
+end-volume
+
+volume server2-ns1
+ type protocol/client
+ option transport-type tcp
+ option remote-host 127.0.0.1
+ option transport.socket.remote-port 7001
+ option remote-subvolume server1-ns1
+end-volume
+
+volume server2-posix2
+ type storage/posix
+ option directory /tmp/ha-export2/
+end-volume
+
+volume server2-ns2
+ type storage/posix
+ option directory /tmp/ha-export-ns2/
+end-volume
+
+volume server2-client3
+ type protocol/client
+ option transport-type tcp
+ option remote-host 127.0.0.1
+ option transport.socket.remote-port 7003
+ option remote-subvolume server3-posix3
+end-volume
+
+volume server2-ns3
+ type protocol/client
+ option transport-type tcp
+ option remote-host 127.0.0.1
+ option transport.socket.remote-port 7003
+ option remote-subvolume server3-ns3
+end-volume
+
+volume server2-io1
+ type performance/io-threads
+ option thread-count 8
+ subvolumes server2-client1
+end-volume
+
+
+volume server2-io2
+ type performance/io-threads
+ option thread-count 8
+ subvolumes server2-posix2
+end-volume
+
+volume server2-io3
+ type performance/io-threads
+ option thread-count 8
+ subvolumes server2-client3
+end-volume
+
+volume server2-ns-io1
+ type performance/io-threads
+ option thread-count 8
+ subvolumes server2-ns1
+end-volume
+
+volume server2-ns-io2
+ type performance/io-threads
+ option thread-count 8
+ subvolumes server2-ns2
+end-volume
+
+volume server2-ns-io3
+ type performance/io-threads
+ option thread-count 8
+ subvolumes server2-ns3
+end-volume
+
+volume server2-ns-replicate
+ type cluster/replicate
+ subvolumes server2-ns-io1 server2-ns-io2 server2-ns-io3
+end-volume
+
+volume server2-storage-replicate
+ type cluster/replicate
+ subvolumes server2-io2 server2-io3 server2-io1
+end-volume
+
+volume server2-unify
+ type cluster/unify
+ option self-heal off
+ subvolumes server2-storage-replicate
+ option namespace server2-ns-replicate
+ option scheduler rr
+end-volume
+
+volume server2-iot
+ type performance/io-threads
+ option thread-count 8
+ option cache-size 64MB
+ subvolumes server2-unify
+end-volume
+
+volume server2
+ type protocol/server
+ option transport-type tcp
+ subvolumes server2-iot
+ option transport.socket.listen-port 7002
+ option auth.addr.server2-posix2.allow *
+ option auth.addr.server2-ns2.allow *
+ option auth.addr.server2-iot.allow *
+end-volume
+
+# == server 3 ==
+volume server3-client1
+ type protocol/client
+ option transport-type tcp
+ option remote-host 127.0.0.1
+ option transport.socket.remote-port 7001
+ option remote-subvolume server1-posix1
+end-volume
+
+volume server3-ns1
+ type protocol/client
+ option transport-type tcp
+ option remote-host 127.0.0.1
+ option transport.socket.remote-port 7001
+ option remote-subvolume server1-ns1
+end-volume
+
+volume server3-client2
+ type protocol/client
+ option transport-type tcp
+ option remote-host 127.0.0.1
+ option transport.socket.remote-port 7002
+ option remote-subvolume server2-posix2
+end-volume
+
+volume server3-ns2
+ type protocol/client
+ option transport-type tcp
+ option remote-host 127.0.0.1
+ option transport.socket.remote-port 7002
+ option remote-subvolume server2-ns2
+end-volume
+
+volume server3-posix3
+ type storage/posix
+ option directory /tmp/ha-export3/
+end-volume
+
+volume server3-ns3
+ type storage/posix
+ option directory /tmp/ha-export-ns3/
+end-volume
+
+volume server3-io1
+ type performance/io-threads
+ option thread-count 8
+ subvolumes server3-client1
+end-volume
+
+
+volume server3-io2
+ type performance/io-threads
+ option thread-count 8
+ subvolumes server3-client2
+end-volume
+
+volume server3-io3
+ type performance/io-threads
+ option thread-count 8
+ subvolumes server3-posix3
+end-volume
+
+volume server3-ns-io1
+ type performance/io-threads
+ option thread-count 8
+ subvolumes server3-ns1
+end-volume
+
+volume server3-ns-io2
+ type performance/io-threads
+ option thread-count 8
+ subvolumes server3-ns2
+end-volume
+
+volume server3-ns-io3
+ type performance/io-threads
+ option thread-count 8
+ subvolumes server3-ns3
+end-volume
+
+volume server3-ns-replicate
+ type cluster/replicate
+ subvolumes server3-ns-io1 server3-ns-io2 server3-ns-io3
+end-volume
+
+volume server3-storage-replicate
+ type cluster/replicate
+ subvolumes server3-io3 server3-io2 server3-io1
+end-volume
+
+volume server3-unify
+ type cluster/unify
+ option self-heal off
+ subvolumes server3-storage-replicate
+ option namespace server3-ns-replicate
+ option scheduler rr
+end-volume
+
+volume server3-iot
+ type performance/io-threads
+ option thread-count 8
+ option cache-size 64MB
+ subvolumes server3-unify
+end-volume
+
+volume server3
+ type protocol/server
+ option transport-type tcp
+ subvolumes server3-iot
+ option transport.socket.listen-port 7003
+ option auth.addr.server3-posix3.allow *
+ option auth.addr.server3-ns3.allow *
+ option auth.addr.server3-iot.allow *
+end-volume
+
diff --git a/doc/qa/qa-server.vol b/doc/qa/qa-server.vol
new file mode 100644
index 00000000000..1c245c324ad
--- /dev/null
+++ b/doc/qa/qa-server.vol
@@ -0,0 +1,284 @@
+# This spec file should be used for testing before any release
+#
+
+# Namespace posix
+volume brick-ns
+ type storage/posix # POSIX FS translator
+ option directory /tmp/export-ns # Export this directory
+end-volume
+
+# 1st server
+
+volume brick1
+ type storage/posix # POSIX FS translator
+ option directory /tmp/export1 # Export this directory
+end-volume
+
+# == Posix-Locks ==
+ volume plocks1
+ type features/posix-locks
+# option mandatory on
+ subvolumes brick1
+ end-volume
+
+volume iot1
+ type performance/io-threads
+ subvolumes plocks1 # change properly if above commented volumes needs to be included
+# option <key> <value>
+end-volume
+
+volume wb1
+ type performance/write-behind
+ subvolumes iot1
+# option <key> <value>
+end-volume
+
+volume ra1
+ type performance/read-ahead
+ subvolumes wb1
+# option <key> <value>
+end-volume
+
+volume brick2
+ type storage/posix # POSIX FS translator
+ option directory /tmp/export2 # Export this directory
+end-volume
+
+# == TrashCan Translator ==
+# volume trash2
+# type features/trash
+# option trash-dir /.trashcan
+# subvolumes brick2
+# end-volume
+
+# == Posix-Locks ==
+volume plocks2
+ type features/posix-locks
+# option <something> <something>
+ subvolumes brick2
+end-volume
+
+volume iot2
+ type performance/io-threads
+ subvolumes plocks2 # change properly if above commented volumes needs to be included
+# option <key> <value>
+end-volume
+
+volume wb2
+ type performance/write-behind
+ subvolumes iot2
+# option <key> <value>
+end-volume
+
+volume ra2
+ type performance/read-ahead
+ subvolumes wb2
+# option <key> <value>
+end-volume
+
+volume brick3
+ type storage/posix # POSIX FS translator
+ option directory /tmp/export3 # Export this directory
+end-volume
+
+# == TrashCan Translator ==
+# volume trash3
+# type features/trash
+# option trash-dir /.trashcan
+# subvolumes brick3
+# end-volume
+
+# == Posix-Locks ==
+volume plocks3
+ type features/posix-locks
+# option <something> <something>
+ subvolumes brick3
+end-volume
+
+volume iot3
+ type performance/io-threads
+ subvolumes plocks3 # change properly if above commented volumes needs to be included
+# option <key> <value>
+end-volume
+
+volume wb3
+ type performance/write-behind
+ subvolumes iot3
+# option <key> <value>
+end-volume
+
+volume ra3
+ type performance/read-ahead
+ subvolumes wb3
+# option <key> <value>
+end-volume
+
+volume brick4
+ type storage/posix # POSIX FS translator
+ option directory /tmp/export4 # Export this directory
+end-volume
+
+# == Posix-Locks ==
+volume plocks4
+ type features/posix-locks
+# option <something> <something>
+ subvolumes brick4
+end-volume
+
+volume iot4
+ type performance/io-threads
+ subvolumes plocks4 # change properly if above commented volumes needs to be included
+# option <key> <value>
+end-volume
+
+volume wb4
+ type performance/write-behind
+ subvolumes iot4
+# option <key> <value>
+end-volume
+
+volume ra4
+ type performance/read-ahead
+ subvolumes wb4
+# option <key> <value>
+end-volume
+
+volume brick5
+ type storage/posix # POSIX FS translator
+ option directory /tmp/export5 # Export this directory
+end-volume
+
+
+# == Posix-Locks ==
+volume plocks5
+ type features/posix-locks
+# option <something> <something>
+ subvolumes brick5
+end-volume
+
+volume iot5
+ type performance/io-threads
+ subvolumes plocks5 # change properly if above commented volumes needs to be included
+# option <key> <value>
+end-volume
+
+volume wb5
+ type performance/write-behind
+ subvolumes iot5
+# option <key> <value>
+end-volume
+
+volume ra5
+ type performance/read-ahead
+ subvolumes wb5
+# option <key> <value>
+end-volume
+
+volume brick6
+ type storage/posix # POSIX FS translator
+ option directory /tmp/export6 # Export this directory
+end-volume
+
+# == Posix-Locks ==
+volume plocks6
+ type features/posix-locks
+# option <something> <something>
+ subvolumes brick6
+end-volume
+
+volume iot6
+ type performance/io-threads
+ subvolumes plocks6 # change properly if above commented volumes needs to be included
+# option <key> <value>
+end-volume
+
+volume wb6
+ type performance/write-behind
+ subvolumes iot6
+# option <key> <value>
+end-volume
+
+volume ra6
+ type performance/read-ahead
+ subvolumes wb6
+# option <key> <value>
+end-volume
+
+volume brick7
+ type storage/posix # POSIX FS translator
+ option directory /tmp/export7 # Export this directory
+end-volume
+
+# == Posix-Locks ==
+volume plocks7
+ type features/posix-locks
+# option <something> <something>
+ subvolumes brick7
+end-volume
+
+volume iot7
+ type performance/io-threads
+ subvolumes plocks7 # change properly if above commented volumes needs to be included
+# option <key> <value>
+end-volume
+
+volume wb7
+ type performance/write-behind
+ subvolumes iot7
+# option <key> <value>
+end-volume
+
+volume ra7
+ type performance/read-ahead
+ subvolumes wb7
+# option <key> <value>
+end-volume
+
+volume brick8
+ type storage/posix # POSIX FS translator
+ option directory /tmp/export8 # Export this directory
+end-volume
+
+# == Posix-Locks ==
+volume plocks8
+ type features/posix-locks
+# option <something> <something>
+ subvolumes brick8
+end-volume
+
+volume iot8
+ type performance/io-threads
+ subvolumes plocks8 # change properly if above commented volumes needs to be included
+# option <key> <value>
+end-volume
+
+volume wb8
+ type performance/write-behind
+ subvolumes iot8
+# option <key> <value>
+end-volume
+
+volume ra8
+ type performance/read-ahead
+ subvolumes wb8
+# option <key> <value>
+end-volume
+
+volume server8
+ type protocol/server
+ subvolumes ra8 ra1 ra2 ra3 ra4 ra5 ra6 ra7 brick-ns
+ option transport-type tcp # For TCP/IP transport
+# option transport-type ib-sdp # For Infiniband transport
+# option transport-type ib-verbs # For ib-verbs transport
+ option client-volume-filename /examples/qa-client.vol
+ option auth.addr.ra1.allow * # Allow access to "stat8" volume
+ option auth.addr.ra2.allow * # Allow access to "stat8" volume
+ option auth.addr.ra3.allow * # Allow access to "stat8" volume
+ option auth.addr.ra4.allow * # Allow access to "stat8" volume
+ option auth.addr.ra5.allow * # Allow access to "stat8" volume
+ option auth.addr.ra6.allow * # Allow access to "stat8" volume
+ option auth.addr.ra7.allow * # Allow access to "stat8" volume
+ option auth.addr.ra8.allow * # Allow access to "stat8" volume
+ option auth.addr.brick-ns.allow * # Allow access to "stat8" volume
+end-volume
+