Commit Graph

615 Commits

Author SHA1 Message Date
Jason Dillaman
917f8a037c qa/workunits/rbd: fixed rbd-mirror snapshot comparison loop
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2018-05-15 16:35:26 -04:00
Jason Dillaman
02e32fe45a qa/workunits/rbd: fixed missing error code on trap handler
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2018-05-15 16:35:26 -04:00
Jason Dillaman
3086f29b64 qa/workunits/rbd: skip rbd-mirror start/stop cases when thrashing daemons
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2018-05-15 16:35:26 -04:00
Jason Dillaman
a6a8c8a2ab qa/workunits/rbd: rbd-mirror admin socket commands should retry
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2018-05-15 16:35:26 -04:00
Jason Dillaman
1bb6d4fd89 qa/workunits/rbd: don't override rbd-mirror logs if running under teuthology
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2018-05-15 16:35:26 -04:00
Jason Dillaman
15a197ed06 qa/workunits/rbd: append rbd-mirror instance number for all-daemon asok command
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2018-05-15 16:35:26 -04:00
Mykola Golub
6b752a3859
Merge pull request #21697 from dillaman/wip-18753-1
rbd-mirror: additional thrasher testing

Reviewed-by: Mykola Golub <mgolub@suse.com>
2018-04-30 18:25:35 +03:00
Mykola Golub
5bc1d4a51a qa/workunits/rbd: potential race in mirror disconnect test
(due to a typo in get_image_id command arg)

Fixes: http://tracker.ceph.com/issues/23938
Signed-off-by: Mykola Golub <mgolub@suse.com>
2018-04-30 09:44:12 +03:00
Jason Dillaman
de4587012d qa/suites/rbd: rbd-mirror fsx stress test
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2018-04-27 08:34:42 -04:00
Jason Dillaman
2311eff622 qa/suites/rbd: thrash rbd-mirror daemon during tests
Fixes: http://tracker.ceph.com/issues/18753
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2018-04-23 16:02:59 -04:00
Mykola Golub
7ca8e70471
Merge pull request #21564 from dillaman/wip-23809
rbd: cleanup handling of IEC byte units

Reviewed-by: Mykola Golub <mgolub@suse.com>
2018-04-23 09:07:19 +03:00
Jason Dillaman
aa96f44400 qa/workunits/rbd/import_export: update unit formatting
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2018-04-20 11:31:27 -04:00
Jason Dillaman
3e8b74fb3d qa/workunits/rbd/cli_generic: update unit formatting
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2018-04-20 11:26:48 -04:00
Ilya Dryomov
b0311db99b
Merge pull request #21522 from idryomov/wip-krbd-lock-timeout-test
qa: krbd_exclusive_option.sh: add lock_timeout test case

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
2018-04-20 16:21:48 +02:00
Ilya Dryomov
cec0ee3000 qa: krbd_exclusive_option.sh: add lock_timeout test case
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
2018-04-19 10:43:35 +02:00
Ilya Dryomov
25869054de qa: krbd_exclusive_option.sh: be more lax about ps states
Allow running this script by hand -- foreground process group vs
background process groups, etc.

Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
2018-04-19 10:43:35 +02:00
Ilya Dryomov
4685368455 qa: krbd_fallocate.sh: add notrim test case
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
2018-04-19 09:03:54 +02:00
Ilya Dryomov
a7d89c0794 qa: krbd_fallocate.sh: s/deallocated/zeroes/
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
2018-04-19 09:03:54 +02:00
Ilya Dryomov
f6d976b756 qa: krbd_fallocate.sh: parameterize assert_deallocated()
Take num_objects_expected, similar to assert_deallocated_unaligned().

Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
2018-04-19 09:03:54 +02:00
Jason Dillaman
3b08c0609c Merge pull request #20460 from colletj/v1_image_creation_disallow
librbd: disallow creation of v1 image format

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
2018-04-03 09:18:39 -04:00
Jason Dillaman
6885380c24
Merge pull request #18317 from hitoshikamei/master-rbd
rbd: eager-thick provisioning support

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
2018-03-30 08:45:15 -04:00
Jason Dillaman
285a2fdbfc
Merge pull request #20935 from trociny/wip-get-name
librbd: add API function to get image name 

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
2018-03-30 08:44:28 -04:00
Mykola Golub
d392393e1f qa/workunits/rbd: remove sanity check in test_admin_socket.sh
Fixes: https://tracker.ceph.com/issues/23499
Signed-off-by: Mykola Golub <mgolub@suse.com>
2018-03-29 12:29:40 +03:00
Mykola Golub
4784d6202b rbd: return image id in info command output
And as a side effect, previously when rbd info was called
with --image-id, the image id was shown instead of the image name,
so the user was not able to see the image name from info output.
Now it will show the image name.

Signed-off-by: Mykola Golub <mgolub@suse.com>
2018-03-18 06:37:19 +02:00
Julien COLLET
386b752e62 librbd/qa: Permit V1 images in qa tests
Signed-off-by: Julien COLLET <julien.collet@cern.ch>
2018-03-15 15:09:06 +01:00
Hitoshi Kamei
b517532d53 rbd: qa code for thick provision support
Add the qa code for thick provision option, if applied.

The qa code creates and checks 64 MB thick-provision image
for small image test, and it also creates and checks 4 GB
thick-provision image for large image test.

Signed-off-by: Hitoshi Kamei <hitoshi.kamei.xm@hitachi.com>
Cc: Mitsuo Hayasaka <mitsuo.hayasaka.hu@hitachi.com>
2018-03-13 17:25:24 +09:00
Julien COLLET
18d9a74b69 test/librbd: use v1 images in the rbd unit tests
Update the test/qa scripts to support the v1 creation disallow fix (using
the RBD_FORCE_ALLOW_V1 environment variable).

Signed-off-by: Julien Collet <julien.collet@cern.ch>
2018-03-06 09:07:32 +01:00
songweibin
2cde7ad65d rbd/test: add snap protection test for ex/import
Signed-off-by: songweibin <song.weibin@zte.com.cn>
2018-03-02 17:40:35 +08:00
Mykola Golub
c3038c5cbc
Merge pull request #20599 from dillaman/wip-librbd-devstack-tempest
qa/workunits/rbd: switch devstack tempest to 17.2.0 tag

Reviewed-by: Mykola Golub <mgolub@suse.com>
2018-02-27 20:43:36 +02:00
Jason Dillaman
8f45676ec3 Merge pull request #20577 from Songweibin/wip-group-rename
rbd: add group rename methods

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
2018-02-27 08:28:08 -05:00
Jason Dillaman
c1b84297b8 qa/workunits/rbd: switch devstack tempest to 17.2.0 tag
Fixes: http://tracker.ceph.com/issues/22961
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2018-02-26 14:04:48 -05:00
songweibin
034ad878fd rbd: add 'group rename' action to CLI and Python API
Signed-off-by: songweibin <song.weibin@zte.com.cn>
2018-02-26 10:21:58 +08:00
Ilya Dryomov
72edaae04d qa: krbd latest-osdmap-on-map test
Make sure we get the latest osdmap when using an existing client.

Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
2018-02-25 11:40:19 +01:00
Jason Dillaman
ab06f835f4
Merge pull request #20499 from idryomov/wip-krbd-discard-tests
qa: additional krbd discard test cases

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
2018-02-20 14:02:07 -05:00
Mykola Golub
783bc22438
Merge pull request #20490 from dillaman/wip-rbd-journal-workunit
qa/workunits/rbd: remove sanity check in journal.sh test

Reviewed-by: Mykola Golub <mgolub@suse.com>
2018-02-20 18:45:11 +02:00
Jason Dillaman
bc80c8c7f9 qa/workunits/rbd: remove sanity check in journal.sh test
When the OSDs are being concurrently thrashed, this can result in
sporadic failures due to the admin socket disappearing.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2018-02-19 15:21:46 -05:00
Jason Dillaman
1374acdf1a qa/workunits/rbd: correct permission test handling for clone v2 images
Fixes: http://tracker.ceph.com/issues/23043
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2018-02-19 15:16:40 -05:00
Jason Dillaman
7b9161eb05 qa/workunits/rbd: utilize RBD profiles in permissions.sh test case
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2018-02-19 14:53:27 -05:00
Ilya Dryomov
8fa9dec271 qa: krbd_fallocate.sh: add -ENOENT handling test case
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
2018-02-19 20:02:57 +01:00
Jason Dillaman
82ef376e80 librbd: auto-remove trash snapshots when image is deleted
Fixes: http://tracker.ceph.com/issues/22873
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2018-02-09 13:34:55 -05:00
Mykola Golub
57baca0166 qa/workunits/rbd/cli_generic: fix test_purge for rbd default format 1
Signed-off-by: Mykola Golub <mgolub@suse.com>
2018-02-09 16:04:43 +02:00
songweibin
21c3bc3e69 test/rbd: cli_generic fails if v1 image format or deep-flatten disabled
Fixes: http://tracker.ceph.com/issues/22950

Signed-off-by: songweibin <song.weibin@zte.com.cn>
2018-02-09 16:17:27 +08:00
Josh Durgin
eae6e64034
Merge pull request #20173 from liewegas/wip-os-ch
os: unify Sequencer and CollectionHandle

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
2018-02-07 14:04:08 -08:00
Sage Weil
5749434ad6 test/bench: remove smallio bench tools
These are stale and superceded by the fio ObjectStore (and other)
backends.  Shed the weight!

Signed-off-by: Sage Weil <sage@redhat.com>
2018-02-06 08:21:29 -06:00
Jason Dillaman
57559a47f6 qa/workunits/rbd: force use of v1 clone when testing orphan
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2018-02-05 11:12:00 -05:00
Jason Dillaman
3ac57a7eb7
Merge pull request #19711 from trociny/wip-20762
rbd: unified way to map images using different drivers

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
Reviewed-by: Ilya Dryomov <idryomov@redhat.com>
Reviewed-by: Willem Jan Withagen <wjw@digiware.nl>
2018-02-02 13:56:13 -05:00
Jason Dillaman
bba63db1b4
Merge pull request #20170 from trociny/wip-22803
qa/workunits/rbd: remove "trash purge --threshold" test

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
2018-02-02 08:32:36 -05:00
Mykola Golub
be60490f15 qa/workunits/rbd: remove "trash purge --threshold" test
It is difficult to make it work reliably in different environments.

Fixes: http://tracker.ceph.com/issues/22803
Signed-off-by: Mykola Golub <mgolub@suse.com>
2018-02-01 17:36:21 +02:00
songweibin
c3e119d0d3 librbd: fix deep copy a child-image
* tweak create a cloned image when the source image is
  a clone (or at least one of its snapshots is a clone).

Signed-off-by: songweibin <song.weibin@zte.com.cn>
2018-02-01 08:17:19 +08:00
Mykola Golub
6a57358add rbd: unified way to map images using different drivers
Instead of "rbd map|unmap|showmapped", "rbd ndb map|unmap|list",
"rbd ggate map|unmap|list" commands, provide:

 rbd device -t krbd|nbd|ggate|... map|unmap|list

which gives interface consistent between drivers.

Signed-off-by: Mykola Golub <mgolub@suse.com>
2018-01-29 09:34:11 +02:00
Mykola Golub
023759c7c1
Merge pull request #20124 from dillaman/wip-devstack
qa/workunits/rbd: switch devstack to pike release

Reviewed-by: Mykola Golub <mgolub@suse.com>
2018-01-26 07:41:00 +02:00
Jason Dillaman
6253490445
Merge pull request #19996 from Songweibin/wip-rbd-deep-cp
rbd: add deep cp CLI method

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
2018-01-25 21:59:31 -05:00
Jason Dillaman
7ff1e0bc21 qa/workunits/rbd: switch devstack to pike release
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2018-01-25 18:44:20 -05:00
songweibin
0551029242 rbd: add deep cp CLI method
Signed-off-by: songweibin <song.weibin@zte.com.cn>
2018-01-24 09:04:33 +08:00
Theofilos Mouratidis
b9e4aa94b7 rbd trash: replace cli delay option, add rbd trash purge command
Replaced the delay argument for the trash move
command with a string acceptable by /bin/date, e.g.:

$ rbd trash move --pool foo --image bar --expires-in "2 weeks"

Added a "rbd trash purge" command that deletes any expired
image from the trash, has also a command to alter the current
expiration date with the "--older-than" argument which accepts
again a valid argument for /bin/date, e.g.:

$rbd trash purge mypool --older-than "2017-08-20"

There is also the "threshold" argument which tries to remove the
oldest trashed images (by deferment end time) until the pool space
is freed up to a percentage point, e.g.:

$ rbd trash purge mypool --threshold 0.9

If mypool uses 1GB it will try to remove trashed images until the
pool usage becomes equal to or lower than 900MB.

Signed-off-by: Theofilos Mouratidis <t.mour@cern.ch>
2018-01-23 11:41:54 +01:00
Victor Denisov
838cae45af rbd: Add group snapshot rename commands
Signed-off-by: Victor Denisov <denisovenator@gmail.com>
2018-01-13 14:00:31 -05:00
Jason Dillaman
619b0c0244 rbd: adjusted "lock list" JSON and XML formatted output
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2018-01-12 11:31:07 -05:00
Jason Dillaman
31a382f1ec rbd: utilize '<name>@<snap>' format when creating/removing group snaps
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2018-01-11 10:38:23 -05:00
Victor Denisov
d95b791e8d qa/workunits/rbd: Add tests for consistency groups
Signed-off-by: Victor Denisov <denisovenator@gmail.com>
2018-01-11 10:38:23 -05:00
Mykola Golub
e372e9492b rbd-nbd: output format support for list-mapped command
Signed-off-by: Mykola Golub <mgolub@suse.com>
2018-01-03 14:44:10 +02:00
Mykola Golub
a5fd0e71d1
Merge pull request #19724 from dillaman/wip-18480
rbd: support cloning an image from a non-primary snapshot

Reviewed-by: Mykola Golub <mgolub@suse.com>
2018-01-03 14:11:25 +02:00
Jason Dillaman
e4b8ae348b
Merge pull request #19666 from trociny/wip-nbd-unmap-by-image
rbd-nbd: allow to unmap by image or snap spec

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
2018-01-02 20:35:30 -05:00
Jason Dillaman
c7c15b681c librbd: permit creation of clones against non-primary images
Fixes: http://tracker.ceph.com/issues/18480
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2018-01-02 10:11:56 -05:00
Mykola Golub
be87e8b118 rbd-ggate: allow to unmap by image or snap spec
(to match the behaviour of krbd unmap)

Signed-off-by: Mykola Golub <to.my.trociny@gmail.com>
2017-12-27 20:29:58 +00:00
Mykola Golub
8e0f40aae1 rbd-ggate: extended info when listing devices
This matches nbd and krbd drivers output.

Signed-off-by: Mykola Golub <to.my.trociny@gmail.com>
2017-12-27 20:29:58 +00:00
Mykola Golub
02e211c282 rbd-nbd: allow to unmap by image or snap spec
(to match the behaviour of krbd unmap)

Signed-off-by: Mykola Golub <mgolub@suse.com>
2017-12-25 17:19:49 +02:00
Mykola Golub
47e38ca1b9 qa/workunits/rbd: bench-write is part of exclusive option test
Signed-off-by: Mykola Golub <mgolub@suse.com>
2017-12-25 17:19:49 +02:00
Jason Dillaman
8c2ee6dd0f qa/workunits/rbd: simplify split-brain test to avoid potential race
Fixes: http://tracker.ceph.com/issues/22485
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2017-12-19 16:30:25 -05:00
Mykola Golub
7fb9920316 qa/workunits/rbd: wait for status propagated only if daemon started
Signed-off-by: Mykola Golub <to.my.trociny@gmail.com>
2017-11-21 22:29:16 +02:00
Mykola Golub
f4b88b2c9d qa/workunits/rbd: wait for demote status is propagated
(before promoting the image on another cluster)

Signed-off-by: Mykola Golub <to.my.trociny@gmail.com>
2017-11-21 13:22:50 +02:00
Ilya Dryomov
c1d6f8364f
Merge pull request #18652 from idryomov/wip-qa-krbd-blkroset
qa/suites/krbd: add krbd BLKROSET test

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
2017-11-02 10:10:39 +01:00
Ilya Dryomov
c4888ddc1f qa/workunits/rbd: remove set_ro.py
This test is incomplete and has been obsoleted by krbd_blkroset.t.
It's also not wired up, so it's not actually being run.

Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
2017-10-31 13:40:16 +01:00
Mykola Golub
cb90069604 qa/workunits/rbd: unnecessary sleep after failed remove
Signed-off-by: Mykola Golub <to.my.trociny@gmail.com>
2017-10-30 08:57:29 +02:00
Jason Dillaman
918df91213 rbd: bench should flush prior to starting a test
For the new read-based bench tests, flushing prior to the start of the test
will result in the exclusive lock being acquired and the object map being
utilized.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2017-10-23 13:22:50 -04:00
Jason Dillaman
ecec3217b6 Merge pull request #17134 from PCzhangPC/metaexin
rbd: export/import image-meta when we export/import an image

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
2017-10-16 21:00:08 -04:00
Jason Dillaman
22816ed3f4 qa/workunits/rbd: fixed variable name for resync image id
Fixes: http://tracker.ceph.com/issues/21663
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2017-10-03 13:25:33 -04:00
Mykola Golub
fcaffe7e01 qa/workunits/rbd: pool create may fail for small cluster
ceph osd pool create test 100
Error ERANGE:  pg_num 100 size 3 would mean 648 total pgs, which exceeds max 600 (mon_max_pg_per_osd 200 * num_in_osds 3)

Signed-off-by: Mykola Golub <to.my.trociny@gmail.com>
2017-10-01 16:36:17 +02:00
PCzhangPC
2f0b233a31 rbd:export/import image-meta when we export/import an image
when we do exporting/importing an image, we should export or import the image-meta of this image at the same time

Signed-off-by: PCzhangPC <pengcheng.zhang@easystack.cn>
2017-09-29 13:30:01 +08:00
Jason Dillaman
9aa5dfb8ec rbd-mirror: sync image metadata when transfering remote image
Fixes: http://tracker.ceph.com/issues/21535
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2017-09-28 15:22:08 -04:00
Jason Dillaman
273c84578b qa/workunits/rbd: relax greps to support upgrade formatting change
Fixes: http://tracker.ceph.com/issues/21181
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2017-09-07 08:56:16 -04:00
Mykola Golub
9ddb5da337 rbd-mirror: update asok hook name on image rename
Fixes: http://tracker.ceph.com/issues/20860
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2017-08-29 08:30:20 +02:00
Kefu Chai
30b5b4627c Merge pull request #16494 from asomers/bin_bash
misc: Fix bash path in shebangs

Reviewed-by: Willem Jan Withagen <wjw@digiware.nl>
Reviewed-by: Kefu Chai <kchai@redhat.com>
2017-08-27 10:14:14 +08:00
xie xingguo
1ea448ac75 common/types: make numbers a bit nicer when displaying space usage
Was:
----------------------------------------------------------------------------
GLOBAL:
    SIZE       AVAIL      RAW USED     %RAW USED
    30911M     27050M        3861M         12.49
POOLS:
    NAME                  ID     USED        %USED     MAX AVAIL     OBJECTS
    rbd                   0      101216k      1.10         8913M        1178
    cephfs_data_a         1            0         0         8913M           0
    cephfs_metadata_a     2          892         0         8913M          21
----------------------------------------------------------------------------

Now:
----------------------------------------------------------------------------
GLOBAL:
    SIZE      AVAIL     RAW USED     %RAW USED
    30.2G     26.4G        3.77G         12.50
POOLS:
    NAME                  ID     USED      %USED     MAX AVAIL     OBJECTS
    rbd                   0      99.2M      1.10         8.70G        1180
    cephfs_data_a         1          0         0         8.70G           0
    cephfs_metadata_a     2        892         0         8.70G          21
----------------------------------------------------------------------------

Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
2017-08-22 12:33:10 +08:00
Mykola Golub
c4c7075029 qa/workunits/rbd: test data pool is mirrored correctly
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2017-08-17 10:07:12 +02:00
Mykola Golub
6a575136a7 qa/workunits/rbd: use command line option to specify watcher asok
The previous method to get the watcher admin socket was fragile
and had started to fail after the recent changes to vstart ceph.conf.

Fixes: http://tracker.ceph.com/issues/20954
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2017-08-09 09:03:00 +02:00
Mykola Golub
b4dbfcc879 rbd-ggate: tool to map images on FreeBSD via GEOM Gate
rbd-ggate spawns a process responsible for the creation of ggate
device and forwarding I/O requests between the GEOM Gate kernel
subsystem and RADOS.

On FreeBSD it provides functionality similar to rbd-nbd on Linux.

Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2017-08-08 11:00:30 +02:00
Jason Dillaman
4e1b834d2d rbd-mirror: simplify resync handling within image replayer
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2017-08-07 10:13:33 -04:00
Sage Weil
62e51661e6 Merge branch 'wip-qa-rbd-health' of git://github.com/dillaman/ceph
# Conflicts:
#	qa/tasks/ceph.py
2017-08-04 15:07:22 -04:00
Nathan Cutler
d919987caa tests: rbd: reproducer for rbd-on-EC issue
This introduces a new "rbd/singleton-bluestore" suite because creating an rbd
on an EC-backed datapool will fail on filestore.

References: http://tracker.ceph.com/issues/20295
Signed-off-by: Nathan Cutler <ncutler@suse.com>
2017-08-03 22:54:17 -04:00
Jason Dillaman
c2b451e8cb qa: fix RBD-related POOL_APP_NOT_ENABLED health warnings
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2017-08-03 09:50:41 -04:00
Kefu Chai
2a128f4829 Merge pull request #16599 from liewegas/wip-standalone-fixes
qa/workunits: adjust path to ceph-helpers.sh

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
2017-07-28 13:18:47 +08:00
Alan Somers
3aae5ca6fd scripts: fix bash path in shebangs
/bin/bash is a Linuxism.  Other operating systems install bash to
different paths.  Use /usr/bin/env in shebangs to find bash.

Signed-off-by: Alan Somers <asomers@gmail.com>
2017-07-27 13:24:26 -06:00
Sage Weil
841f3bdf92 qa/workunits: adjust path to ceph-helpers.sh
Signed-off-by: Sage Weil <sage@redhat.com>
2017-07-26 08:08:01 -04:00
Jason Dillaman
76fd882464 qa/workunits/rbd: rbd-mirror now treats no primary image as unknown state
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2017-07-25 07:17:15 -04:00
Jason Dillaman
44fa7ee788 qa/workunits/rbd: rbd-mirror tests should use 'mirror' user
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2017-07-21 14:30:18 -04:00
Jason Dillaman
d32485ff37 qa/workunits/rbd: devstack test should use auth profiles
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2017-07-21 14:30:18 -04:00
Jason Dillaman
836ab7ad95 test: skip pool application metadata tests if OSDs not at min luminous
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2017-07-19 13:13:01 -04:00
Jason Dillaman
fa90be842e test: enable pool applications for new pools
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2017-07-19 13:13:01 -04:00
Sage Weil
dc7a2aaf7a erasure-code: ruleset-* -> crush-*
1) ruleset is an obsolete term, and
2) crush-{rule,failure-domain,...} is more descriptive.

Note that we are changing the names of the erasure code profile keys
from ruleset-* to crush-*.  We will update this on upgrade when the
luminous flag is set, but that means that during mon upgrade you cannot
create EC pools that use these fields.

When the upgrade completes (users sets require_osd_release = luminous)
existing ec profiles are updated automatically.

Signed-off-by: Sage Weil <sage@redhat.com>
2017-07-06 15:01:03 -04:00
Jason Dillaman
68932d931e qa/workunits/rbd: preserve devstack configuration files
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2017-06-27 12:48:11 -04:00
Jason Dillaman
8e1791ff7e qa/workunits/rbd: install noVNC from packaging
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2017-06-27 12:48:11 -04:00
Kefu Chai
b86cda7040 Merge pull request #15764 from tchaikov/wip-20342
qa/suites/upgrade/hammer-jewel-x: add luminous.yaml

Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Jason Dillaman <dillaman@redhat.com>
2017-06-23 22:26:03 +08:00
Kefu Chai
fea6e3216a qa/workunits/rbd: do not test --export-format unless supported
in 55edd81, test for `--export-format` was added to exercise this
option. but this option is only supported on luminous, so we need to
check if it's avaialble before using it.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2017-06-22 12:19:01 +08:00
Pan Liu
a899bee57e qa/workunits: update rbd-nbd.sh for the changes of rbd-nbd list-mapped.
Signed-off-by: Pan Liu <wanjun.lp@alibaba-inc.com>
2017-06-18 16:13:11 +08:00
Ilya Dryomov
a3e23a7c3c qa: update krbd_data_pool.sh to match the new rados ls behavior
See commit e9973adf1f ("PendingReleaseNotes: notes on whiteouts vs
pgnls").

Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
2017-06-08 20:01:13 +02:00
Jason Dillaman
9035349037 qa: rbd valgrind tests should use failure exit code
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2017-06-02 08:55:08 -04:00
Ilya Dryomov
156cf45214 qa: krbd discard/zeroout tests
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
2017-05-31 14:39:08 +02:00
Jason Dillaman
6fa25c2bf2 librbd: recheck current lock owner before blacklist
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2017-05-19 08:43:37 -04:00
Mykola Golub
dff49227fa Merge pull request #14963 from dillaman/wip-19858
rbd-mirror: failover and failback of unmodified image results in split-brain

Reviewed-by: Mykola Golub <mgolub@mirantis.com>
2017-05-05 15:27:07 +03:00
Jason Dillaman
4031555dda librbd: add no-op event when promoting an image
The rbd-mirror process needs an event in the journal
to properly detect the transition between primary and
non-primary state between peers.

Fixes: http://tracker.ceph.com/issues/19858
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2017-05-04 20:26:03 -04:00
Jason Dillaman
f6531fd077 qa/workunits/rbd: add additional OpenStack services
The Ocata release requires additional services to be running.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2017-05-02 15:43:36 -04:00
Jason Dillaman
736890fb30 qa/workunits: fix appdir setup issue in devstack
See https://bugs.launchpad.net/devstack/+bug/1667545

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2017-05-02 09:56:57 -04:00
Jason Dillaman
37d8a42510 qa/workunits: switch to OpenStack Ocata release for RBD testing
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2017-05-02 09:55:38 -04:00
Mykola Golub
8c2631c6f7 Merge pull request #14846 from dillaman/wip-rbd-cli
qa/workunits/rbd: increased trash deferment period

Reviewed-by: Mykola Golub <mgolub@mirantis.com>
2017-04-30 09:59:52 +03:00
Jason Dillaman
b51db2655b qa/workunits/rbd: increased trash deferment period
Teuthology would periodically fail due to a delay >10 seconds
between moving the item to the trash and checking its status.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2017-04-27 15:27:50 -04:00
Jason Dillaman
b67c5c7aa4 Merge pull request #14754 from trociny/wip-19128
rbd: import needs to sanity check auto-generated image name

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
2017-04-27 14:40:51 -04:00
Ilya Dryomov
7c8a7f52da qa: krbd write-after-checksum tests
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
2017-04-27 16:28:08 +02:00
Ilya Dryomov
192f6ca079 qa/workunits/rbd: test exclusive map option
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
2017-04-26 15:05:50 +02:00
Mykola Golub
40de8f1183 rbd: import needs to sanity check auto-generated image name
Fixes: http://tracker.ceph.com/issues/19128
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2017-04-24 20:29:36 +02:00
Mykola Golub
dda32847e8 qa/workunits/rbd: don't use deprecated syntax
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2017-04-20 14:29:14 +02:00
Josh Durgin
6fba80c1fa osd, OSDMonitor, qa: mark ec overwrites non-experimental
Keep the pool flag around so we can distinguish between a pool that
should maintain hashes for each chunk, and a missing one is a bug, vs
an overwrites pool where we rely on bluestore checksums for detecting
corruption.

Signed-off-by: Josh Durgin <jdurgin@redhat.com>
2017-04-19 17:45:43 -07:00
Ilya Dryomov
5b2d7f76bb qa: krbd_data_pool.sh: account for rbd_info metadata object
... added in commit a16beba784 ("librbd: image create validates that
pool supports overwrites").

Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
2017-04-18 21:47:36 +02:00
Mykola Golub
bf52a2a53b qa/workunits/rbd: diff.sh failed removing nonexistent file
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2017-04-12 16:22:43 +02:00
Mykola Golub
9a80faa546 Merge pull request #14460 from dillaman/wip-qa-rbd-cli
qa/workunits: corrected issues with RBD cli test

Reviewed-by: Mykola Golub <mgolub@mirantis.com>
2017-04-12 15:44:25 +03:00
Jason Dillaman
15e5b8e3dc qa/workunits: corrected issues with RBD cli test
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2017-04-11 11:18:29 -04:00
Ricardo Dias
b844f58481
qa/workunits/rbd: cli testing of rbd trash commands
Signed-off-by: Ricardo Dias <rdias@suse.com>
2017-04-11 12:09:41 +01:00
Jason Dillaman
a5d0d0ca08 qa/workunits: partial revert of commit 5b486d9
Testing for disk usage and diff extents for a sparsely written
imported RBD image cannot generically be handled across different
OSD object stores and RBD image features.

The only alternatives would include grepping the rbd CLI
debug log for specific invocations of aio_write or mocking
the rbd CLI for unit testing.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2017-04-07 21:06:37 -04:00
Ning Yao
5b486d9628 test: add test for rbd import,import-diff,copy with sparse-size option
Signed-off-by: Ning Yao <yaoning@unitedstack.com>
2017-04-04 03:18:52 +00:00
Kefu Chai
f903f2f3fd Merge pull request #13228 from trociny/wip-qa-rbd_mirror-opts
qa/workunits/rbd: tweak rbd-mirror config to spead up testing

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
2017-03-06 12:07:23 +08:00
Dongsheng Yang
064b23df85 qa: rbd: rename the copy.sh to generic.sh
The copy.sh is not only testing the rbd copy, but also
others such as rbd ls, rbd remove. Then rename it to generic.sh

Signed-off-by: Dongsheng Yang <dongsheng.yang@easystack.cn>
2017-02-23 11:10:59 +08:00
Dongsheng Yang
4447340e8d qa: add a test for rbd rm NOT_EXIST
Signed-off-by: Dongsheng Yang <dongsheng.yang@easystack.cn>
2017-02-23 11:10:59 +08:00
Dongsheng Yang
3d26d932af librbd: remove header when id missing
Signed-off-by: Dongsheng Yang <dongsheng.yang@easystack.cn>
2017-02-21 19:17:26 +08:00
Dongsheng Yang
4ee764f9e1 qa/workunit/rbd: import_export.sh: add image priorities exporting and importing test cases.
Signed-off-by: Dongsheng Yang <dongsheng.yang@easystack.cn>
2017-02-19 20:42:03 +08:00
Dongsheng Yang
55edd81658 qa/workunit/rbd: add test case for --import/export-format in import_export.sh
Signed-off-by: Dongsheng Yang <dongsheng.yang@easystack.cn>
2017-02-19 20:42:03 +08:00
Ilya Dryomov
4db31d53d9 qa: add workunit to test krbd data-pool support
This is based on a script that I've been using for a while for basic
smoke testing.  The matrix has exploded with the addition of data-pool
and now it's primarily a data-pool test fixture that takes minutes to
run, so turning it into a workunit.

Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
2017-02-16 22:42:46 +01:00
Jason Dillaman
63eae97afc qa/workunits/rbd: resolve potential rbd-mirror race conditions
Fixes: http://tracker.ceph.com/issues/18935
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2017-02-14 15:58:31 -05:00
Mykola Golub
596e5ea8a5 rbd-nbd: check /sys/block/nbdX/size to ensure kernel mapped correctly
Fixes: http://tracker.ceph.com/issues/18335
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2017-02-04 15:40:51 +01:00
Mykola Golub
58798be83a qa/workunits/rbd: tweak rbd-mirror config to spead up testing
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2017-02-02 08:45:19 +01:00
Mykola Golub
93f7b5ef3f Merge pull request #13158 from dillaman/wip-18594
qa: integrate OpenStack 'gate-tempest-dsvm-full-devstack-plugin-ceph'

Reviewed-by: Mykola Golub <mgolub@mirantis.com>
2017-02-02 08:27:49 +02:00
Jason Dillaman
a1b088a727 Merge pull request #13189 from gaurav36/bug-18326-image-rename-non-rbd-pool
rbd: destination pool should be source pool if it is not specified

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
2017-02-01 12:47:01 -05:00
Mykola Golub
2bb480e8c3 qa/workunits/rbd: tweaks to use RBD_MIRROR_USE_EXISTING_CLUSTER locally
This var is mostly used when running rbd_mirror test scripts on
teuthology.  It can be used locally though to speedup re-running the
tests:

Set a test temp directory:

  export RBD_MIRROR_TEMDIR=/tmp/tmp.rbd_mirror

Run the tests the first time with NOCLEANUP flag (the cluster and
daemons are not stopped on finish):

  RBD_MIRROR_NOCLEANUP=1 ../qa/workunits/rbd/rbd_mirror.sh

Now, to re-run the test without restarting the cluster, run cleanup
with USE_EXISTING_CLUSTER flag:

  RBD_MIRROR_USE_EXISTING_CLUSTER=1 \
    ../qa/workunits/rbd/rbd_mirror_ha.sh cleanup

and then run the tests:

  RBD_MIRROR_USE_EXISTING_CLUSTER=1
    ../qa/workunits/rbd/rbd_mirror_ha.sh

Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2017-02-01 10:55:03 +01:00
Mykola Golub
c802b9df0b qa/workunits/rbd: tests for rbd mirror HA
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2017-02-01 10:55:03 +01:00
Mykola Golub
7c21275f4f qa/workunits/rbd: allow to start several daemons for the same cluster
by optionally specifyning daemon instance after cluster name and
colon, like:

  start_mirror ${cluster}:${instance}

Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2017-02-01 10:55:03 +01:00
Gaurav Kumar Garg
01f23aa99f rbd: destination pool should be source pool if it is not specified
Currently if user perform image rename operation and user give pool
name as a optional parameter (--pool=<pool_name>) then currently
its taking this optional pool name for source pool and making
destination pool name default pool name.
With this fix if user provide pool name as a optional pool name
parameter then it  will consider both soruce and destination pool
name as optional parameter pool name.

Fixes: http://tracker.ceph.com/issues/18326

Reported-by: МАРК КОРЕНБЕРГ <socketpair@gmail.com>
Signed-off-by: Gaurav Kumar Garg <garg.gaurav52@gmail.com>
2017-02-01 10:20:39 +01:00
Jason Dillaman
deaaba8fcf qa/suites/rbd: OpenStack devstack tempest full suite
This mimics the OpenStack tempest gate tests that OpenStack
Zuul executes as a gate test.

Fixes: http://tracker.ceph.com/issues/18594
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2017-01-27 14:22:48 -05:00
Mykola Golub
72158bd9a3 qa/workunits/rbd: allow to tweak rbd-mirror test setup
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2017-01-12 18:09:02 +01:00
Nathan Cutler
4f4f35e37c tests: drop rbd_cli_tests.pl and RbdLib.pm
The rbd_cli_tests Perl script is not maintained and currently serves no
purpose. The RbdLib.pm module was only used by rbd_functional_tests.pl (which
was dropped by 276ffb46319a78a047f3c1f401d8125ac9e17c1e) and rbd_cli_tests.pl
so drop it as well.

Fixes: http://tracker.ceph.com/issues/14825
Signed-off-by: Nathan Cutler <ncutler@suse.com>
2017-01-08 16:17:08 +01:00
Jason Dillaman
a159f3d1c0 Merge pull request #12549 from trociny/wip-16555
librbd: permit removal of image being bootstrapped by rbd-mirror

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
2017-01-06 17:57:53 -05:00
Nathan Cutler
91231de16d tests: rbd/test_lock_fence.sh: fix rbdrw.py relative path
This commit fixes a regression introduced by
cf294777ea92f0911813a7132068584d4f73a65a

Fixes: http://tracker.ceph.com/issues/18388
Signed-off-by: Nathan Cutler <ncutler@suse.com>
2017-01-02 22:53:13 +01:00
Mykola Golub
11d6caf367 librbd: permit removal of image being bootstrapped by rbd-mirror
Fixes: http://tracker.ceph.com/issues/16555
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2016-12-20 20:07:51 +02:00
Sage Weil
5666fd61d6 qa/workunits: include extension for nose tests
When you have a relative path you have to include the extension.
Weird.

Signed-off-by: Sage Weil <sage@redhat.com>
2016-12-19 14:08:11 -05:00
Sage Weil
cf294777ea qa/workunits: use relative path instead of wget from git
Signed-off-by: Sage Weil <sage@redhat.com>
2016-12-15 15:10:28 -05:00
Jason Dillaman
4314cb945a qa/workunits/rbd: use more recent qemu-iotests that support Xenial
Fixes: http://tracker.ceph.com/issues/18149
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2016-12-10 20:42:52 -05:00
Jason Dillaman
2c70df978d qa/workunits/rbd: removed qemu-iotest case 077
The test case is not stable due to racing console output. This
results in spurious failures.

Fixes: http://tracker.ceph.com/issues/10773
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2016-12-07 09:59:39 -05:00
Mykola Golub
6cb1ed485f rbd-mirror: make 'rbd mirror image resync' work after split-brain
Fixes: http://tracker.ceph.com/issues/18051
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2016-12-03 19:50:27 +02:00
Mykola Golub
cccca67d5f rbd-mirror: split-brain issues should be clearly visible in mirror status
Fixed: http://tracker.ceph.com/issues/16991
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2016-12-03 19:37:10 +02:00
Mykola Golub
7c078eda0f qa/workunits/rbd: test_status_in_pool_dir: explicitly check grep return value
Otherwise, it does not work as supposed to work in statements like below:

 set -e
 test_status_in_pool_dir ... && ...

(e.g. in wait_for_status_in_pool_dir)

Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2016-12-03 19:37:10 +02:00
Mykola Golub
c23f56b983 qa/workunits/rbd: use image id when probing for image presence
This fixes a race in resync tests leading to false negative results.

Fixes: http://tracker.ceph.com/issues/18048
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2016-11-29 10:04:37 +02:00
Venky Shankar
3a91d7bd2e qa / workunits: make rbd import/export work with image data pool
Signed-off-by: Venky Shankar <vshankar@redhat.com>
2016-11-20 21:21:50 +05:30
Mykola Golub
a3df091595 qa/workunits/rbd: simplify running nbd test under build env
Previously running the script as unprivileged user was not very useful
due to difficulty to change path sudo was looking for a command to
execute.

Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2016-11-04 16:22:51 +02:00
Mykola Golub
2012b4dfc6 rbd-nbd: disallow mapping images >2TB in size
Fixes: http://tracker.ceph.com/issues/17219
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2016-11-03 14:50:47 +02:00
Mykola Golub
300a2810ac rbd-nbd: support disabling auto-exclusive lock transition logic
Fixes: http://tracker.ceph.com/issues/17488
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2016-10-12 21:00:25 +03:00
Jason Dillaman
a6dd6b50d6 qa/workunits: reduce amount of client IO for rbd-mirror stress
Journal IO is faster now, resulting in OSDs quickly filling up
under the stress test case.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2016-10-04 21:31:54 -04:00
Jason Dillaman
3e4a59d81b Merge pull request #11291 from trociny/wip-qa-mirror-asok
qa/workunits/rbd: check status also in pool dir after asok commands

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
2016-10-04 11:22:53 -04:00
Mykola Golub
eb4097b8ef qa/workunits/rbd: set image-meta on primary image and wait it is replicated
After recently added image metadata replication it is not possible any
more to update it on non-primary image.

Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2016-10-03 17:02:59 +03:00
Mykola Golub
2882f8c01a qa/workunits/rbd: check status also in pool dir after asok commands
wait_for_image_replay_stopped returns not when the state is stopped,
but when the state is not replaying. So a race was possible when an
asok command was running when the previos stop command was still in
progress, leading to unexpected results.

Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2016-10-03 10:10:33 +03:00
Ricardo Dias
5c737038dd
rbd-mirror: test: Fixed timeout problem in rbd_mirror_stress.sh
Signed-off-by: Ricardo Dias <rdias@suse.com>
2016-09-26 14:25:25 +01:00
Jason Dillaman
a0f65b968b qa/workunits/rbd: fix remove mirrored image race conditions
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2016-09-23 09:01:52 -04:00
Jason Dillaman
a43268a4a3 qa/workunits/rbd: new mirroring forced promotion test
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2016-09-23 09:01:52 -04:00
Mykola Golub
77fd6a1c20 rbd-mirror: option to automatically resync after journal client disconnect
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2016-09-05 12:48:47 +03:00
Mykola Golub
330dba00ba rbd-mirror: stop replay when client is disconnected
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2016-09-05 12:48:47 +03:00
Jason Dillaman
e6aa18ea0d qa/workunits/rbd: demote/promote image on same cluster
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2016-08-16 09:09:52 -04:00
Jason Dillaman
efa5f730cc Merge pull request #10488 from lande1234/wip-lan-testing
rbd-mirror: add additional test scenarios

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
2016-08-05 09:20:37 -04:00
Mykola Golub
a5f63f7261 qa/workunits/rbd: wait for image deleted before checking health
This is a fixup to the previous commit.

Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2016-08-02 20:06:17 +03:00
Mykola Golub
df2aa585c4 Merge pull request #10341 from dillaman/wip-16223
rbd-mirror: reduce memory footprint during journal replay

Reviewed-by: Mykola Golub <mgolub@mirantis.com>
2016-07-30 19:28:02 +03:00
lande1234
aba7d3b874 Test scenario
Signed-off-by: lande1234 <lan.de3@zte.com.cn>
2016-07-29 04:58:26 +00:00
Mykola Golub
8dbe42d345 qa/workunits/rbd: wait for image deleted before checking health
When a primiry image is being deleted, the mirrored image might
temporary be reported in error state, before deletion is propagated.

Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2016-07-28 14:55:42 +03:00
Mykola Golub
fdb971a266 qa/workunits/rbd: small fixup and improvements for rbd-mirror tests
- log to stderr;
- log status if a `wait_for` function failed;
- don't needlessly sleep in `wait_for` functions after the last
  unsuccessful iteration;
- make `wait_for_pool_images` work for image removal case;
- fix `wait_for_pool_images` reset timeout (last_count set).

Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2016-07-28 14:55:42 +03:00
Jason Dillaman
ab5ebdef32 Merge pull request #10123 from trociny/wip-16449
librbd: prevent creation of clone from non-primary mirrored image

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
2016-07-24 11:12:57 -04:00
Jason Dillaman
574be7486a qa/workunits/rbd: override rbd-mirror integration test poll frequency
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2016-07-21 12:52:57 -04:00
Jason Dillaman
2f4cb26d8b qa/workunits/rbd: exercise snapshot renames within rbd-mirror test
Snapshot rename operations utilize the (cluster) unique snapshot
sequence to prevent attempts at replays. When mirroring to a
different cluster, these sequences will not align.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2016-07-19 09:27:32 -04:00
Mykola Golub
ba849e3b04 librbd: prevent creation of clone from non-primary mirrored image
Fixes: http://tracker.ceph.com/issues/16449
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2016-07-14 23:02:18 +03:00
Mykola Golub
fa58acbb6f qa/workunits/rbd: image resize test for rbd-nbd
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2016-07-13 15:40:03 +03:00
Mykola Golub
9737a8d6cb qa/workunits/rbd: before removing image make sure it is not bootstrapped
If an image is being bootstrapped, it implies that the rbd-mirror
daemon currently has the image open. The removal API will prevent the
removal of any image that is opened by another client.

Works-around: http://tracker.ceph.com/issues/16555
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2016-07-06 12:59:25 +03:00
Mykola Golub
5485296a3d Merge pull request #10076 from dillaman/wip-rbd-mirror-cmake
test: fix rbd-mirror workunit test cases for cmake

Reviewed-by: Mykola Golub <mgolub@mirantis.com>
2016-07-05 08:28:43 +03:00
Jason Dillaman
5a37b993c2 qa/workunits/rbd: fix issues under cmake build environment
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2016-06-30 16:59:19 -04:00
Mykola Golub
06a333b116 rbd-mirror: remove ceph_test_rbd_mirror_image_replay test case
Fixes: http://tracker.ceph.com/issues/16539
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2016-06-30 21:25:13 +03:00
Jason Dillaman
45498d0499 qa/workunits/rbd: remove temporary image exports
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2016-06-28 09:08:47 -04:00
Jason Dillaman
48d18030fd Merge pull request #9207 from rjfd/wip-15670
rbd-mirror: image resync

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
2016-06-22 18:03:22 -04:00
Jason Dillaman
d16698f96c qa/workunits/rbd: increase writes in large image count test
This will help to test edge cases where the remote image does
or does not own the exclusive lock when the sync starts.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2016-06-15 21:56:09 -04:00
Mykola Golub
3048d3c7ce qa/workunits/rbd: respect RBD_CREATE_ARGS environment variable
Fixes: http://tracker.ceph.com/issues/16289
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2016-06-15 08:53:13 +03:00
Ricardo Dias
8953825956
rbd-mirror: resync: Added unit tests
Signed-off-by: Ricardo Dias <rdias@suse.com>
2016-06-14 21:24:07 +01:00
Jason Dillaman
6a68b68e0d qa/workunits: ensure replay has started before checking position
Fixes: http://tracker.ceph.com/issues/16248
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2016-06-13 00:19:37 -04:00
Mykola Golub
698242e743 qa/workunits/rbd: specify source path
otherwise it looks in $PATH for the script

Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2016-06-11 20:30:32 +03:00
Jason Dillaman
db3e583a5f qa/workunits/rbd: additional rbd-mirror stress tests
Fixes: http://tracker.ceph.com/issues/16197
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2016-06-10 09:40:34 -04:00
Jason Dillaman
de15b198cd qa/workunits/rbd: improve deletion propagation test case
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2016-06-10 00:15:20 -04:00
Jason Dillaman
943ff82987 qa/workunits/rbd: basic cloned image test
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2016-05-31 23:08:02 -04:00
Mykola Golub
14a150bea8 Merge pull request #9360 from dillaman/wip-16045
rbd-mirror: support multiple replicated pools

Reviewed-by: Mykola Golub <mgolub@mirantis.com>
2016-05-28 22:21:25 +03:00
Jason Dillaman
f4339ee8cb rbd-mirror: cluster-level asok commands need to support multiple pools
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2016-05-28 13:36:10 -04:00
Jason Dillaman
839544ee64 qa/workunits/rbd: create secondary replicated pool
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2016-05-26 13:37:37 -04:00
Mykola Golub
e9ed8ac33b test: workaround failure in journal.sh
With the changes to ensure that the commit position of a new
client is initialized to the minimum position of other clients,
the 'journal inspect/export' commands return zero records because
the master client has committed all of its entries.

Workaround this by restoring the initial commit position after
writing to the image.

Fixes: http://tracker.ceph.com/issues/16011
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2016-05-25 22:05:11 +03:00
Jason Dillaman
b9edff2174 test: use randomized write sizes for rbd-mirror stress test
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2016-05-24 13:22:52 -04:00
Ricardo Dias
d85e312ead rbd-mirror: test: added image-deleter test case when mirroring is disabled
Signed-off-by: Ricardo Dias <rdias@suse.com>
2016-05-22 16:13:21 -04:00
Mykola Golub
17b1c91774 Merge pull request #9211 from dillaman/wip-15938
librbd: write-after-write might result in an inconsistent replicated image

Reviewed-by: Mykola Golub <mgolub@mirantis.com>
2016-05-20 20:52:42 +03:00
Jason Dillaman
fbce0b226d Merge pull request #9088 from trociny/wip-15500
qa: dynamic_features.sh: return error only if it failed on alive QEMU

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
2016-05-20 08:23:37 -04:00
Jason Dillaman
714ed5e64e qa/workunits/rbd: record rbd CLI debug messages during mirror stress
The debug messages from 'rbd bench-write' and 'rbd snap create',
in addition to the existing debug messages from rbd-mirror, make
it possible to determine the source of any image inconsistency.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2016-05-19 16:04:51 -04:00
Jason Dillaman
8ef09c4d8d qa/workunits/rbd: fixed rbd_mirror teuthology runtime errors
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2016-05-18 15:02:14 -04:00
Jason Dillaman
e2ab3128a3 qa/workunits/rbd: rbd-mirror daemon stress test
This test repeatedly runs rbd bench-write, kills the process
randomly to create an unclean journal shutdown, and verifies
that the image content replicates correctly.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2016-05-18 11:02:47 -04:00
Ilya Dryomov
6643f4d972 qa: rbd/simple_big.sh: drop extraneous sudo
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
2016-05-13 17:57:12 +02:00
Ilya Dryomov
a7d4189587 qa: rbd/concurrent.sh: suppress rbd map output
rbd_map_image() echoes the id of the image and is used in command
substitution:

    id=$(rbd_map_image "${image}")

Output from rbd map isn't consumed and clobbers the return.

Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
2016-05-13 17:51:45 +02:00
Ilya Dryomov
6bddef8ecf qa: rbd: don't modprobe, chown sysfs files or udevadm settle
This is a followup to 38a572011d ("qa: rbd/map-snapshot-io.sh: don't
chown sysfs files") for the rest of the workunits:

- /sys/bus/rbd/add_single_major is used if present, so chown'ing
  /sys/bus/rbd/add doesn't help.  Use sudo on rbd map instead.

- Don't modprobe or udevadm settle - rbd CLI tool takes care of that.

Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
2016-05-13 17:51:45 +02:00
Mykola Golub
8a71a79d24 qa: dynamic_features.sh: return error only if it failed on alive QEMU
Fixes: #15500
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2016-05-12 09:22:11 +03:00
Ilya Dryomov
38a572011d qa: rbd/map-snapshot-io.sh: don't chown sysfs files
/sys/bus/rbd/add_single_major is used if present, so chown'ing
/sys/bus/rbd/add doesn't help.  Use sudo on rbd map instead.

Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
2016-05-11 19:59:42 +02:00
Jason Dillaman
2c88ef8682 Merge pull request #8809 from trociny/wip-rbd-mirror-asok-restart
rbd-mirror: admin socket commands to start/stop/restart mirroring

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
2016-05-03 14:13:46 -04:00
Jason Dillaman
4175db609c Merge pull request #8775 from cy-lee/fix-15604-rbd-nbd-write-error
rbd-nbd: fix rbd-nbd aio callback error handling

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
2016-05-03 13:47:31 -04:00
Mykola Golub
a22cf518f9 rbd-mirror: admin socket commands to start/stop/restart mirroring
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2016-05-02 22:52:02 +03:00
Mykola Golub
4c28fc2aa3 qa/workunits/rbd: fix rbd-mirror log file name
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2016-05-01 22:04:46 +03:00
Mykola Golub
21790484dc rbd-mirror: make image replayer asok commands available when not started
Initially the asok commands were registered only after the image
replayer start (and unregistered on stop) because their names were
built using remote pool and image names, which became known only after
start.

Now, the asok commands are registered on the image replayer construction
using the temporary name "remote_pool_name/global_image_id". They are
re-registered using "remote_pool_name/remote_image_name" when the
image replayer is started.  Also the commands are not unregistered on
the image replayer stop.

Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2016-05-01 18:33:54 +03:00
cy.l@inwinstack.com
f8f6c1dc86 Fix RBD-NBD aio_callback error handling
Tracker-Id: #15604

Signed-off-by: Chang-Yi Lee <cy.l@inwinstack.com>
2016-04-30 15:11:18 +08:00
Josh Durgin
dcd11a1f26 qa/workunits/rbd: add env vars to adapt rbd_mirror.sh to teuthology
With these set, this script can work in teuthology, where we want to
control the how daemons run and their log locations, valgrind
settings, etc. The workunit task always sets CEPH_ID, and allows
other env vars to be configured optionally.

The RBD_MIRROR_USE_EXISTING_CLUSTER option can also speed up local testing.

Signed-off-by: Josh Durgin <jdurgin@redhat.com>
2016-04-29 10:01:51 -07:00
Josh Durgin
5fe64fa806 qa: rbd_mirror.sh: change parameters to cluster rather than daemon name
Daemon name is only useful to differentiate asok and pid filenames, so
just inline its use there. Everywhere else replace the 'daemon'
parameter with cluster or local_cluster as appropriate.

Remove the CLUSTER{1,2}_DAEMON vars as well, since they are no longer
used.

Signed-off-by: Josh Durgin <jdurgin@redhat.com>
2016-04-29 10:01:29 -07:00
Mykola Golub
f15cd51a1d qa/workunits/rbd: test mirror status in pool directory
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2016-04-29 11:47:49 +03:00
Jason Dillaman
a33ee34fcf qa/workunits/rbd: switch qemu test script shell to bash
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2016-04-09 12:59:00 -04:00
Jason Dillaman
f812199f72 qa/workunits/rbd: qemu tests need to wait for image to be created
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2016-04-03 10:29:38 -04:00
Mykola Golub
4e1e81a2a7 qa/workunits/rbd: use cluster1/2 instead local/remote as cluster names
After adding tests that start daemons in both clusters, local/remote
names look confusing.

Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2016-03-31 14:17:58 +03:00
Mykola Golub
2226019037 qa/workunits/rbd: add helper to determine rbd-mirror local cluster
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2016-03-31 14:16:21 +03:00
Mykola Golub
70b1303a08 qa/workunits/rbd: improvements for manual testing
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2016-03-31 11:42:13 +03:00
Jason Dillaman
ded7a77931 qa/workunits/rbd: add basic failover/fallback test case
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2016-03-29 15:19:26 -04:00
Sage Weil
df6570c2bd Merge pull request #8222 from SUSE/wip-14984
systemd: set up environment in rbdmap unit file

Reviewed-by: Boris Ranto <branto@redhat.com>
2016-03-23 12:33:39 -04:00
Nathan Cutler
0effb9e385 qa: test_rbdmap_RBDMAPFILE.sh workunit
Before a7a3658 the rbdmap script was logging bogus messages and not working
on systemd platforms because the unit file was not defining the RBDMAPFILE
environment variable.

This workunit asserts that the bug has been fixed.

http://tracker.ceph.com/issues/14984 References: #14984

Signed-off-by: Nathan Cutler <ncutler@suse.com>
2016-03-20 22:50:47 +01:00
Jason Dillaman
f65cc6fc31 Merge pull request #8172 from trociny/fix-test-rbd-mirror-position
test: rbd-mirror: compare positions using all fields

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
2016-03-19 16:33:36 -04:00
Josh Durgin
9f6ec704db qa: add workunit to run ceph_test_rbd_mirror
Signed-off-by: Josh Durgin <jdurgin@redhat.com>
2016-03-18 17:23:52 -07:00
Josh Durgin
62771e4a92 Merge pull request #8182 from trociny/wip-rbd-mirror-args
rbd-mirror: make remote context respect env and argv config params

Conflicts:
	qa/workunits/rbd/rbd_mirror.sh (asok command format changed)

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
Reviewed-by: Jason Dillaman <dillaman@redhat.com>
2016-03-18 15:03:33 -07:00
Josh Durgin
c6c4f6095a Merge pull request #8159 from trociny/wip-rbd-mirror-asok
rbd-mirror: use pool/image names in asok commands

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
Reviewed-by: Jason Dillaman <dillaman@redhat.com>
2016-03-18 14:58:58 -07:00
Jason Dillaman
d9017fb95c qa/workunits/rbd: new online maintenance op tests
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2016-03-18 14:33:20 -04:00
Mykola Golub
13c7ba4c67 test: rbd-mirror: different log and asok location for local/remote contexts
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2016-03-17 14:46:21 +02:00
Mykola Golub
b15ff2f419 test: rbd-mirror: compare positions using all fields
Comparing by only entry_tid may give false positives.

Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2016-03-16 23:07:07 +02:00
Mykola Golub
e348a7e4e8 rbd-mirror: use pool/image names in asok commands
Now the commands look similar to rbd cache asok commands.

Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2016-03-16 22:55:00 +02:00
Jason Dillaman
50b53eaf4b qa/workunits/rbd: rbd_mirror was extracting the incorrect image id
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2016-03-16 10:01:38 -04:00
Jason Dillaman
f2e39888d0 qa/workunits/rbd: use unique logs for each rbd-mirror daemon
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2016-03-16 10:01:38 -04:00
Josh Durgin
129d83b84f Merge pull request #8090 from trociny/fixup-rbd-mirror-test
test: fixup and improvements for rbd-mirror test

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
2016-03-15 08:20:43 -07:00
Jason Dillaman
36af39cdf4 qa/workunits/rbd: disable deep-flatten during permissions testing
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2016-03-15 11:05:02 -04:00
Mykola Golub
8e41220d34 test: fixup and improvements for rbd-mirror test
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2016-03-15 10:18:33 +02:00
Jason Dillaman
aef7f9e268 qa/workunits/rbd: do not use object map during read flag testing
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2016-03-14 17:06:41 -04:00
Josh Durgin
750701b644 Merge pull request #8068 from SUSE/wip-15104
qa/workunits/rbd: use POSIX function definition

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
2016-03-11 17:48:43 -08:00
Nathan Cutler
996be8ef49 qa/workunits/rbd: use POSIX function definition
In scripts with /bin/sh shebang, we must use POSIX function definitions to
avoid syntax errors on platforms that link /bin/sh to something other than
/bin/bash.

See https://wiki.ubuntu.com/DashAsBinSh#function for more information.

http://tracker.ceph.com/issues/15104 Fixes: #15104

Signed-off-by: Nathan Cutler <ncutler@suse.com>
2016-03-12 02:03:27 +01:00
Mykola Golub
3295253d64 test: add rbd-mirror test script
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2016-03-11 16:12:00 +02:00
Mykola Golub
866a704882 test: rbd_mirror_image_replay improve commit position parsing
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2016-03-11 16:12:00 +02:00
Zack Cerza
2a80042728 rbd/run_cli_tests.sh: Reflect test failures
Signed-off-by: Zack Cerza <zack@redhat.com>
2016-02-26 08:01:30 -07:00
Mykola Golub
103eee4d13 test: image_replay: use flush to speedup commit position update
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2016-02-23 09:25:53 +02:00