summaryrefslogtreecommitdiffstats
path: root/qa/suites/fs/mirror-ha
diff options
context:
space:
mode:
Diffstat (limited to 'qa/suites/fs/mirror-ha')
-rw-r--r--qa/suites/fs/mirror-ha/%0
l---------qa/suites/fs/mirror-ha/.qa1
l---------qa/suites/fs/mirror-ha/begin1
-rw-r--r--qa/suites/fs/mirror-ha/cephfs-mirror/+0
l---------qa/suites/fs/mirror-ha/cephfs-mirror/.qa1
-rw-r--r--qa/suites/fs/mirror-ha/cephfs-mirror/1-volume-create-rm.yaml14
-rw-r--r--qa/suites/fs/mirror-ha/cephfs-mirror/2-three-per-cluster.yaml12
-rw-r--r--qa/suites/fs/mirror-ha/clients/+0
l---------qa/suites/fs/mirror-ha/clients/.qa1
-rw-r--r--qa/suites/fs/mirror-ha/clients/mirror.yaml32
-rw-r--r--qa/suites/fs/mirror-ha/cluster/+0
l---------qa/suites/fs/mirror-ha/cluster/.qa1
-rw-r--r--qa/suites/fs/mirror-ha/cluster/1-node.yaml20
l---------qa/suites/fs/mirror-ha/objectstore/.qa1
l---------qa/suites/fs/mirror-ha/objectstore/bluestore-bitmap.yaml1
-rw-r--r--qa/suites/fs/mirror-ha/overrides/+0
l---------qa/suites/fs/mirror-ha/overrides/.qa1
-rw-r--r--qa/suites/fs/mirror-ha/overrides/whitelist_health.yaml14
l---------qa/suites/fs/mirror-ha/supported-random-distro$1
l---------qa/suites/fs/mirror-ha/workloads/.qa1
-rw-r--r--qa/suites/fs/mirror-ha/workloads/cephfs-mirror-ha-workunit.yaml33
21 files changed, 135 insertions, 0 deletions
diff --git a/qa/suites/fs/mirror-ha/% b/qa/suites/fs/mirror-ha/%
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/qa/suites/fs/mirror-ha/%
diff --git a/qa/suites/fs/mirror-ha/.qa b/qa/suites/fs/mirror-ha/.qa
new file mode 120000
index 000000000..a602a0353
--- /dev/null
+++ b/qa/suites/fs/mirror-ha/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/fs/mirror-ha/begin b/qa/suites/fs/mirror-ha/begin
new file mode 120000
index 000000000..77af91f7d
--- /dev/null
+++ b/qa/suites/fs/mirror-ha/begin
@@ -0,0 +1 @@
+.qa/cephfs/begin/ \ No newline at end of file
diff --git a/qa/suites/fs/mirror-ha/cephfs-mirror/+ b/qa/suites/fs/mirror-ha/cephfs-mirror/+
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/qa/suites/fs/mirror-ha/cephfs-mirror/+
diff --git a/qa/suites/fs/mirror-ha/cephfs-mirror/.qa b/qa/suites/fs/mirror-ha/cephfs-mirror/.qa
new file mode 120000
index 000000000..a602a0353
--- /dev/null
+++ b/qa/suites/fs/mirror-ha/cephfs-mirror/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/fs/mirror-ha/cephfs-mirror/1-volume-create-rm.yaml b/qa/suites/fs/mirror-ha/cephfs-mirror/1-volume-create-rm.yaml
new file mode 100644
index 000000000..4ee16e1c9
--- /dev/null
+++ b/qa/suites/fs/mirror-ha/cephfs-mirror/1-volume-create-rm.yaml
@@ -0,0 +1,14 @@
+meta:
+- desc: create/rm volumes and set configs
+
+tasks:
+ - exec:
+ mon.a:
+ - "ceph fs volume create dc"
+ - "ceph fs volume create dc-backup"
+ - full_sequential_finally:
+ - exec:
+ mon.a:
+ - ceph config set mon mon_allow_pool_delete true
+ - ceph fs volume rm dc --yes-i-really-mean-it
+ - ceph fs volume rm dc-backup --yes-i-really-mean-it
diff --git a/qa/suites/fs/mirror-ha/cephfs-mirror/2-three-per-cluster.yaml b/qa/suites/fs/mirror-ha/cephfs-mirror/2-three-per-cluster.yaml
new file mode 100644
index 000000000..095f0893a
--- /dev/null
+++ b/qa/suites/fs/mirror-ha/cephfs-mirror/2-three-per-cluster.yaml
@@ -0,0 +1,12 @@
+meta:
+- desc: run one cephfs-mirror daemon on primary cluster
+tasks:
+- cephfs-mirror:
+ client: client.mirror1
+ run_in_foreground: True
+- cephfs-mirror:
+ client: client.mirror2
+ run_in_foreground: True
+- cephfs-mirror:
+ client: client.mirror3
+ run_in_foreground: True
diff --git a/qa/suites/fs/mirror-ha/clients/+ b/qa/suites/fs/mirror-ha/clients/+
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/qa/suites/fs/mirror-ha/clients/+
diff --git a/qa/suites/fs/mirror-ha/clients/.qa b/qa/suites/fs/mirror-ha/clients/.qa
new file mode 120000
index 000000000..a602a0353
--- /dev/null
+++ b/qa/suites/fs/mirror-ha/clients/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/fs/mirror-ha/clients/mirror.yaml b/qa/suites/fs/mirror-ha/clients/mirror.yaml
new file mode 100644
index 000000000..620c821e1
--- /dev/null
+++ b/qa/suites/fs/mirror-ha/clients/mirror.yaml
@@ -0,0 +1,32 @@
+meta:
+- desc: configure the permissions for client.mirror
+overrides:
+ ceph:
+ conf:
+ client:
+ debug cephfs_mirror: 20
+ log to stderr: false
+ # make these predictable
+ client.mirror1:
+ admin socket: /var/run/ceph/cephfs-mirror1.asok
+ pid file: /var/run/ceph/cephfs-mirror1.pid
+ client.mirror2:
+ admin socket: /var/run/ceph/cephfs-mirror2.asok
+ pid file: /var/run/ceph/cephfs-mirror2.pid
+ client.mirror3:
+ admin socket: /var/run/ceph/cephfs-mirror3.asok
+ pid file: /var/run/ceph/cephfs-mirror3.pid
+tasks:
+- exec:
+ client.mirror1:
+ - "sudo ceph auth caps client.mirror1 mon 'profile cephfs-mirror' mds 'allow r' osd 'allow rw tag cephfs metadata=*, allow r tag cephfs data=*' mgr 'allow r'"
+ client.mirror2:
+ - "sudo ceph auth caps client.mirror2 mon 'profile cephfs-mirror' mds 'allow r' osd 'allow rw tag cephfs metadata=*, allow r tag cephfs data=*' mgr 'allow r'"
+ client.mirror3:
+ - "sudo ceph auth caps client.mirror3 mon 'profile cephfs-mirror' mds 'allow r' osd 'allow rw tag cephfs metadata=*, allow r tag cephfs data=*' mgr 'allow r'"
+ client.mirror_remote:
+ - "sudo ceph auth caps client.mirror_remote mon 'allow r' mds 'allow rwps' osd 'allow rw tag cephfs *=*' mgr 'allow r'"
+ client.1:
+ - "sudo ceph auth caps client.0 mon 'allow r' mds 'allow rwps' osd 'allow rw tag cephfs *=*' mgr 'allow r'"
+ client.2:
+ - "sudo ceph auth caps client.1 mon 'allow r' mds 'allow rwps' osd 'allow rw tag cephfs *=*' mgr 'allow r'"
diff --git a/qa/suites/fs/mirror-ha/cluster/+ b/qa/suites/fs/mirror-ha/cluster/+
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/qa/suites/fs/mirror-ha/cluster/+
diff --git a/qa/suites/fs/mirror-ha/cluster/.qa b/qa/suites/fs/mirror-ha/cluster/.qa
new file mode 120000
index 000000000..a602a0353
--- /dev/null
+++ b/qa/suites/fs/mirror-ha/cluster/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/fs/mirror-ha/cluster/1-node.yaml b/qa/suites/fs/mirror-ha/cluster/1-node.yaml
new file mode 100644
index 000000000..cc70c106d
--- /dev/null
+++ b/qa/suites/fs/mirror-ha/cluster/1-node.yaml
@@ -0,0 +1,20 @@
+meta:
+- desc: 1 ceph cluster with 1 mon, 1 mgr, 3 osds, 5 mdss
+roles:
+- - mon.a
+ - mgr.x
+ - mds.a
+ - mds.b
+ - mds.c
+ - mds.d
+ - mds.e
+ - osd.0
+ - osd.1
+ - osd.2
+ - client.0
+ - client.1
+ - client.2
+ - client.mirror1
+ - client.mirror2
+ - client.mirror3
+ - client.mirror_remote \ No newline at end of file
diff --git a/qa/suites/fs/mirror-ha/objectstore/.qa b/qa/suites/fs/mirror-ha/objectstore/.qa
new file mode 120000
index 000000000..a602a0353
--- /dev/null
+++ b/qa/suites/fs/mirror-ha/objectstore/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/fs/mirror-ha/objectstore/bluestore-bitmap.yaml b/qa/suites/fs/mirror-ha/objectstore/bluestore-bitmap.yaml
new file mode 120000
index 000000000..a59cf5175
--- /dev/null
+++ b/qa/suites/fs/mirror-ha/objectstore/bluestore-bitmap.yaml
@@ -0,0 +1 @@
+.qa/objectstore/bluestore-bitmap.yaml \ No newline at end of file
diff --git a/qa/suites/fs/mirror-ha/overrides/+ b/qa/suites/fs/mirror-ha/overrides/+
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/qa/suites/fs/mirror-ha/overrides/+
diff --git a/qa/suites/fs/mirror-ha/overrides/.qa b/qa/suites/fs/mirror-ha/overrides/.qa
new file mode 120000
index 000000000..a602a0353
--- /dev/null
+++ b/qa/suites/fs/mirror-ha/overrides/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/fs/mirror-ha/overrides/whitelist_health.yaml b/qa/suites/fs/mirror-ha/overrides/whitelist_health.yaml
new file mode 100644
index 000000000..d40fa4cb8
--- /dev/null
+++ b/qa/suites/fs/mirror-ha/overrides/whitelist_health.yaml
@@ -0,0 +1,14 @@
+overrides:
+ ceph:
+ log-ignorelist:
+ - overall HEALTH_
+ - \(FS_DEGRADED\)
+ - \(MDS_FAILED\)
+ - \(MDS_DEGRADED\)
+ - \(FS_WITH_FAILED_MDS\)
+ - \(MDS_DAMAGE\)
+ - \(MDS_ALL_DOWN\)
+ - \(MDS_UP_LESS_THAN_MAX\)
+ - \(FS_INLINE_DATA_DEPRECATED\)
+ - Reduced data availability
+ - Degraded data redundancy
diff --git a/qa/suites/fs/mirror-ha/supported-random-distro$ b/qa/suites/fs/mirror-ha/supported-random-distro$
new file mode 120000
index 000000000..0862b4457
--- /dev/null
+++ b/qa/suites/fs/mirror-ha/supported-random-distro$
@@ -0,0 +1 @@
+.qa/distros/supported-random-distro$ \ No newline at end of file
diff --git a/qa/suites/fs/mirror-ha/workloads/.qa b/qa/suites/fs/mirror-ha/workloads/.qa
new file mode 120000
index 000000000..a602a0353
--- /dev/null
+++ b/qa/suites/fs/mirror-ha/workloads/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/fs/mirror-ha/workloads/cephfs-mirror-ha-workunit.yaml b/qa/suites/fs/mirror-ha/workloads/cephfs-mirror-ha-workunit.yaml
new file mode 100644
index 000000000..ce4dddf78
--- /dev/null
+++ b/qa/suites/fs/mirror-ha/workloads/cephfs-mirror-ha-workunit.yaml
@@ -0,0 +1,33 @@
+meta:
+- desc: run the cephfs_mirror_ha.sh workunit to test cephfs-mirror daemon in HA active/active mode
+
+overrides:
+ ceph:
+ conf:
+ mgr:
+ debug client: 10
+
+tasks:
+ - ceph-fuse:
+ client.1:
+ cephfs_name: dc
+ client.2:
+ cephfs_name: dc-backup
+ - cephfs_mirror_thrash:
+ randomize: False
+ max_thrash_delay: 10
+ - workunit:
+ subdir: mirror
+ cleanup: False
+ clients:
+ client.1: [fs/cephfs_mirror_ha_gen.sh]
+ timeout: 1h
+ - exec:
+ client.2:
+ - "echo verifying synchronized snapshots..."
+ - workunit:
+ subdir: mirror
+ cleanup: False
+ clients:
+ client.2: [fs/cephfs_mirror_ha_verify.sh]
+ timeout: 3h \ No newline at end of file